![]() |
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 <MassFractionEquationSystem.h>
Public Member Functions | |
| MassFractionEquationSystem (EquationSystems &equationSystems, const int numMassFraction) | |
| virtual | ~MassFractionEquationSystem () |
| void | register_nodal_fields (stk::mesh::Part *part) |
| void | register_interior_algorithm (stk::mesh::Part *part) |
| void | register_inflow_bc (stk::mesh::Part *part, const stk::topology &theTopo, const InflowBoundaryConditionData &inflowBCData) |
| void | register_open_bc (stk::mesh::Part *part, const stk::topology &theTopo, const OpenBoundaryConditionData &openBCData) |
| void | register_wall_bc (stk::mesh::Part *part, const stk::topology &theTopo, const WallBoundaryConditionData &wallBCData) |
| virtual void | register_symmetry_bc (stk::mesh::Part *part, const stk::topology &theTopo, const SymmetryBoundaryConditionData &symmetryBCData) |
| virtual void | register_non_conformal_bc (stk::mesh::Part *part, const stk::topology &theTopo) |
| virtual void | register_overset_bc () |
| void | initialize () |
| void | predict_state () |
| void | set_current_mass_fraction (const int k) |
| void | copy_mass_fraction (const stk::mesh::FieldBase &fromField, const int fromFieldIndex, const stk::mesh::FieldBase &toField, const int toFieldIndex) |
| void | solve_and_update () |
| Assemble the LHS and RHS and perform linear solve for prescribed number of iterations. More... | |
| void | compute_nth_mass_fraction () |
| bool | system_is_converged () |
| double | provide_scaled_norm () |
| double | provide_norm () |
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 | register_edge_fields (stk::mesh::Part *part) |
| virtual void | register_element_fields (stk::mesh::Part *part, const stk::topology &theTopo) |
| virtual void | pre_iter_work () |
| Perform setup tasks before entering the solve and update step. More... | |
| 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 | post_adapt_work () |
| virtual void | dump_eq_time () |
| virtual double | provide_norm_increment () |
| 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 | create_constraint_algorithm (stk::mesh::FieldBase *theField) |
| 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 | 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) |
| virtual void | post_converged_work () |
| sierra::nalu::MassFractionEquationSystem::MassFractionEquationSystem | ( | EquationSystems & | equationSystems, |
| const int | numMassFraction | ||
| ) |
References sierra::nalu::LinearSystem::create(), sierra::nalu::LinearSolvers::create_solver(), sierra::nalu::EQ_MASS_FRACTION, sierra::nalu::Realm::equationSystems_, sierra::nalu::EquationSystems::get_solver_block_name(), sierra::nalu::Simulation::linearSolvers_, sierra::nalu::EquationSystem::linsys_, managePNG_, sierra::nalu::LinearSystem::provideOutput_, sierra::nalu::Realm::push_equation_to_systems(), sierra::nalu::EquationSystem::realm_, sierra::nalu::Realm::root(), and sierra::nalu::Realm::uniformFlow_.
|
virtual |
References assembleNodalGradAlgDriver_, and diffFluxCoeffAlgDriver_.
| void sierra::nalu::MassFractionEquationSystem::compute_nth_mass_fraction | ( | ) |
References sierra::nalu::Realm::get_buckets(), massFraction_, sierra::nalu::Realm::meta_data(), numMassFraction_, and sierra::nalu::EquationSystem::realm_.
Referenced by solve_and_update().
| void sierra::nalu::MassFractionEquationSystem::copy_mass_fraction | ( | const stk::mesh::FieldBase & | fromField, |
| const int | fromFieldIndex, | ||
| const stk::mesh::FieldBase & | toField, | ||
| const int | toFieldIndex | ||
| ) |
|
virtual |
|
virtual |
|
virtual |
Reimplemented from sierra::nalu::EquationSystem.
References nonLinearResidualSum_.
|
virtual |
Reimplemented from sierra::nalu::EquationSystem.
References firstNonLinearResidualSum_, and nonLinearResidualSum_.
|
virtual |
Reimplemented from sierra::nalu::EquationSystem.
References sierra::nalu::AlgorithmDriver::algMap_, assembleNodalGradAlgDriver_, sierra::nalu::EquationSystem::bcDataAlg_, sierra::nalu::EquationSystem::bcDataMapAlg_, bcMassFractionSet_, currentMassFraction_, dydx_, sierra::nalu::EquationSystem::edgeNodalGradient_, sierra::nalu::UserData::externalData_, sierra::nalu::INFLOW, sierra::nalu::Realm::initCondAlg_, sierra::nalu::MassFraction::massFraction_, massFraction_, sierra::nalu::InflowUserData::massFraction_, sierra::nalu::Realm::meta_data(), numMassFraction_, sierra::nalu::EquationSystem::realm_, sierra::nalu::EquationSystem::solverAlgDriver_, sierra::nalu::SolverAlgorithmDriver::solverDirichAlgMap_, and sierra::nalu::InflowBoundaryConditionData::userData_.
|
virtual |
Reimplemented from sierra::nalu::EquationSystem.
References sierra::nalu::AlgorithmDriver::algMap_, assembleNodalGradAlgDriver_, currentMassFraction_, diffFluxCoeffAlgDriver_, dydx_, sierra::nalu::EquationSystem::edgeNodalGradient_, sierra::nalu::SolutionOptions::elemSrcTermsMap_, evisc_, sierra::nalu::Realm::get_lam_schmidt(), sierra::nalu::Realm::get_turb_schmidt(), sierra::nalu::INTERIOR, sierra::nalu::MASS, massFraction_, sierra::nalu::Realm::number_of_states(), sierra::nalu::EquationSystem::realm_, sierra::nalu::Realm::realmUsesEdges_, sierra::nalu::Realm::solutionOptions_, sierra::nalu::EquationSystem::solverAlgDriver_, sierra::nalu::SolverAlgorithmDriver::solverAlgMap_, sierra::nalu::SolutionOptions::srcTermsMap_, sierra::nalu::EquationSystem::supp_alg_is_requested(), sierra::nalu::Algorithm::supplementalAlg_, tvisc_, and visc_.
|
virtual |
Reimplemented from sierra::nalu::EquationSystem.
References sierra::nalu::Realm::augment_restart_variable_list(), currentMassFraction_, dydx_, evisc_, sierra::nalu::Realm::is_turbulent(), massFraction_, sierra::nalu::Realm::meta_data(), sierra::nalu::Realm::number_of_states(), numMassFraction_, sierra::nalu::EquationSystem::realm_, tvisc_, visc_, and yTmp_.
|
virtual |
Reimplemented from sierra::nalu::EquationSystem.
References sierra::nalu::AlgorithmDriver::algMap_, assembleNodalGradAlgDriver_, currentMassFraction_, dydx_, sierra::nalu::EquationSystem::edgeNodalGradient_, evisc_, managePNG_, sierra::nalu::NON_CONFORMAL, sierra::nalu::EquationSystem::realm_, sierra::nalu::EquationSystem::solverAlgDriver_, and sierra::nalu::SolverAlgorithmDriver::solverAlgMap_.
|
virtual |
Reimplemented from sierra::nalu::EquationSystem.
References sierra::nalu::AlgorithmDriver::algMap_, assembleNodalGradAlgDriver_, sierra::nalu::EquationSystem::bcDataAlg_, bcMassFractionSet_, currentMassFraction_, dydx_, sierra::nalu::EquationSystem::edgeNodalGradient_, evisc_, sierra::nalu::MassFraction::massFraction_, sierra::nalu::OpenUserData::massFraction_, sierra::nalu::Realm::meta_data(), numMassFraction_, sierra::nalu::OPEN, sierra::nalu::EquationSystem::realm_, sierra::nalu::Realm::realmUsesEdges_, sierra::nalu::EquationSystem::solverAlgDriver_, sierra::nalu::SolverAlgorithmDriver::solverAlgMap_, and sierra::nalu::OpenBoundaryConditionData::userData_.
|
virtual |
Reimplemented from sierra::nalu::EquationSystem.
References sierra::nalu::EquationSystem::create_constraint_algorithm(), currentMassFraction_, sierra::nalu::EquationSystem::equationSystems_, sierra::nalu::UpdateOversetFringeAlgorithmDriver::fields_, sierra::nalu::EquationSystems::preIterAlgDriver_, and sierra::nalu::EquationSystem::realm_.
|
virtual |
|
virtual |
Reimplemented from sierra::nalu::EquationSystem.
References sierra::nalu::AlgorithmDriver::algMap_, assembleNodalGradAlgDriver_, sierra::nalu::EquationSystem::bc_data_specified(), sierra::nalu::EquationSystem::bcDataAlg_, sierra::nalu::EquationSystem::bcDataMapAlg_, bcMassFractionSet_, currentMassFraction_, dydx_, sierra::nalu::EquationSystem::edgeNodalGradient_, sierra::nalu::MassFraction::massFraction_, massFraction_, sierra::nalu::WallUserData::massFraction_, sierra::nalu::Realm::meta_data(), numMassFraction_, sierra::nalu::EquationSystem::realm_, sierra::nalu::EquationSystem::solverAlgDriver_, sierra::nalu::SolverAlgorithmDriver::solverDirichAlgMap_, sierra::nalu::WallBoundaryConditionData::userData_, and sierra::nalu::WALL.
| void sierra::nalu::MassFractionEquationSystem::set_current_mass_fraction | ( | const int | k | ) |
References bcMassFractionSet_, copy_mass_fraction(), currentMassFraction_, massFraction_, sierra::nalu::Realm::number_of_states(), and sierra::nalu::EquationSystem::realm_.
Referenced by solve_and_update().
|
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(), assembleNodalGradAlgDriver_, sierra::nalu::Realm::bulk_data(), compute_nth_mass_fraction(), copy_mass_fraction(), currentMassFraction_, sierra::nalu::Realm::currentNonlinearIteration_, diffFluxCoeffAlgDriver_, sierra::nalu::AlgorithmDriver::execute(), sierra::nalu::field_axpby(), firstNonLinearResidualSum_, sierra::nalu::Realm::get_activate_aura(), isInit_, sierra::nalu::LinearSystem::linearResidual(), sierra::nalu::LinearSystem::linearSolveIterations(), sierra::nalu::EquationSystem::linsys_, massFraction_, sierra::nalu::EquationSystem::maxIterations_, sierra::nalu::Realm::meta_data(), sierra::nalu::NaluEnv::nalu_time(), sierra::nalu::NaluEnv::naluOutputP0(), sierra::nalu::LinearSystem::nonLinearResidual(), nonLinearResidualSum_, numMassFraction_, sierra::nalu::EquationSystem::realm_, sierra::nalu::NaluEnv::self(), set_current_mass_fraction(), sierra::nalu::EquationSystem::timerAssemble_, sierra::nalu::EquationSystem::timerMisc_, sierra::nalu::EquationSystem::userSuppliedName_, and yTmp_.
|
virtual |
Reimplemented from sierra::nalu::EquationSystem.
References sierra::nalu::EquationSystem::convergenceTolerance_, firstNonLinearResidualSum_, sierra::nalu::EquationSystem::linsys_, and nonLinearResidualSum_.
| AssembleNodalGradAlgorithmDriver* sierra::nalu::MassFractionEquationSystem::assembleNodalGradAlgDriver_ |
| std::set<std::pair<stk::mesh::FieldBase *, stk::mesh::FieldBase *> > sierra::nalu::MassFractionEquationSystem::bcMassFractionSet_ |
Referenced by register_inflow_bc(), register_open_bc(), register_wall_bc(), and set_current_mass_fraction().
| ScalarFieldType* sierra::nalu::MassFractionEquationSystem::currentMassFraction_ |
| AlgorithmDriver* sierra::nalu::MassFractionEquationSystem::diffFluxCoeffAlgDriver_ |
Referenced by register_interior_algorithm(), solve_and_update(), and ~MassFractionEquationSystem().
| VectorFieldType* sierra::nalu::MassFractionEquationSystem::dydx_ |
| ScalarFieldType* sierra::nalu::MassFractionEquationSystem::evisc_ |
Referenced by register_interior_algorithm(), register_nodal_fields(), register_non_conformal_bc(), and register_open_bc().
| double sierra::nalu::MassFractionEquationSystem::firstNonLinearResidualSum_ |
Referenced by provide_scaled_norm(), solve_and_update(), and system_is_converged().
| bool sierra::nalu::MassFractionEquationSystem::isInit_ |
Referenced by solve_and_update().
| const bool sierra::nalu::MassFractionEquationSystem::managePNG_ |
Referenced by MassFractionEquationSystem(), and register_non_conformal_bc().
| GenericFieldType* sierra::nalu::MassFractionEquationSystem::massFraction_ |
| double sierra::nalu::MassFractionEquationSystem::nonLinearResidualSum_ |
Referenced by provide_norm(), provide_scaled_norm(), solve_and_update(), and system_is_converged().
| const int sierra::nalu::MassFractionEquationSystem::numMassFraction_ |
| ScalarFieldType* sierra::nalu::MassFractionEquationSystem::tvisc_ |
Referenced by register_interior_algorithm(), and register_nodal_fields().
| ScalarFieldType* sierra::nalu::MassFractionEquationSystem::visc_ |
Referenced by register_interior_algorithm(), and register_nodal_fields().
| ScalarFieldType* sierra::nalu::MassFractionEquationSystem::yTmp_ |
Referenced by register_nodal_fields(), and solve_and_update().
1.8.11