Mathematica Stack Exchange is a question and answer site for users of Mathematica. It's 100% free, no registration required.

Sign up
Here's how it works:
  1. Anybody can ask a question
  2. Anybody can answer
  3. The best answers are voted up and rise to the top

I want to use the Rayleigh criterion to find the resolution of an optical system. I have two functions f1 = Sinc[x]^2 and f2 = Sinc[x-T]^2, T being the translation. I want to change the value of T until the first minimum of f2 coincides with the maximum of f1 (Rayleigh criterion). That being achieved, the value x and T should be returned.


  • for x=100 translate T until the first minimum of f2 coincides with the peak of f1; print {x, T}
  • repeat the same procedure for x=105 ... up to x=200.

So, what I would like to do is basically start the program and generate a table with the values x and T.

share|improve this question
Welcome to Mathematica.SE! I think you would find it useful to review the documentation and basic tutorials. Mathematica uses square brackets for functions so your f1 and f2 definitions have the wrong syntax. Also, it is not good practice to use uppercase single letters to name expressions as they can clash with built-in functions. Try using lower case f instead. – Verbeia Jan 16 '13 at 11:59
Just find the distance between the max and min ... – Dr. belisarius Jan 16 '13 at 12:07
The Rayleigh criterion is for the first zero (not the first minimum) of f2 to coincide with the maximum of f1. – Stephen Luttrell Jan 16 '13 at 13:01
Oops, I just noticed that you were using $sinc(x)^2$, in which case the first minimum and first zero are the same thing. – Stephen Luttrell Jan 23 '13 at 17:12

You may do it the smart way just looking at the distance between max and min, but anyway this is the procedure for doing what you asked for

Maximize[Sinc[x - t /. (NMinimize[Sinc[t]^2, t][[2]])]^2, x]

{1., {x -> -3.14159}}


Plot[{Sinc[x]^2, Sinc[x - t /. (NMinimize[Sinc[t]^2, t][[2]])]^2}, {x, -10, 10}, Evaluated -> True]

Mathematica graphics

share|improve this answer
Hi, I have two functions Sinc[x1] and Sinc[x2-T], x100=1, x2 =200, T a real number; Pseudocode: for x=100 translate T till the first min of f2 coincide with peak of f1 print print {x1, T} repeat the same procedure for x=105 That would be all! Thanks in advance everyone – Darwin Jan 16 '13 at 14:49
@Darwin. Edit your question to add your clarifications. Don't add them as a comment to an answer. – m_goldberg Jan 16 '13 at 18:11
hi, if i change the question, then anybody reading the thread would not understand the discussion following it – Darwin Jan 17 '13 at 11:04
@Darwin The usual procedure is leaving the existing question as it is now and add modifications at the end (after an edit title) – Dr. belisarius Jan 17 '13 at 11:11
+1 for trying to answer a moving-target question. – Jens Jan 17 '13 at 19:37

Your Answer


By posting your answer, you agree to the privacy policy and terms of service.

Not the answer you're looking for? Browse other questions tagged or ask your own question.