|
Feellgood
|
#include <facette.h>
Public Member Functions | |
| Fac (const std::vector< Nodes::Node > &_p_node, const int _NOD, const int _idx, std::initializer_list< int > _i) | |
| void | interpolation (std::function< Eigen::Vector3d(Nodes::Node)> getter, Eigen::Ref< Eigen::Matrix< double, Nodes::DIM, NPI >> result) const |
| void | interpolation (std::function< double(Nodes::Node)> getter, Eigen::Ref< Eigen::Matrix< double, NPI, 1 >> result) const |
| void | integrales (Facette::prm const ¶ms) |
| double | anisotropyEnergy (Facette::prm const ¶m, Eigen::Ref< Eigen::Matrix< double, Nodes::DIM, NPI >> const u) const |
| void | charges (Facette::prm const ¶m, std::function< Eigen::Vector3d(Nodes::Node)> getter, std::vector< double > &srcDen, int &nsrc, std::vector< double > &corr) const |
| double | demagEnergy (Eigen::Ref< Eigen::Matrix< double, Nodes::DIM, NPI >> u, Eigen::Ref< Eigen::Matrix< double, NPI, 1 >> phi) const |
| double | potential (std::function< Eigen::Vector3d(Nodes::Node)> getter, int i) const |
| bool | operator< (const Fac &f) const |
| Eigen::Vector3d | calc_norm (void) const |
| void | getPtGauss (Eigen::Ref< Eigen::Matrix< double, Nodes::DIM, NPI >> result) const |
Public Member Functions inherited from element< N, NPI > | |
| element (const std::vector< Nodes::Node > &_p_node, const int _idx, std::initializer_list< int > &_i) | |
| constexpr int | getN (void) const |
| constexpr int | getNPI (void) const |
| void | buildMatP (Eigen::Ref< Eigen::Matrix< double, 2 *N, 3 *N >> P) |
| void | assemblage_mat (algebra::r_sparseMat &K) const |
| void | assemblage_vect (std::vector< double > &L) const |
| void | infos () const |
Public Attributes | |
| double | surf |
| double | dMs |
| Eigen::Vector3d | n |
Public Attributes inherited from element< N, NPI > | |
| std::vector< int > | ind |
| int | idxPrm |
| Eigen::Matrix< double, NPI, 1 > | weight |
| Eigen::Matrix< double, 2 *N, 2 *N > | Kp |
| Eigen::Matrix< double, 2 *N, 1 > | Lp |
Private Member Functions | |
| void | orientate (void) |
| double | calc_surf (void) const |
| Eigen::Vector3d | normal_vect () const |
Additional Inherited Members | |
Protected Member Functions inherited from element< N, NPI > | |
| const Nodes::Node & | getNode (const int i) const |
| bool | existNodes (void) |
| void | zeroBasing (void) |
Face is a class containing the index references to nodes, its surface and its normal unit vector, it has a triangular shape and should not be degenerated, orientation must be defined in adequation with the mesh
|
inline |
constructor used by readMesh
| [in] | _p_node | vector of nodes |
| [in] | _NOD | nb nodes |
| [in] | _idx | region index in region vector |
| [in] | _i | node index |
| double Fac::anisotropyEnergy | ( | Facette::prm const & | param, |
| Eigen::Ref< Eigen::Matrix< double, Nodes::DIM, NPI >> const | u | ||
| ) | const |
anisotropy energy of the facette
| [in] | param | |
| [in] | u |
|
inline |
computes the norm to the face, returns a unit vector
|
inlineprivate |
computes surface of the face
| void Fac::charges | ( | Facette::prm const & | param, |
| std::function< Eigen::Vector3d(Nodes::Node)> | getter, | ||
| std::vector< double > & | srcDen, | ||
| int & | nsrc, | ||
| std::vector< double > & | corr | ||
| ) | const |
computes surface charges and some corrections, stored in srcDen at position nsrc and corr
| [in] | param | |
| [in] | getter | |
| srcDen | [in|out] | |
| nsrc | [in|out] | |
| corr | [in|out] |
| double Fac::demagEnergy | ( | Eigen::Ref< Eigen::Matrix< double, Nodes::DIM, NPI >> | u, |
| Eigen::Ref< Eigen::Matrix< double, NPI, 1 >> | phi | ||
| ) | const |
demagnetizing energy of the facette
| [in] | u | |
| [in] | phi |
|
inlinevirtual |
returns Gauss points in result = vec_nod*Facettea
Implements element< N, NPI >.
| void Fac::integrales | ( | Facette::prm const & | params | ) |
computes the integral contribution of the triangular face, the only contribution comes from Neel surface anisotropy
| [in] | params |
|
inline |
interpolation function on the output of the getter, mind the transposition: result = transpose(scalar_nod) * a
| [in] | getter | |
| [out] | result |
|
inline |
interpolation function on the output of the getter. result = vec_nod * a
| [in] | getter | |
| [out] | result |
|
inlineprivate |
return normal to the triangular face, not normalized
|
inline |
lexicographic order on indices
|
inlineprivatevirtual |
a method to orientate the element
Implements element< N, NPI >.
| double Fac::potential | ( | std::function< Eigen::Vector3d(Nodes::Node)> | getter, |
| int | i | ||
| ) | const |
computes correction on potential
| double Facette::Fac::dMs |
difference (d for delta) of magnetization at the facette between corresponding tetrahedrons
| Eigen::Vector3d Facette::Fac::n |
normal vector (unit vector)
| double Facette::Fac::surf |
surface of the element