How to change the consequence of different functions?

classic Classic list List threaded Threaded
2 messages Options
Reply | Threaded
Open this post in threaded view
|

How to change the consequence of different functions?

Mehdi_Kazemi
In case there are different functions are generated like SFG, SHG etc. What is the right way of changing the consequence of those function?
Reply | Threaded
Open this post in threaded view
|

Re: How to change the consequence of different functions?

tinolang
Administrator
I am not sure if I understand your question right.
Chi3D includes a variety of different methods which depend on the input parameters and on the related properties which should be defined during the declaration of a new obj.

Example:

-a new object of chi3D includs a standard property set which is basically an example for a SHG. This property set you always get if you generate a new obj out of the main class.

SHGstandardexample = chi3D();

Now you use the run method of the new object to simulate the second harmonic process with the standard example parameters.

[Eftfxfy_o,Eftfxfy_e]=SHGstandardexample.run('pulse1');

The result will be a different if you ether change one or more of the parameters (e.g. theta) in the object SHGstandardexample:
[Eftfxfy_o,Eftfxfy_e]=SHGstandardexample.run({'pulse1','theta',23.22*pi/180}));

Or you can clone the object SHGstandardexample to a new object, e.g. newSHG, with changed properties:
newSHG=SHGstandardexample('thata',23.25*pi/180,'GDD',5000e-30);
This will give you also a different result of course.

You can also change one or more properties directly during the initialization of a new object:
newSHG=chi3D('thata',23.23*pi/180,'TOD',10000e-45);

I hope this could help
Tino Lang