YAMLParser
FECoordSys.h
Go to the documentation of this file.
1 
5 #pragma once
6 #include "yaml-cpp/yaml.h"
7 #include "Identifiable.h"
8 #include <array>
9 #include <vector>
10 
11 class FECoordSys :
12  public Identifiable
13 {
14 public:
22  FECoordSys(int id, double Xx, double Xy, double Xz,
23  double Yx, double Yy, double Yz,
24  double Zx, double Zy, double Zz);
25 
27  FECoordSys(YAML::Node& yamlNode);
28  virtual ~FECoordSys();
29 
30  //---------- Functions ----------
31  // Inherited via GenericFE
32  virtual bool assignIndependentAttributes(YAML::Node & yamlNode);
33  virtual void printAttributes();
34 
36  void BuildFromPoints(YAML::Node yamlNode);
37 
47  std::vector<double> computeOrthogonalVector(double Xx, double Xy, double Xz,
48  double Zx, double Zy, double Zz);
49 
51  void normalizeMatrix();
52 
53  //---------- Data fields ----------
54 
55  double M[3][3];
56 };
57 
FECoordSys(int id, double Xx, double Xy, double Xz, double Yx, double Yy, double Yz, double Zx, double Zy, double Zz)
Definition: FECoordSys.cpp:13
This is the base class for all types with an external identifier attribute. Used when reference to an...
Definition: Identifiable.h:13
void normalizeMatrix()
Definition: FECoordSys.cpp:98
This class represents a coordinate system.
Definition: FECoordSys.h:11
virtual ~FECoordSys()
Definition: FECoordSys.cpp:30
void BuildFromPoints(YAML::Node yamlNode)
Definition: FECoordSys.cpp:71
virtual bool assignIndependentAttributes(YAML::Node &yamlNode)
Definition: FECoordSys.cpp:32
virtual void printAttributes()
Definition: FECoordSys.cpp:114
double M[3][3]
Matrix containing the direction vectors (X, Y, Z) constituting the coordinate system.
Definition: FECoordSys.h:55
std::vector< double > computeOrthogonalVector(double Xx, double Xy, double Xz, double Zx, double Zy, double Zz)
Definition: FECoordSys.cpp:88