QCSteadyState Class Reference

Class designed to encapsulate the Time-Independent Solver. Various methods are incoporated in the class for doing so. The class also features mathematical functions involved in numerical work. More...

#include <qcsteadystate.h>

List of all members.

Public Member Functions

Constructors
 QCSteadyState (void)
 Standard Constructor.
 ~QCSteadyState (void)
 Standard Destructor.
Boundary Value Functions
void setBoundaryFree (QCComplexField< 2 > &field)
 Sets the boundary value of the field to a free floating value.
void setBoundaryVanish (QCComplexField< 2 > &field)
 Sets the boundary value of the field to zero.
Steady State Methods
void setConstant (QCComplexField< 2 > &field)
 Sets the field to a uniform flat (constant) value.
void usingTDGPFixedPoint (QCComplexField< 2 > &field, parameterType &deltaR, QCParameter &tdgpParameters)
 Solves for the steady state solution using the Fixed Point Method form of the Time-Dependent Gross-Pitaevskii (TDGP) equation. It is assumed that SmallOmegaSquared is 1st Parameter, Mu is 2nd Parameter and g the 3rd Parameter in the QCParameter Class. All index referencing should be made C style.
void usingTDGPFixedPoint (QCComplexField< 3 > &field, parameterType &deltaR, QCParameter &tdgpParameters)
 Same as the "usingTDGPFixedPoint" but for 3-Dimensional fields.
void usingTDGPVortexFixedPoint (QCComplexField< 2 > &field, parameterType &deltaR, QCParameter &tdgpParameters)
 Solves for the steady state vortex solution using the Fixed Point Method form of the Time-Dependent Gross-Pitaevskii (TDGP) equation.
void usingTDGPVortexFixedPoint (QCComplexField< 3 > &field, parameterType xOffset, parameterType yOffset, parameterType zOffset, parameterType &deltaX, parameterType &deltaY, parameterType &deltaZ, parameterType &deltaR, QCParameter &tdgpParameters)
 Same as the "usingTDGPVortexFixedPoint" but for 3-Dimensional fields.
void usingTDGPGaussSeidel (QCComplexField< 2 > &currentField, parameterType xOffset, parameterType yOffset, parameterType &h_x, parameterType &h_y, QCParameter &tdgpParameters)
 NOT OPERATIONAL! Uses the Gauss-Seidel method for boundary value problems to find the steady state solution for a TDGP system.
void usingTDGPFastSI (QCComplexField< 2 > &field, parameterType &h_r, QCParameter &tdgpParameters)
 NOT OPERATIONAL! Uses the Fast Semi-Implicit method for boundary value problems to find the steady state solution for a TDGP system.
void usingTDGPFastSI (QCComplexField< 2 > &currentField, parameterType xOffset, parameterType yOffset, parameterType &h_x, parameterType &h_y, QCParameter &tdgpParameters)
 NOT OPERATIONAL! Uses the Fast Semi-Implicit method for boundary value problems to find the steady state solution for a TDGP system.
void transferSolutionTo (QCComplexField< 2 > &field, parameterType xOffset, parameterType yOffset, parameterType &deltaX, parameterType &deltaY, parameterType &deltaR)
 Transfers the last solution calculated to the Field provided in arguments.
void transferSolutionTo (QCComplexField< 3 > &field, parameterType xOffset, parameterType yOffset, parameterType zOffset, parameterType &deltaX, parameterType &deltaY, parameterType &deltaZ, parameterType &deltaR)
 Transfers the last solution calculated to the 3-D Field provided in arguments.
Steady State Parameter Methods
void setTolerance (parameterType &value)
 Sets the tolerance value for the determining of the steady state solution.
parameterType getTolerance ()
 Returns the tolerance value for the determining of the steady state solution.
I/O Operations
bool output1DSolution (const char *fileName, parameterType &deltaR)
 Outputs the 1D solution found to file.


Detailed Description

Class designed to encapsulate the Time-Independent Solver. Various methods are incoporated in the class for doing so. The class also features mathematical functions involved in numerical work.

Definition at line 43 of file qcsteadystate.h.


Member Function Documentation

void QCSteadyState::transferSolutionTo QCComplexField< 3 > &  field,
parameterType  xOffset,
parameterType  yOffset,
parameterType  zOffset,
parameterType &  deltaX,
parameterType &  deltaY,
parameterType &  deltaZ,
parameterType &  deltaR
 

Transfers the last solution calculated to the 3-D Field provided in arguments.

Todo:
Add the cartesian Solver to the Steady State Class

Definition at line 391 of file qcsteadystate.cpp.

References QCField< complexType, rank >::assignElement(), QCField< complexType, rank >::height(), QCField< complexType, rank >::noOfColumns(), and QCField< complexType, rank >::noOfRows().

void QCSteadyState::transferSolutionTo QCComplexField< 2 > &  field,
parameterType  xOffset,
parameterType  yOffset,
parameterType &  deltaX,
parameterType &  deltaY,
parameterType &  deltaR
 

Transfers the last solution calculated to the Field provided in arguments.

Todo:
Add the cartesian Solver to the Steady State Class

Definition at line 362 of file qcsteadystate.cpp.

References QCField< complexType, rank >::assignElement(), QCField< complexType, rank >::noOfColumns(), and QCField< complexType, rank >::noOfRows().

Referenced by QCBEC< rank >::setupSteadyState(), QC2ComponentBEC< rank >::setupSteadyState(), and QCBEC< rank >::setupVortexSteadyState().

void QCSteadyState::usingTDGPFastSI QCComplexField< 2 > &  currentField,
parameterType  xOffset,
parameterType  yOffset,
parameterType &  h_x,
parameterType &  h_y,
QCParameter tdgpParameters
 

NOT OPERATIONAL! Uses the Fast Semi-Implicit method for boundary value problems to find the steady state solution for a TDGP system.

It is assumed that Small Omega Squared is 1st Parameter, Mu is 2nd Parameter, g the 3rd Parameter, hbar the 4th and m the 5th in the QCParameter Class. All index referencing should be made C style.

Definition at line 289 of file qcsteadystate.cpp.

void QCSteadyState::usingTDGPFastSI QCComplexField< 2 > &  field,
parameterType &  h_r,
QCParameter tdgpParameters
 

NOT OPERATIONAL! Uses the Fast Semi-Implicit method for boundary value problems to find the steady state solution for a TDGP system.

It is assumed that Small Omega Squared is 1st Parameter, Mu is 2nd Parameter, g the 3rd Parameter, hbar the 4th and m the 5th in the QCParameter Class. All index referencing should be made C style.

Definition at line 227 of file qcsteadystate.cpp.

void QCSteadyState::usingTDGPFixedPoint QCComplexField< 3 > &  field,
parameterType &  deltaR,
QCParameter tdgpParameters
 

Same as the "usingTDGPFixedPoint" but for 3-Dimensional fields.

It is assumed that SmallOmegaSquared is 1st Parameter, Mu is 2nd Parameter and g the 3rd Parameter in the QCParameter Class. All index referencing should be made C style.

Definition at line 78 of file qcsteadystate.cpp.

References QCParameter::getParameter(), and QCField< complexType, rank >::noOfColumns().

void QCSteadyState::usingTDGPFixedPoint QCComplexField< 2 > &  field,
parameterType &  deltaR,
QCParameter tdgpParameters
 

Solves for the steady state solution using the Fixed Point Method form of the Time-Dependent Gross-Pitaevskii (TDGP) equation. It is assumed that SmallOmegaSquared is 1st Parameter, Mu is 2nd Parameter and g the 3rd Parameter in the QCParameter Class. All index referencing should be made C style.

The method incoporates the following time-independent form of the Gross-Pitaevskii equation The equation used is the radial part of Cylindrical Polar Coordinate solution of the Gross-Pitaevskii Equation, which is

\[ -\frac{\hbar^2}{2m}\left[\left(\frac{\psi_{j+1} - 2\psi_j + \psi_{j-1}}{\Delta r^2}\right) + \frac{1}{r}\left(\frac{\psi_{j+1} - \psi_{j-1}}{2\Delta r}\right) - \frac{n^2}{r^2}\right] + \frac{1}{2}m\omega^2r^2\psi_j+ n\hbar\Omega\psi_j + g|\psi_j|^2\psi_j = \mu\psi_r \]

Definition at line 49 of file qcsteadystate.cpp.

References QCParameter::getParameter(), and QCField< complexType, rank >::noOfColumns().

Referenced by QCBEC< rank >::setupSteadyState().

void QCSteadyState::usingTDGPGaussSeidel QCComplexField< 2 > &  currentField,
parameterType  xOffset,
parameterType  yOffset,
parameterType &  h_x,
parameterType &  h_y,
QCParameter tdgpParameters
 

NOT OPERATIONAL! Uses the Gauss-Seidel method for boundary value problems to find the steady state solution for a TDGP system.

It is assumed that Small Omega Squared is 1st Parameter, Mu is 2nd Parameter, g the 3rd Parameter, hbar the 4th and m the 5th in the QCParameter Class. All index referencing should be made C style.

Definition at line 200 of file qcsteadystate.cpp.

void QCSteadyState::usingTDGPVortexFixedPoint QCComplexField< 3 > &  field,
parameterType  xOffset,
parameterType  yOffset,
parameterType  zOffset,
parameterType &  deltaX,
parameterType &  deltaY,
parameterType &  deltaZ,
parameterType &  deltaR,
QCParameter tdgpParameters
 

Same as the "usingTDGPVortexFixedPoint" but for 3-Dimensional fields.

It is assumed that Small Omega Squared is 1st Parameter, Mu is 2nd Parameter, g the 3rd Parameter, Omega the 6th and n the 7th in the QCParameter Class. All index referencing should be made C style.

Definition at line 150 of file qcsteadystate.cpp.

References QCParameter::getParameter(), QCField< complexType, rank >::height(), and QCField< complexType, rank >::noOfColumns().

void QCSteadyState::usingTDGPVortexFixedPoint QCComplexField< 2 > &  field,
parameterType &  deltaR,
QCParameter tdgpParameters
 

Solves for the steady state vortex solution using the Fixed Point Method form of the Time-Dependent Gross-Pitaevskii (TDGP) equation.

It is assumed that Small Omega Squared is 1st Parameter, Mu is 2nd Parameter, g the 3rd Parameter, Omega the 6th and n the 7th in the QCParameter Class. All index referencing should be made C style.

Definition at line 107 of file qcsteadystate.cpp.

References QCParameter::getParameter(), and QCField< complexType, rank >::noOfColumns().

Referenced by QC2ComponentBEC< rank >::setupSteadyState(), and QCBEC< rank >::setupVortexSteadyState().


The documentation for this class was generated from the following files:
Generated on Sat May 13 13:22:50 2006 for Quantum Construct (qC++) by  doxygen 1.4.6-NO