24 #ifndef ASLFDELASTICITYBC_H
25 #define ASLFDELASTICITYBC_H
28 #include "acl/aclMath/aclVectorOfElementsDef.h"
37 class ElasticityCommonA;
39 class FDElasticityIncompressibleStatic;
41 class FDElasticityRelaxation;
50 class BCRigidWall:
public BCond
53 std::unique_ptr<acl::Kernel>
kernel;
54 SPFDElasticityIncompressibleStatic
num;
67 const std::vector<SlicesNames> & sl);
73 class BCRigidWallRelaxation:
public BCond
76 std::unique_ptr<acl::Kernel>
kernel;
77 SPFDElasticityRelaxation
num;
92 const std::vector<SlicesNames> & sl);
100 const std::vector<SlicesNames> & sl);
109 const std::vector<SlicesNames> & sl);
118 const std::vector<SlicesNames> & sl);
124 class BCFreeSurface:
public BCond
127 std::unique_ptr<acl::Kernel>
kernel;
128 FDElasticityIncompressibleStatic*
num;
142 class BCFreeSurface2:
public BCond
145 std::unique_ptr<acl::Kernel>
kernel;
194 class BCZeroStressMap:
public BCondWithMap
206 const VectorTemplate *
const t);
252 class BCImposedDisplacementVelocityValue:
public BCond
255 std::unique_ptr<acl::Kernel>
kernel;
256 SPFDElasticityIncompressibleStatic
num;
274 class BCAccelerationSource2:
public BCond
277 std::unique_ptr<acl::Kernel>
kernel;
290 #endif //ASLFDELASTICITYBC_H
std::unique_ptr< acl::Kernel > kernel
BCRigidWallRelaxation(SPFDElasticityRelaxation nm)
void setVelocity(AVec< double > v)
virtual void init()
Builds the necesery internal data and kernels.
void setAcceleration(AVec< double > a)
acl::VectorOfElements value
std::unique_ptr< acl::Kernel > kernel
Advanced Simulation Library.
Advanced Computational Language.
std::shared_ptr< Kernel > SPKernel
SPFDElasticityIncompressibleStatic num
virtual void execute()
Executes the numerical procedure.
std::shared_ptr< NumMethod > SPNumMethod
std::unique_ptr< acl::Kernel > kernel
std::shared_ptr< FDElasticityIncompressibleStatic > SPFDElasticityIncompressibleStatic
BCAccelerationSource2(FDElasticity2 *nm)
std::shared_ptr< BCond > SPBCond
BCFreeSurface2(SPFDElasticity2 nm)
virtual void execute()
Executes the numerical procedure.
AVec< double > displacement
std::shared_ptr< ElasticityCommonA > SPElasticityCommonA
BCImposedDisplacementVelocityValue(SPFDElasticityIncompressibleStatic nm)
SPNumMethod generateBCZeroStress(SPElasticityCommonA nm, SPAbstractDataWithGhostNodes map)
Bondary condition set given values to displacement/velocity.
virtual void execute()
Executes the numerical procedure.
virtual void execute()
Executes the numerical procedure.
virtual void execute()
Executes the numerical procedure.
std::unique_ptr< acl::Kernel > kernel
acl::VectorOfElements lambda
virtual void init()
Builds the necesery internal data and kernels.
SPFDElasticityRelaxation num
SPAbstractDataWithGhostNodes map
boundary description for the particular BC
SPAbstractDataWithGhostNodes displacement
SPFDElasticityIncompressibleStatic num
std::shared_ptr< FDElasticityRelaxation > SPFDElasticityRelaxation
BCFreeSurface(FDElasticityIncompressibleStatic *nm)
SPBCond generateBCRigidWall(SPFDElasticityIncompressibleStatic nm, const std::vector< SlicesNames > &sl)
Bondary condition corresponding to a rigid wall ( and )
std::shared_ptr< FDElasticity2 > SPFDElasticity2
The class represents several Element.
BCRigidWall(SPFDElasticityIncompressibleStatic nm)
virtual void init()
Builds the necesery internal data and kernels.
std::shared_ptr< T > map(ElementData m)
virtual void init()
Builds the necesery internal data and kernels.
virtual void init()
Builds the necesery internal data and kernels.
std::unique_ptr< acl::Kernel > kernel
std::unique_ptr< acl::Kernel > kernel
SPNumMethod generateBCZeroStressP(SPFDElasticityIncompressibleStatic nm, SPAbstractDataWithGhostNodes map)
Bondary condition set given values to displacement/velocity.
void setDisplacement(AVec< double > d)
acl::VectorOfElements acceleration
virtual void execute()
Executes the numerical procedure.
virtual void execute()
Executes the numerical procedure.
FDElasticityIncompressibleStatic * num
virtual void init()
Builds the necesery internal data and kernels.
std::shared_ptr< AbstractDataWithGhostNodes > SPAbstractDataWithGhostNodes
virtual void init()
Builds the necesery internal data and kernels.
BCZeroStressMap(SPAbstractDataWithGhostNodes displacement, acl::VectorOfElements lambda, acl::VectorOfElements mu, SPAbstractDataWithGhostNodes map, const VectorTemplate *const t)