![]() |
Shamrock 2025.10.0
Astrophysical Code
|
Boundary conditions configuration. More...
Classes | |
| struct | Free |
| Free boundary condition. More... | |
| struct | Periodic |
| Periodic boundary condition. More... | |
| struct | ShearingPeriodic |
| Shearing periodic boundary condition. More... | |
Public Types | |
| using | Tscal = shambase::VecComponent< Tvec > |
| Type of the components of the vector of coordinates. | |
| using | Variant = std::variant< Free, Periodic, ShearingPeriodic > |
| Variant of all types of artificial viscosity possible. | |
Public Member Functions | |
| void | set_free () |
| Set the boundary condition to free boundaries. | |
| void | set_periodic () |
| Set the boundary condition to periodic boundaries. | |
| void | set_shearing_periodic (i32_3 shear_base, i32_3 shear_dir, Tscal speed) |
| Set the boundary condition to shearing periodic boundaries. | |
| void | print_status () |
| Prints the current boundary condition configuration to the logger. | |
Public Attributes | |
| Variant | config = Free{} |
| The actual configuration (default to free boundaries) | |
Static Public Attributes | |
| static constexpr u32 | dim = shambase::VectorProperties<Tvec>::dimension |
| Number of dimensions of the problem. | |
Boundary conditions configuration.
This struct is used to configure the boundary conditions of a simulation.
| Tvec | The vector type used for the simulation. |
Definition at line 40 of file BCConfig.hpp.
| using shammodels::sph::BCConfig< Tvec >::Tscal = shambase::VecComponent<Tvec> |
Type of the components of the vector of coordinates.
Definition at line 43 of file BCConfig.hpp.
| using shammodels::sph::BCConfig< Tvec >::Variant = std::variant<Free, Periodic, ShearingPeriodic> |
Variant of all types of artificial viscosity possible.
Definition at line 92 of file BCConfig.hpp.
|
inline |
Prints the current boundary condition configuration to the logger.
The function logs the type of boundary condition (free, periodic, or shearing periodic) and the relevant parameters for the shearing periodic case.
Definition at line 121 of file BCConfig.hpp.
Here is the call graph for this function:
|
inline |
Set the boundary condition to free boundaries.
Definition at line 98 of file BCConfig.hpp.
|
inline |
Set the boundary condition to periodic boundaries.
Definition at line 101 of file BCConfig.hpp.
|
inline |
Set the boundary condition to shearing periodic boundaries.
| shear_base | The base of the scalar product to define the number of shearing periodicity to be applied |
| shear_dir | The direction of the shear |
| speed | The speed of the shear |
Definition at line 111 of file BCConfig.hpp.
| Variant shammodels::sph::BCConfig< Tvec >::config = Free{} |
The actual configuration (default to free boundaries)
Definition at line 95 of file BCConfig.hpp.
|
staticconstexpr |
Number of dimensions of the problem.
Definition at line 45 of file BCConfig.hpp.