Serac
0.1
Serac is an implicit thermal strucural mechanics simulation code.
|
Serac: nonlinear implicit thermal-structural driver. More...
#include <fstream>
#include <iostream>
#include <memory>
#include <string>
#include "axom/core.hpp"
#include "mfem.hpp"
#include "serac/infrastructure/about.hpp"
#include "serac/infrastructure/cli.hpp"
#include "serac/infrastructure/initialize.hpp"
#include "serac/infrastructure/input.hpp"
#include "serac/infrastructure/logger.hpp"
#include "serac/infrastructure/output.hpp"
#include "serac/infrastructure/terminator.hpp"
#include "serac/mesh/mesh_utils.hpp"
#include "serac/physics/solid_mechanics.hpp"
#include "serac/physics/heat_transfer.hpp"
#include "serac/physics/thermomechanics.hpp"
#include "serac/numerics/equation_solver.hpp"
#include "serac/physics/state/state_manager.hpp"
#include "serac/serac_config.hpp"
Go to the source code of this file.
Namespaces | |
serac | |
Accelerator functionality. | |
Functions | |
void | serac::defineInputFileSchema (axom::inlet::Inlet &inlet) |
Define the input file structure for the driver code. More... | |
std::unique_ptr< serac::BasePhysics > | createPhysics (int dim, int order, std::optional< serac::SolidMechanicsInputOptions > solid_mechanics_options, std::optional< serac::HeatTransferInputOptions > heat_transfer_options, std::optional< serac::ThermomechanicsInputOptions > thermomechanics_options, std::string mesh_tag, int cycle, double t) |
Constructs the appropriate physics object using the input file options. More... | |
int | getOrder (std::optional< serac::SolidMechanicsInputOptions > solid_mechanics_options, std::optional< serac::HeatTransferInputOptions > heat_transfer_options, std::optional< serac::ThermomechanicsInputOptions > thermomechanics_options) |
Return and check correctness of the order of discretization. More... | |
int | main (int argc, char *argv[]) |
The main serac driver code. More... | |
Serac: nonlinear implicit thermal-structural driver.
The purpose of this code is to act as a proxy app for nonlinear implicit mechanics codes at LLNL.
Definition in file serac.cpp.
std::unique_ptr<serac::BasePhysics> createPhysics | ( | int | dim, |
int | order, | ||
std::optional< serac::SolidMechanicsInputOptions > | solid_mechanics_options, | ||
std::optional< serac::HeatTransferInputOptions > | heat_transfer_options, | ||
std::optional< serac::ThermomechanicsInputOptions > | thermomechanics_options, | ||
std::string | mesh_tag, | ||
int | cycle, | ||
double | t | ||
) |
Constructs the appropriate physics object using the input file options.
[in] | order | The order of the discretization |
[in] | dim | The spatial dimension of the mesh |
[in] | solid_mechanics_options | Optional container of input options for SolidMechanics physics module |
[in] | heat_transfer_options | Optional container of input options for HeatTransfer physics module |
[in] | thermomechanics_options | Optional container of input options for Thermomechanics physics module |
[in] | mesh_tag | The mesh tag to construct the physics class on |
[in] | cycle | The simulation timestep cycle to start the physics module at |
[in] | t | The simulation time to start the physics module at |
int getOrder | ( | std::optional< serac::SolidMechanicsInputOptions > | solid_mechanics_options, |
std::optional< serac::HeatTransferInputOptions > | heat_transfer_options, | ||
std::optional< serac::ThermomechanicsInputOptions > | thermomechanics_options | ||
) |
Return and check correctness of the order of discretization.
[in] | solid_mechanics_options | Optional container of input options for SolidMechanics physics module |
[in] | heat_transfer_options | Optional container of input options for HeatTransfer physics module |
[in] | thermomechanics_options | Optional container of input options for Thermomechanics physics module |