QMol_TDCI_abs_CAP - fmauger1/QMol-grid GitHub Wiki
QMol_TDCI_abs_CAP
Complex absorbing potential type damping matrix for TDCI calculations.
Description
Use QMol_TDCI_abs_CAP to define the damping matrix modeling complex-absorbing potential (CAP) type absorbing-boundary conditions in TDCI calculations. The damping matrix shoud be specified in the same configuration-state basis as for the (TD)CI model to be propagated. Physical damping matrices are symmetric real, but the class does not check or enforce this.
The CAP damping matrix is added to the CI matrix and thus automatically scales with the propagation time step. The damping rate should be a positive number, with 0 corresponding to no damping being applied.
Class properties
Complex absorbing potential (CAP)
The QMol_TDCI_abs_CAP class defines the following public get-access properties; each can be changed using the set method:
dampingMatrix (M)
Damping matrix [ matrix (default []) ]
- The damping matrix must be square with its size matching the number of configuration states in the TDCI propagation.
Other properties
These properties cannot be edited with the set method.
isInitialized (isInit)
Whether the CAP object is properly initialized. This is used throughout the QMol-grid package to check that the absorber object holds meaningful information and is ready for use.
Class methods
Creation
constructor
Create an absorbing-boundary CAP object with empty class properties.
obj = QMol_TDCI_abs_CAP;
Create an absorbing-boundary CAP object with the name properties set to the specified value. Several name-value pairs can be specified consecutively. Suitable name is any of the CAP properties and is case insensitive.
obj = QMol_TDCI_abs_CAP(name1,value1);
obj = QMol_TDCI_abs_CAP(name1,value1,name2,value2,___);
Changing class properties
set
Update the name properties of an absorbing-boundary CAP object to the specified value. Several name-value pairs can be specified consecutively. Suitable name is any of the CAP properties and is case insensitive.
obj.set(name1,value1);
obj.set(name1,value1,name2,value2,___);
This is the common name-value pair assignment method used throughout the QMol-grid package. The set method also reset the class. After running, the set property updates the isInitialized flag to a false value.
reset
Reset the object by deleting/re-initializing all run-time properties of the class and updating the isInitialized flag to false.
obj.reset;
- This is the common
resetmethod available to all classes throughout the QMol-grid package.
clear
Clear all class properties.
obj.clear;
Clear a specific set of the class properties. Suitable name is any of the CAP properties and is case insensitive.
obj.clear(name1,name2,___);
This is the common clear method available to all classes throughout the QMol-grid package. The clear method also reset the class.
Initializing the object
initialize
Initialize a QMol_TDCI_abs_CAP object and set the isInitialized flag to true.
obj.initialize();
obj.initialize(CI);
- Optionally pass the CI object for which the CAP should be initialized.
Using the CAP damping matrix
getDampingMatrix
Get the CAP damping matrix with
M = obj.getDampingMatrix()
Run-time documentation
getMemoryProfile
Get an estimate of the memory held by a QMol_TDCI_abs_CAP object with either
mem = obj.getMemoryProfile;
mem = obj.getMemoryProfile(false);
- The output
memis the estimated size in bytes.
Additionally display the detail of the memory footprint with
mem = obj.getMemoryProfile(true);
showDocumentation
Display the run-time documentation for the specific configuration of a QMol_TDCI_abs_CAP object.
ref = obj.showDocumentation;
- The output
refis a cell vector containing the list of references to be included in the bibliography.
Test suite
Run the test suite for the class in normal or summary mode respectively with
QMol_test.test('TDCI_abs_CAP');
QMol_test.test('-summary','TDCI_abs_CAP');
Notes
QMol_TDCI_abs_CAPwas introduced in version 01.23