4#ifndef ROBIN_BOUNDARY_CONDITION_H
5#define ROBIN_BOUNDARY_CONDITION_H
7#include "BoundaryCondition.h"
51 :
BoundaryCondition(vtp_file_path, std::vector<std::string>{
"Stiffness",
"Damping"}, StringBoolMap{{
"normal_direction_only", normal_only}}, face, logger) {}
Base class for boundary conditions with spatially variable arrays.
Definition BoundaryCondition.h:48
double get_value(const std::string &array_name, int node_id) const
Get value for a specific array and node.
Definition BoundaryCondition.cpp:192
bool get_flag(const std::string &name) const
Get a boolean flag by name.
Definition BoundaryCondition.cpp:211
Exception thrown when array validation fails.
Definition BoundaryCondition.h:238
Definition RobinBoundaryCondition.h:37
double get_stiffness(int node_id) const
Get stiffness value for a specific node (convenience method)
Definition RobinBoundaryCondition.h:73
RobinBoundaryCondition()
Default constructor - creates an empty RobinBoundaryCondition.
Definition RobinBoundaryCondition.h:40
RobinBoundaryCondition(const std::string &vtp_file_path, bool normal_only, const faceType &face, SimulationLogger &logger)
Constructor - reads stiffness and damping from VTP file.
Definition RobinBoundaryCondition.h:50
bool normal_direction_only() const
Apply only along normal direction (getter)
Definition RobinBoundaryCondition.h:66
void validate_array_value(const std::string &array_name, double value) const override
Validate array values for Robin BC.
Definition RobinBoundaryCondition.h:96
double get_damping(int node_id) const
Get damping value for a specific node (convenience method)
Definition RobinBoundaryCondition.h:82
double assemble() const
Assemble the Robin BC into the global residual vector and stiffness matrix Currently not implemented.
Definition RobinBoundaryCondition.h:89
The SimulationLogger class is used to write information to a text file and optionally to cout.
Definition SimulationLogger.h:13
The face type containing mesh at boundary.
Definition ComMod.h:511