YAMLParser
PLComp.h
Go to the documentation of this file.
1 
5 #pragma once
6 #include "yaml-cpp/yaml.h"
7 #include "GenericCompSection.h"
8 #include "GenericMaterial.h"
9 class PLComp :
10  public GenericCompSection
11 {
12 public:
13  PLComp(YAML::Node& yamlNode, std::vector<GenericMaterial*> matList);
14  ~PLComp();
15 
16  //---------- Data fields ----------
18  struct Ply {
20  double T;
21  double theta;
22  };
23 
24  double z0;
25  std::vector<Ply> plies;
26 
27  //---------- Functions ----------
28  //Inherited via Identifiable
29  virtual Identifiable::Type getType() override;
30  virtual std::string getTypeAsString() override;
31 
32  // Inherited via GenericMaterial
33  virtual bool assignIndependentAttributes(YAML::Node & yamlNode) override;
34  virtual void printAttributes() override;
35 
38  bool addPly(const YAML::Node & plyNode, GenericMaterial* mat);
39 };
This is the base class for all materials classes.
Definition: GenericMaterial.h:13
PLComp(YAML::Node &yamlNode, std::vector< GenericMaterial * > matList)
Definition: PLComp.cpp:6
virtual void printAttributes() override
Definition: PLComp.cpp:50
virtual std::string getTypeAsString() override
Definition: PLComp.cpp:25
Definition: PLComp.h:18
std::vector< Ply > plies
Ordered list of plies (bottom ply at index 0)
Definition: PLComp.h:25
GenericMaterial * mat
Ptr to the material of the ply.
Definition: PLComp.h:19
virtual Identifiable::Type getType() override
Definition: PLComp.cpp:21
double T
Ply thickness.
Definition: PLComp.h:20
virtual bool assignIndependentAttributes(YAML::Node &yamlNode) override
Definition: PLComp.cpp:29
double z0
Starting coordinate for the first laminate layer.
Definition: PLComp.h:24
bool addPly(const YAML::Node &plyNode, GenericMaterial *mat)
Definition: PLComp.cpp:38
This class represents a plate composite. That is, a composite cross section for shell elements.
Definition: PLComp.h:9
double theta
Ply orientation.
Definition: PLComp.h:21
Type
Definition: Identifiable.h:26
This is the base class for all composite section classes (NB: Not to be interchanged with GenericCros...
Definition: GenericCompSection.h:12
~PLComp()
Definition: PLComp.cpp:18