IGLib  1.7.2
The IGLib base library EXTENDED - with other lilbraries and applications.
 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Properties Events Macros
IG.MPetekLib.Algorithms.PlottableModels.KickedRotator Class Reference

A discrete dynamical system: an electric dipole moment, which is free to rotate, in a pulsating electric field. More...

+ Inheritance diagram for IG.MPetekLib.Algorithms.PlottableModels.KickedRotator:
+ Collaboration diagram for IG.MPetekLib.Algorithms.PlottableModels.KickedRotator:

Public Member Functions

 KickedRotator ()
 
void Solve ()
 
- Public Member Functions inherited from IG.MPetekLib.Algorithms.PlottableModels.PlottableModelBase
PlotZedgraphCurve NewCurveFromPlottableData (PlotterZedGraph plotter, int x, int y)
 Creates a new PlotZedgraphCurve object from the available plottable data. More...
 
void LoadPlottableDataToCurve (PlotZedgraphCurve curve, int x, int y)
 Copies the calculated data to the existing PlotZedgraphCurve object. Enough space must be available on the curve object's list. More...
 

Protected Member Functions

void TakeAStep ()
 Calculates the values of fi and p in the next time step (tNext = t + tau) and puts them in to More...
 

Protected Attributes

string _name = "Kicked rotator state portrait (torus)"
 
double _tau = 1.0
 Time interval between two pulses. More...
 
double _konst = 0.5
 Interaction constant = electric dipole moment * E-field amplitude / moment of inertia . More...
 
double _k
 Kicking strength. No user input point: read the description of the parmeter Konst. More...
 
int _nSteps = 300
 
double _fi0 = Math.PI / 2
 The initial angle between the E-field vector and the electric dipole moment. More...
 
double _p0 = 0
 The angle that the rotator turns in one time interval tau. p = tau * omega, omega = gamma/J, gamma -> angular momentum. More...
 
- Protected Attributes inherited from IG.MPetekLib.Algorithms.PlottableModels.PlottableModelBase
string _title
 

Properties

string Name [get, set]
 
double Tau [get, set]
 Time interval between two pulses. More...
 
double Konst [get, set]
 Interaction constant = electric dipole moment * E-field amplitude / moment of inertia. More...
 
int NSteps [get, set]
 
double Fi0 [get, set]
 The initial angle between the E-field vector and the electric dipole moment. More...
 
double P0 [get, set]
 The angle that the rotator turns in one time interval tau. p = tau * omega, omega = gamma/J, gamma -> angular momentum. More...
 
- Properties inherited from IG.MPetekLib.Algorithms.PlottableModels.PlottableModelBase
string Title [get, set]
 The plottable model's name. Also used as a plot title. More...
 
List< double[]> PlottableData [get, set]
 The main solution array, which is used by the plotter. More...
 

Detailed Description

A discrete dynamical system: an electric dipole moment, which is free to rotate, in a pulsating electric field.

For more info go to: http://en.wikipedia.org/wiki/Kicked_rotator .

Constructor & Destructor Documentation

IG.MPetekLib.Algorithms.PlottableModels.KickedRotator.KickedRotator ( )
inline

Member Function Documentation

void IG.MPetekLib.Algorithms.PlottableModels.KickedRotator.TakeAStep ( )
inlineprotected

Calculates the values of fi and p in the next time step (tNext = t + tau) and puts them in to

the solution array.

.

void IG.MPetekLib.Algorithms.PlottableModels.KickedRotator.Solve ( )
inline

Member Data Documentation

string IG.MPetekLib.Algorithms.PlottableModels.KickedRotator._name = "Kicked rotator state portrait (torus)"
protected
double IG.MPetekLib.Algorithms.PlottableModels.KickedRotator._tau = 1.0
protected

Time interval between two pulses.

double IG.MPetekLib.Algorithms.PlottableModels.KickedRotator._konst = 0.5
protected

Interaction constant = electric dipole moment * E-field amplitude / moment of inertia .

double IG.MPetekLib.Algorithms.PlottableModels.KickedRotator._k
protected

Kicking strength. No user input point: read the description of the parmeter Konst.

int IG.MPetekLib.Algorithms.PlottableModels.KickedRotator._nSteps = 300
protected
double IG.MPetekLib.Algorithms.PlottableModels.KickedRotator._fi0 = Math.PI / 2
protected

The initial angle between the E-field vector and the electric dipole moment.

double IG.MPetekLib.Algorithms.PlottableModels.KickedRotator._p0 = 0
protected

The angle that the rotator turns in one time interval tau. p = tau * omega, omega = gamma/J, gamma -> angular momentum.

Property Documentation

string IG.MPetekLib.Algorithms.PlottableModels.KickedRotator.Name
getset
double IG.MPetekLib.Algorithms.PlottableModels.KickedRotator.Tau
getset

Time interval between two pulses.

Referenced by IG.Script._25KickedRotator.Run().

double IG.MPetekLib.Algorithms.PlottableModels.KickedRotator.Konst
getset

Interaction constant = electric dipole moment * E-field amplitude / moment of inertia.

Whenever you are not interested in the internal parameters and only wish to vary the kicking strength,

simply set Tau = 1 and vary Konst.

Referenced by IG.Script._25KickedRotator.Run().

int IG.MPetekLib.Algorithms.PlottableModels.KickedRotator.NSteps
getset
double IG.MPetekLib.Algorithms.PlottableModels.KickedRotator.Fi0
getset

The initial angle between the E-field vector and the electric dipole moment.

Referenced by IG.Script._25KickedRotator.Run().

double IG.MPetekLib.Algorithms.PlottableModels.KickedRotator.P0
getset

The angle that the rotator turns in one time interval tau. p = tau * omega, omega = gamma/J, gamma -> angular momentum.

Referenced by IG.Script._25KickedRotator.Run().


The documentation for this class was generated from the following file: