|
Feellgood
|
#include <time_integration.h>
Public Member Functions | |
| timing (const double _tf, const double _dtmin, const double _dtmax) | |
| double | get_dt () const |
| double | get_dt_phys () const |
| void | set_dt (const double _dt) |
| bool | is_dt_TooSmall () const |
| void | inc_t () |
| double | get_t () const |
| double | get_t_phys () const |
| void | set_t (const double _t) |
Public Attributes | |
| const double | tf |
| const double | DTMIN |
| const double | DTMAX |
| const double | TAUR |
| double | prefactor |
Private Attributes | |
| double | t |
| double | dt |
all timing parameters for integrating in time LLG with adaptative time-step and relaxation corrections throught prefactor=f(dt) All the times (t, dt, tf, DTMIN, DTMAX, TAUR) are reduced times \( \tau = \gamma_0 t \) [m/A]: LLG is solved in reduced time. The physical time \( t = \tau/\gamma_0 \) is only used by the interfaces (settings, applied field expressions, outputs), through get_t_phys() and get_dt_phys().
|
inline |
constructor : fully initializes the timing parameters, initial time step initialized with geometric average of DTMIN and DTMAX
|
inline |
getter for (reduced) time step dt
|
inline |
getter for the physical time step [s]
|
inline |
getter for (reduced) time t
|
inline |
getter for the physical time [s]
|
inline |
increment time t with time step dt
|
inline |
basic test to know if dt is too small
|
inline |
setter for time step dt : prefactor is computed from the new dt value to maintain synchronization of dt and prefactor
|
inline |
setter for t
|
private |
reduced time-step
| const double timing::DTMAX |
maximum step time for time integrator
| const double timing::DTMIN |
minimum step time for time integrator
| double timing::prefactor |
this prefactor must be synchronized with dt value
|
private |
reduced current time of the simulation
| const double timing::TAUR |
reduced \( \tau_r = 100 DT_{\mathrm{max}} \)
| const double timing::tf |
final (reduced) time of the simulation