| Feellgood
    | 
#include <fem.h>
| Public Member Functions | |
| Fem (Settings &mySets, timing &t_prm) | |
| ~Fem () | |
| void | energy (double const t, Settings &settings) | 
| void | evolution (void) | 
| void | saver (Settings &settings, timing const &t_prm, std::ofstream &fout, const int nt) const | 
| bool | recenter (double thres, char recentering_direction) | 
| Public Attributes | |
| double | vmax | 
| std::array< double, NB_ENERGY_TERMS > | E | 
| double | DW_dir | 
| double | Etot0 | 
| double | Etot | 
| Mesh::mesh | msh | 
| Private Member Functions | |
| void | direction (enum Nodes::index idx_dir) | 
| Private Attributes | |
| bool | recenter_mem | 
| ANNkd_tree * | kdtree | 
| ANNpointArray | pts | 
class container to grab altogether all parameters of a simulation, including mesh geometry, containers for the mesh
constructor: call mesh constructor, initialize pts,kdtree and many inner variables
| 
 | inline | 
destructor
| 
 | private | 
find direction of motion of DW
| [in] | idx_dir | 
| void Fem::energy | ( | double const | t, | 
| Settings & | settings | ||
| ) | 
computes all the energies
| [in] | t | time in second, used to compute zeeman contribution if applied field is time dependant | 
| [in] | settings | 
| 
 | inline | 
time evolution : one step in time
| bool Fem::recenter | ( | double | thres, | 
| char | recentering_direction | ||
| ) | 
recentering algorithm for the study of the motion of a domain wall.
if \( D_i>0 \) if \( D_i<0 \)
<-------------—|----—> ----—>|<-------------— \( m_i = < u_i > < 0 \)
or or
-------------—>|<----— <----—|-------------—> \( m_i = <u_i> > 0 \)
| [in] | thres | threshold parameter | 
| [in] | recentering_direction | X|Y|Z | 
| void Fem::saver | ( | Settings & | settings, | 
| timing const & | t_prm, | ||
| std::ofstream & | fout, | ||
| const int | nt | ||
| ) | const | 
saving function for a solution
| [in] | settings | |
| [in] | t_prm | |
| [out] | fout | |
| [in] | nt | 
| double Fem::DW_dir | 
direction of the domain wall
| std::array<double,NB_ENERGY_TERMS> Fem::E | 
current iteration energies
| double Fem::Etot | 
total energy
| double Fem::Etot0 | 
initial total energy
| 
 | private | 
ANN kdtree to find efficiently the closest set of nodes to a physical point in the mesh 
 
| Mesh::mesh Fem::msh | 
mesh object to store nodes, fac, tet, and others geometrical values related to the mesh
| 
 | private | 
container for the building of the kdtree (handled by ANN library)
| 
 | private | 
flag to know if kdtree and pts are allocated
| double Fem::vmax | 
maximum speed of magnetization