From: Alicia Cavan on
Hello,

I am using the FindInterference function in Optica (version 3) and I am
able to get a nice plot of the interference function, but when I try and
obtain any data from this function- so I can get accurate values for the
intensities and fringe spacings (rather than just reading it off a plot)
I can't do this. It just comes up with a little message saying
-compiled function- for everything I try. I am sure there is a simple
command to use, but I don't know what it is.

Any suggestions?

Thankyou so much,
Alicia Cavan

This email may be confidential and subject to legal privilege, it may
not reflect the views of the University of Canterbury, and it is not
guaranteed to be virus free. If you are not an intended recipient,
please notify the sender immediately and erase all copies of the message
and any attachments.

Please refer to http://www.canterbury.ac.nz/emaildisclaimer for more
information.

From: Alicia Cavan on

The method I am using is straight out of the Help browser for optica (graphical tour section), I am using a more complicated interferometer set up, but I have just shown the basic Michelson one from the help section, as I assume the method for getting more information about the interference would be the same:


system == {Move[GaussianBeam[1.5,.01,FullForm->True],-50],

PlanoConcaveLens[-30,20,2,"L1",CurvatureDirection->Back],

Move[PlanoConvexLens[160,30,6.5,"L2"],130],

Move[BeamSplitter[{70,30},50,10],175,-45],

Move[Mirror[50,10],250],

Move[Mirror[50,10],{175,50},90.01],

Move[BeamSplitter[{70,30},50,10,""],175,-45,GraphicDesign->Off],

Move[Screen[50],{175,-50},90]};

AnalyzeSystem[system];



interference == FindInterference[system];

Plot3D[Evaluate[(InterferenceFunction/.interference)][x,y],{x,-13.5,6.7},{y,-10.,10.},PlotPoints->100,Mesh->False]



Thanks!
Alicia

________________________________
From: chris [mailto:aarthur(a)tx.rr.com]
Sent: Sat 15/05/2010 2:27 a.m.
To: Alicia Cavan
Subject: Re: Interference data in optica

Show us some code. Probably the compiled function has a bad argument or
syntax

Alicia Cavan a =E9crit :
> Hello,
>
> I am using the FindInterference function in Optica (version 3) and I am
> able to get a nice plot of the interference function, but when I try and
> obtain any data from this function- so I can get accurate values for the
> intensities and fringe spacings (rather than just reading it off a plot)
> I can't do this. It just comes up with a little message saying
> -compiled function- for everything I try. I am sure there is a simple
> command to use, but I don't know what it is.
>
> Any suggestions?
>
> Thankyou so much,
> Alicia Cavan




This email may be confidential and subject to legal privilege, it may
not reflect the views of the University of Canterbury, and it is not
guaranteed to be virus free. If you are not an intended recipient,
please notify the sender immediately and erase all copies of the message
and any attachments.

Please refer to http://www.canterbury.ac.nz/emaildisclaimer for more
information.

From: Maarten van der Burgt on
Alicia,

The answer is already in the Plot3D line:

InterferenceFunction/.interference

results in a compiled function, which you can use like any numerical
function.

You can give it a name:

ifunc == Evaluate[(InterferenceFunction /. interference)]
CompiledFunction[-intensity data-]"

and simply give it a numerical argument

ifunc[0, 0]
0.266372

or generate a list of data

ifdat == Table[{x, ifunc[x, 0]}, {x, -16, 10, 0.1}];

which you can plot

ListLinePlot[ifdat]


Hope this helps,

maarten

-----Original Message-----
From: Alicia Cavan [mailto:alicia.cavan(a)pg.canterbury.ac.nz]
Sent: Monday, 17 May, 2010 13:12
Subject: Re: Interference data in optica


The method I am using is straight out of the Help browser for optica
(graphical tour section), I am using a more complicated interferometer
set up, but I have just shown the basic Michelson one from the help
section, as I assume the method for getting more information about the
interference would be the same:


system ==== {Move[GaussianBeam[1.5,.01,FullForm->True],-50],

PlanoConcaveLens[-30,20,2,"L1",CurvatureDirection->Back],

Move[PlanoConvexLens[160,30,6.5,"L2"],130],

Move[BeamSplitter[{70,30},50,10],175,-45],

Move[Mirror[50,10],250],

Move[Mirror[50,10],{175,50},90.01],

Move[BeamSplitter[{70,30},50,10,""],175,-45,GraphicDesign->Off],

Move[Screen[50],{175,-50},90]};

AnalyzeSystem[system];



interference ==== FindInterference[system];

Plot3D[Evaluate[(InterferenceFunction/.interference)][x,y],{x,-13.5,6.7}
,{y,-10.,10.},PlotPoints->100,Mesh->False]



Thanks!
Alicia

________________________________
From: chris [mailto:aarthur(a)tx.rr.com]
Sent: Sat 15/05/2010 2:27 a.m.
To: Alicia Cavan
Subject: Re: Interference data in optica

Show us some code. Probably the compiled function has a bad argument or
syntax

Alicia Cavan a ==E9crit :
> Hello,
>
> I am using the FindInterference function in Optica (version 3) and I
am
> able to get a nice plot of the interference function, but when I try
and
> obtain any data from this function- so I can get accurate values for
the
> intensities and fringe spacings (rather than just reading it off a
plot)
> I can't do this. It just comes up with a little message saying
> -compiled function- for everything I try. I am sure there is a simple
> command to use, but I don't know what it is.
>
> Any suggestions?
>
> Thankyou so much,
> Alicia Cavan




This email may be confidential and subject to legal privilege, it may
not reflect the views of the University of Canterbury, and it is not
guaranteed to be virus free. If you are not an intended recipient,
please notify the sender immediately and erase all copies of the message
and any attachments.

Please refer to http://www.canterbury.ac.nz/emaildisclaimer for more
information.