![]() |
Nalu
Nalu: a generalized unstructured massively parallel low Mach flow code designed to support a variety of energy applications of interest (most notably Wind ECP) built on the Sierra Toolkit and Trilinos solver Tpetra/Epetra stack. The open source BSD, clause 3 license model has been chosen for the code base. See LICENSE for more information. http://NaluCFD.org
|
#include <LowMachEquationSystem.h>
Public Member Functions | |
| LowMachEquationSystem (EquationSystems &equationSystems, const bool elementContinuityEqs) | |
| virtual | ~LowMachEquationSystem () |
| virtual void | initialize () |
| virtual void | register_nodal_fields (stk::mesh::Part *part) |
| virtual void | register_edge_fields (stk::mesh::Part *part) |
| virtual void | register_element_fields (stk::mesh::Part *part, const stk::topology &theTopo) |
| virtual void | register_interior_algorithm (stk::mesh::Part *part) |
| virtual void | register_open_bc (stk::mesh::Part *part, const stk::topology &theTopo, const OpenBoundaryConditionData &openBCData) |
| virtual void | register_surface_pp_algorithm (const PostProcessingData &theData, stk::mesh::PartVector &partVector) |
| virtual void | register_initial_condition_fcn (stk::mesh::Part *part, const std::map< std::string, std::string > &theNames, const std::map< std::string, std::vector< double > > &theParams) |
| virtual void | pre_iter_work () |
| Perform setup tasks before entering the solve and update step. More... | |
| virtual void | solve_and_update () |
| Assemble the LHS and RHS and perform linear solve for prescribed number of iterations. More... | |
| virtual void | post_adapt_work () |
| virtual void | predict_state () |
| void | project_nodal_velocity () |
| void | post_converged_work () |
Public Member Functions inherited from sierra::nalu::EquationSystem | |
| EquationSystem (EquationSystems &eqSystems, const std::string name="no_name", const std::string eqnTypeName="no_eqn_type_name") | |
| virtual | ~EquationSystem () |
| void | set_nodal_gradient (const std::string &dofName) |
| virtual void | initial_work () |
| virtual void | populate_derived_quantities () |
| virtual void | post_iter_work () |
| Perform setup tasks after he solve and update step. More... | |
| virtual void | post_iter_work_dep () |
| Deprecated post iteration work logic. More... | |
| virtual void | assemble_and_solve (stk::mesh::FieldBase *deltaSolution) |
| virtual void | provide_output () |
| virtual void | pre_timestep_work () |
| virtual void | reinitialize_linear_system () |
| virtual void | dump_eq_time () |
| virtual double | provide_scaled_norm () |
| virtual double | provide_norm () |
| virtual double | provide_norm_increment () |
| virtual bool | system_is_converged () |
| virtual void | register_wall_bc (stk::mesh::Part *part, const stk::topology &theTopo, const WallBoundaryConditionData &wallBCData) |
| virtual void | register_inflow_bc (stk::mesh::Part *part, const stk::topology &theTopo, const InflowBoundaryConditionData &inflowBCData) |
| virtual void | register_symmetry_bc (stk::mesh::Part *part, const stk::topology &theTopo, const SymmetryBoundaryConditionData &symmetryBCData) |
| virtual void | register_periodic_bc (stk::mesh::Part *partMaster, stk::mesh::Part *partSlave, const stk::topology &theTopoMaster, const stk::topology &theTopoSlave, const PeriodicBoundaryConditionData &periodicBCData) |
| virtual void | register_non_conformal_bc (stk::mesh::Part *part, const stk::topology &theTopo) |
| virtual void | register_overset_bc () |
| virtual void | create_constraint_algorithm (stk::mesh::FieldBase *theField) |
| virtual void | evaluate_properties () |
| PecletFunction * | create_peclet_function (const std::string dofName) |
| virtual void | load (const YAML::Node &node) |
| Simulation * | root () |
| EquationSystems * | parent () |
| void | report_invalid_supp_alg_names () |
| void | report_built_supp_alg_names () |
| bool | supp_alg_is_requested (std::string name) |
| bool | supp_alg_is_requested (std::vector< std::string >) |
| bool | nodal_src_is_requested () |
| void | update_iteration_statistics (const int &iters) |
| bool | bc_data_specified (const UserData &, std::string &name) |
| UserDataType | get_bc_data_type (const UserData &, std::string &name) |
| std::string | get_bc_function_name (const UserData &, std::string &name) |
| std::vector< double > | get_bc_function_params (const UserData &, std::string &name) |
| std::vector< std::string > | get_bc_function_string_params (const UserData &, std::string &name) |
| sierra::nalu::LowMachEquationSystem::LowMachEquationSystem | ( | EquationSystems & | equationSystems, |
| const bool | elementContinuityEqs | ||
| ) |
|
virtual |
References surfaceForceAndMomentAlgDriver_.
|
virtual |
Reimplemented from sierra::nalu::EquationSystem.
References continuityEqSys_, sierra::nalu::EquationSystem::convergenceTolerance_, and momentumEqSys_.
|
virtual |
Reimplemented from sierra::nalu::EquationSystem.
References sierra::nalu::EquationSystem::assemble_and_solve(), sierra::nalu::MomentumEquationSystem::assembleNodalGradAlgDriver_, sierra::nalu::Realm::bulk_data(), sierra::nalu::ContinuityEquationSystem::compute_projected_nodal_gradient(), sierra::nalu::MomentumEquationSystem::compute_wall_function_params(), sierra::nalu::ContinuityEquationSystem::computeMdotAlgDriver_, continuityEqSys_, sierra::nalu::AlgorithmDriver::execute(), sierra::nalu::field_axpby(), sierra::nalu::Realm::get_activate_aura(), sierra::nalu::Realm::meta_data(), momentumEqSys_, sierra::nalu::NaluEnv::naluOutputP0(), sierra::nalu::ContinuityEquationSystem::pressure_, sierra::nalu::Realm::process_adaptivity(), project_nodal_velocity(), sierra::nalu::ContinuityEquationSystem::pTmp_, sierra::nalu::EquationSystem::realm_, and sierra::nalu::NaluEnv::self().
|
virtual |
Reimplemented from sierra::nalu::EquationSystem.
References sierra::nalu::SurfaceForceAndMomentAlgorithmDriver::execute(), sierra::nalu::SolutionOptions::mdotAlgAccumulation_, sierra::nalu::SolutionOptions::mdotAlgInflow_, sierra::nalu::SolutionOptions::mdotAlgOpen_, sierra::nalu::NaluEnv::naluOutputP0(), sierra::nalu::EquationSystem::realm_, sierra::nalu::NaluEnv::self(), sierra::nalu::Realm::solutionOptions_, and surfaceForceAndMomentAlgDriver_.
|
virtual |
Perform setup tasks before entering the solve and update step.
This method is invoked in EquationSystems::solve_and_update method as shown below
Reimplemented from sierra::nalu::EquationSystem.
References continuityEqSys_, momentumEqSys_, and sierra::nalu::EquationSystem::pre_iter_work().
|
virtual |
Reimplemented from sierra::nalu::EquationSystem.
| void sierra::nalu::LowMachEquationSystem::project_nodal_velocity | ( | ) |
References sierra::nalu::ContinuityEquationSystem::compute_projected_nodal_gradient(), continuityEqSys_, density_, sierra::nalu::ContinuityEquationSystem::dpdx_, sierra::nalu::Realm::get_buckets(), sierra::nalu::Realm::get_gamma1(), sierra::nalu::Realm::get_time_step(), sierra::nalu::Realm::meta_data(), momentumEqSys_, sierra::nalu::MomentumEquationSystem::notProjectedPart_, sierra::nalu::EquationSystem::realm_, sierra::nalu::MomentumEquationSystem::uTmp_, and sierra::nalu::MomentumEquationSystem::velocity_.
Referenced by post_adapt_work(), and solve_and_update().
|
virtual |
Reimplemented from sierra::nalu::EquationSystem.
References edgeAreaVec_, sierra::nalu::Realm::meta_data(), sierra::nalu::EquationSystem::realm_, and sierra::nalu::Realm::realmUsesEdges_.
|
virtual |
Reimplemented from sierra::nalu::EquationSystem.
References sierra::nalu::SolutionOptions::activateAdaptivity_, elementContinuityEqs_, sierra::nalu::MasterElementRepo::get_surface_master_element(), sierra::nalu::Realm::meta_data(), sierra::nalu::MasterElement::numIntPoints_, sierra::nalu::Realm::query_for_overset(), sierra::nalu::EquationSystem::realm_, and sierra::nalu::Realm::solutionOptions_.
|
virtual |
Reimplemented from sierra::nalu::EquationSystem.
References sierra::nalu::Realm::initCondAlg_, sierra::nalu::Realm::meta_data(), and sierra::nalu::EquationSystem::realm_.
|
virtual |
Reimplemented from sierra::nalu::EquationSystem.
References sierra::nalu::SolutionOptions::activateAdaptivity_, sierra::nalu::AlgorithmDriver::algMap_, continuityEqSys_, sierra::nalu::ContinuityEquationSystem::dpdx_, sierra::nalu::EIT_LIMITER, sierra::nalu::EIT_PSTAB, sierra::nalu::EIT_SIMPLE_BASE, sierra::nalu::Realm::errorIndicatorAlgDriver_, sierra::nalu::SolutionOptions::errorIndicatorType_, sierra::nalu::INTERIOR, sierra::nalu::ContinuityEquationSystem::pressure_, sierra::nalu::EquationSystem::realm_, sierra::nalu::Realm::realmUsesEdges_, and sierra::nalu::Realm::solutionOptions_.
|
virtual |
Reimplemented from sierra::nalu::EquationSystem.
References sierra::nalu::Realm::augment_property_map(), sierra::nalu::Realm::augment_restart_variable_list(), sierra::nalu::EquationSystem::copyStateAlg_, density_, sierra::nalu::DENSITY_ID, dualNodalVolume_, sierra::nalu::Realm::meta_data(), sierra::nalu::Realm::number_of_states(), sierra::nalu::EquationSystem::realm_, sierra::nalu::Realm::restarted_simulation(), sierra::nalu::Realm::support_inconsistent_restart(), viscosity_, and sierra::nalu::VISCOSITY_ID.
|
virtual |
Reimplemented from sierra::nalu::EquationSystem.
References sierra::nalu::EquationSystem::bcDataAlg_, sierra::nalu::MasterElementRepo::get_surface_master_element(), sierra::nalu::Realm::meta_data(), sierra::nalu::MasterElement::numIntPoints_, sierra::nalu::OpenUserData::p_, sierra::nalu::Pressure::pressure_, sierra::nalu::EquationSystem::realm_, sierra::nalu::OpenUserData::u_, sierra::nalu::OpenBoundaryConditionData::userData_, sierra::nalu::Velocity::ux_, sierra::nalu::Velocity::uy_, and sierra::nalu::Velocity::uz_.
|
virtual |
Reimplemented from sierra::nalu::EquationSystem.
References sierra::nalu::SurfaceForceAndMomentAlgorithmDriver::algVec_, sierra::nalu::Realm::augment_output_variable_list(), sierra::nalu::PostProcessingData::frequency_, sierra::nalu::Realm::meta_data(), sierra::nalu::PostProcessingData::outputFileName_, sierra::nalu::PostProcessingData::parameters_, sierra::nalu::PostProcessingData::physics_, sierra::nalu::EquationSystem::realm_, sierra::nalu::Realm::realmUsesEdges_, and surfaceForceAndMomentAlgDriver_.
|
virtual |
Assemble the LHS and RHS and perform linear solve for prescribed number of iterations.
This method is invoked in EquationSystems::solve_and_update method as shown below
Reimplemented from sierra::nalu::EquationSystem.
References sierra::nalu::EquationSystem::assemble_and_solve(), sierra::nalu::Realm::bulk_data(), sierra::nalu::MomentumEquationSystem::cflReyAlgDriver_, sierra::nalu::MomentumEquationSystem::compute_projected_nodal_gradient(), sierra::nalu::ContinuityEquationSystem::compute_projected_nodal_gradient(), sierra::nalu::Realm::compute_vrtm(), sierra::nalu::MomentumEquationSystem::compute_wall_function_params(), sierra::nalu::ContinuityEquationSystem::computeMdotAlgDriver_, continuityEqSys_, sierra::nalu::MomentumEquationSystem::diffFluxCoeffAlgDriver_, sierra::nalu::AlgorithmDriver::execute(), sierra::nalu::field_axpby(), sierra::nalu::Realm::get_activate_aura(), isInit_, sierra::nalu::EquationSystem::maxIterations_, sierra::nalu::Realm::meta_data(), momentumEqSys_, sierra::nalu::NaluEnv::nalu_time(), sierra::nalu::NaluEnv::naluOutputP0(), sierra::nalu::ContinuityEquationSystem::pressure_, project_nodal_velocity(), sierra::nalu::ContinuityEquationSystem::pTmp_, sierra::nalu::EquationSystem::realm_, sierra::nalu::NaluEnv::self(), sierra::nalu::EquationSystem::timerAssemble_, sierra::nalu::EquationSystem::timerMisc_, sierra::nalu::MomentumEquationSystem::tviscAlgDriver_, sierra::nalu::EquationSystem::userSuppliedName_, sierra::nalu::MomentumEquationSystem::uTmp_, and sierra::nalu::MomentumEquationSystem::velocity_.
| ContinuityEquationSystem* sierra::nalu::LowMachEquationSystem::continuityEqSys_ |
| ScalarFieldType* sierra::nalu::LowMachEquationSystem::density_ |
Referenced by project_nodal_velocity(), and register_nodal_fields().
| ScalarFieldType* sierra::nalu::LowMachEquationSystem::dualNodalVolume_ |
Referenced by register_nodal_fields().
| VectorFieldType* sierra::nalu::LowMachEquationSystem::edgeAreaVec_ |
Referenced by register_edge_fields().
| const bool sierra::nalu::LowMachEquationSystem::elementContinuityEqs_ |
Referenced by LowMachEquationSystem(), and register_element_fields().
| bool sierra::nalu::LowMachEquationSystem::isInit_ |
Referenced by solve_and_update().
| MomentumEquationSystem* sierra::nalu::LowMachEquationSystem::momentumEqSys_ |
Referenced by initialize(), LowMachEquationSystem(), post_adapt_work(), pre_iter_work(), project_nodal_velocity(), and solve_and_update().
| SurfaceForceAndMomentAlgorithmDriver* sierra::nalu::LowMachEquationSystem::surfaceForceAndMomentAlgDriver_ |
Referenced by post_converged_work(), register_surface_pp_algorithm(), and ~LowMachEquationSystem().
| ScalarFieldType* sierra::nalu::LowMachEquationSystem::viscosity_ |
Referenced by register_nodal_fields().
1.8.11