![]() |
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 <TurbKineticEnergyEquationSystem.h>
Public Member Functions | |
| TurbKineticEnergyEquationSystem (EquationSystems &equationSystems) | |
| virtual | ~TurbKineticEnergyEquationSystem () |
| virtual 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 | reinitialize_linear_system () |
| void | predict_state () |
| void | solve_and_update () |
| Assemble the LHS and RHS and perform linear solve for prescribed number of iterations. More... | |
| void | initial_work () |
| void | compute_effective_diff_flux_coeff () |
| void | compute_wall_model_parameters () |
| void | update_and_clip () |
| void | manage_projected_nodal_gradient (EquationSystems &eqSystems) |
| void | compute_projected_nodal_gradient () |
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 | 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 | post_adapt_work () |
| 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_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::TurbKineticEnergyEquationSystem::TurbKineticEnergyEquationSystem | ( | EquationSystems & | equationSystems | ) |
References sierra::nalu::LinearSystem::create(), sierra::nalu::LinearSolvers::create_solver(), sierra::nalu::EquationSystem::edgeNodalGradient_, sierra::nalu::EQ_TURBULENT_KE, sierra::nalu::Realm::equationSystems_, sierra::nalu::EquationSystems::get_solver_block_name(), sierra::nalu::KSGS, sierra::nalu::Simulation::linearSolvers_, sierra::nalu::EquationSystem::linsys_, manage_projected_nodal_gradient(), managePNG_, sierra::nalu::NaluEnv::naluOutputP0(), sierra::nalu::Realm::push_equation_to_systems(), sierra::nalu::EquationSystem::realm_, sierra::nalu::Realm::root(), sierra::nalu::NaluEnv::self(), sierra::nalu::EquationSystem::set_nodal_gradient(), sierra::nalu::SST, sierra::nalu::SST_DES, and turbulenceModel_.
|
virtual |
| void sierra::nalu::TurbKineticEnergyEquationSystem::compute_effective_diff_flux_coeff | ( | ) |
| void sierra::nalu::TurbKineticEnergyEquationSystem::compute_projected_nodal_gradient | ( | ) |
References assembleNodalGradAlgDriver_, sierra::nalu::AlgorithmDriver::execute(), managePNG_, sierra::nalu::NaluEnv::nalu_time(), projectedNodalGradEqs_, sierra::nalu::NaluEnv::self(), sierra::nalu::ProjectedNodalGradientEquationSystem::solve_and_update_external(), and sierra::nalu::EquationSystem::timerMisc_.
Referenced by sierra::nalu::ShearStressTransportEquationSystem::solve_and_update(), and solve_and_update().
| void sierra::nalu::TurbKineticEnergyEquationSystem::compute_wall_model_parameters | ( | ) |
|
virtual |
Reimplemented from sierra::nalu::EquationSystem.
References sierra::nalu::Realm::get_buckets(), sierra::nalu::Realm::meta_data(), sierra::nalu::EquationSystem::realm_, and tke_.
|
virtual |
| void sierra::nalu::TurbKineticEnergyEquationSystem::manage_projected_nodal_gradient | ( | EquationSystems & | eqSystems | ) |
|
virtual |
|
virtual |
Reimplemented from sierra::nalu::EquationSystem.
References sierra::nalu::AlgorithmDriver::algMap_, assembleNodalGradAlgDriver_, sierra::nalu::EquationSystem::bcDataAlg_, sierra::nalu::EquationSystem::bcDataMapAlg_, dkdx_, sierra::nalu::EquationSystem::edgeNodalGradient_, sierra::nalu::UserData::externalData_, sierra::nalu::INFLOW, sierra::nalu::Realm::initCondAlg_, managePNG_, sierra::nalu::Realm::meta_data(), sierra::nalu::EquationSystem::realm_, sierra::nalu::EquationSystem::solverAlgDriver_, sierra::nalu::SolverAlgorithmDriver::solverDirichAlgMap_, tke_, sierra::nalu::InflowUserData::tke_, sierra::nalu::TurbKinEnergy::turbKinEnergy_, and sierra::nalu::InflowBoundaryConditionData::userData_.
|
virtual |
Reimplemented from sierra::nalu::EquationSystem.
References sierra::nalu::Algorithm::activeKernels_, sierra::nalu::AlgorithmDriver::algMap_, assembleNodalGradAlgDriver_, sierra::nalu::build_or_add_part_to_solver_alg(), sierra::nalu::Realm::bulk_data(), sierra::nalu::AssembleElemSolverAlgorithm::dataNeededByKernels_, diffFluxCoeffAlgDriver_, dkdx_, sierra::nalu::EquationSystem::edgeNodalGradient_, sierra::nalu::SolutionOptions::elemSrcTermsMap_, evisc_, sierra::nalu::Realm::get_lam_schmidt(), sierra::nalu::Realm::get_turb_model_constant(), sierra::nalu::Realm::get_turb_schmidt(), sierra::nalu::INTERIOR, sierra::nalu::KSGS, managePNG_, sierra::nalu::MASS, sierra::nalu::NaluEnv::naluOutputP0(), sierra::nalu::Realm::number_of_states(), sierra::nalu::EquationSystem::realm_, sierra::nalu::Realm::realmUsesEdges_, sierra::nalu::EquationSystem::report_built_supp_alg_names(), sierra::nalu::EquationSystem::report_invalid_supp_alg_names(), sierra::nalu::NaluEnv::self(), sierra::nalu::Realm::solutionOptions_, sierra::nalu::EquationSystem::solverAlgDriver_, sierra::nalu::SolverAlgorithmDriver::solverAlgMap_, sierra::nalu::SolverAlgorithmDriver::solverAlgorithmMap_, sierra::nalu::SolutionOptions::srcTermsMap_, sierra::nalu::SST, sierra::nalu::SST_DES, sierra::nalu::EquationSystem::supp_alg_is_requested(), sierra::nalu::Algorithm::supplementalAlg_, tke_, sierra::nalu::TM_sigmaKOne, sierra::nalu::TM_sigmaKTwo, turbulenceModel_, tvisc_, sierra::nalu::SolutionOptions::useConsolidatedSolverAlg_, and visc_.
|
virtual |
Reimplemented from sierra::nalu::EquationSystem.
References sierra::nalu::Realm::augment_restart_variable_list(), sierra::nalu::EquationSystem::copyStateAlg_, dkdx_, evisc_, kTmp_, 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(), tke_, tvisc_, and visc_.
|
virtual |
Reimplemented from sierra::nalu::EquationSystem.
References sierra::nalu::AlgorithmDriver::algMap_, assembleNodalGradAlgDriver_, dkdx_, sierra::nalu::EquationSystem::edgeNodalGradient_, evisc_, managePNG_, sierra::nalu::NON_CONFORMAL, sierra::nalu::EquationSystem::realm_, sierra::nalu::EquationSystem::solverAlgDriver_, sierra::nalu::SolverAlgorithmDriver::solverAlgMap_, and tke_.
|
virtual |
Reimplemented from sierra::nalu::EquationSystem.
References sierra::nalu::AlgorithmDriver::algMap_, assembleNodalGradAlgDriver_, sierra::nalu::EquationSystem::bcDataAlg_, dkdx_, sierra::nalu::EquationSystem::edgeNodalGradient_, evisc_, managePNG_, sierra::nalu::Realm::meta_data(), sierra::nalu::OPEN, sierra::nalu::EquationSystem::realm_, sierra::nalu::Realm::realmUsesEdges_, sierra::nalu::EquationSystem::solverAlgDriver_, sierra::nalu::SolverAlgorithmDriver::solverAlgMap_, tke_, sierra::nalu::OpenUserData::tke_, sierra::nalu::TurbKinEnergy::turbKinEnergy_, and sierra::nalu::OpenBoundaryConditionData::userData_.
|
virtual |
Reimplemented from sierra::nalu::EquationSystem.
References sierra::nalu::EquationSystem::create_constraint_algorithm(), sierra::nalu::EquationSystem::equationSystems_, sierra::nalu::UpdateOversetFringeAlgorithmDriver::fields_, sierra::nalu::EquationSystems::preIterAlgDriver_, sierra::nalu::EquationSystem::realm_, and tke_.
|
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_, dkdx_, sierra::nalu::EquationSystem::edgeNodalGradient_, managePNG_, sierra::nalu::Realm::meta_data(), sierra::nalu::NaluEnv::naluOutputP0(), sierra::nalu::EquationSystem::realm_, sierra::nalu::NaluEnv::self(), sierra::nalu::EquationSystem::solverAlgDriver_, sierra::nalu::SolverAlgorithmDriver::solverDirichAlgMap_, tke_, sierra::nalu::WallUserData::tke_, sierra::nalu::TurbKinEnergy::turbKinEnergy_, sierra::nalu::WallBoundaryConditionData::userData_, sierra::nalu::WALL, sierra::nalu::WallUserData::wallFunctionApproach_, and wallFunctionTurbKineticEnergyAlgDriver_.
|
virtual |
Reimplemented from sierra::nalu::EquationSystem.
References sierra::nalu::LinearSystem::create(), sierra::nalu::LinearSolvers::create_solver(), sierra::nalu::EQ_TURBULENT_KE, sierra::nalu::Realm::equationSystems_, sierra::nalu::LinearSystem::finalizeLinearSystem(), sierra::nalu::EquationSystems::get_solver_block_name(), sierra::nalu::SolverAlgorithmDriver::initialize_connectivity(), sierra::nalu::Simulation::linearSolvers_, sierra::nalu::EquationSystem::linsys_, sierra::nalu::EquationSystem::realm_, sierra::nalu::Realm::root(), sierra::nalu::EquationSystem::solverAlgDriver_, and sierra::nalu::LinearSolvers::solvers_.
|
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(), compute_effective_diff_flux_coeff(), compute_projected_nodal_gradient(), compute_wall_model_parameters(), isInit_, sierra::nalu::KSGS, kTmp_, sierra::nalu::EquationSystem::maxIterations_, sierra::nalu::NaluEnv::nalu_time(), sierra::nalu::NaluEnv::naluOutputP0(), sierra::nalu::NaluEnv::self(), sierra::nalu::EquationSystem::timerAssemble_, turbulenceModel_, update_and_clip(), and sierra::nalu::EquationSystem::userSuppliedName_.
| void sierra::nalu::TurbKineticEnergyEquationSystem::update_and_clip | ( | ) |
References sierra::nalu::Realm::debug(), sierra::nalu::Realm::get_buckets(), kTmp_, sierra::nalu::Realm::meta_data(), sierra::nalu::NaluEnv::naluOutputP0(), sierra::nalu::NaluEnv::parallel_comm(), sierra::nalu::EquationSystem::realm_, sierra::nalu::NaluEnv::self(), and tke_.
Referenced by solve_and_update().
| AssembleNodalGradAlgorithmDriver* sierra::nalu::TurbKineticEnergyEquationSystem::assembleNodalGradAlgDriver_ |
| AlgorithmDriver* sierra::nalu::TurbKineticEnergyEquationSystem::diffFluxCoeffAlgDriver_ |
| VectorFieldType* sierra::nalu::TurbKineticEnergyEquationSystem::dkdx_ |
| ScalarFieldType* sierra::nalu::TurbKineticEnergyEquationSystem::evisc_ |
Referenced by register_interior_algorithm(), register_nodal_fields(), register_non_conformal_bc(), and register_open_bc().
| bool sierra::nalu::TurbKineticEnergyEquationSystem::isInit_ |
Referenced by solve_and_update().
| ScalarFieldType* sierra::nalu::TurbKineticEnergyEquationSystem::kTmp_ |
| const bool sierra::nalu::TurbKineticEnergyEquationSystem::managePNG_ |
| ProjectedNodalGradientEquationSystem* sierra::nalu::TurbKineticEnergyEquationSystem::projectedNodalGradEqs_ |
Referenced by compute_projected_nodal_gradient(), and manage_projected_nodal_gradient().
| ScalarFieldType* sierra::nalu::TurbKineticEnergyEquationSystem::tke_ |
| const TurbulenceModel sierra::nalu::TurbKineticEnergyEquationSystem::turbulenceModel_ |
Referenced by register_interior_algorithm(), solve_and_update(), and TurbKineticEnergyEquationSystem().
| ScalarFieldType* sierra::nalu::TurbKineticEnergyEquationSystem::tvisc_ |
Referenced by register_interior_algorithm(), and register_nodal_fields().
| ScalarFieldType* sierra::nalu::TurbKineticEnergyEquationSystem::visc_ |
Referenced by register_interior_algorithm(), and register_nodal_fields().
| AlgorithmDriver* sierra::nalu::TurbKineticEnergyEquationSystem::wallFunctionTurbKineticEnergyAlgDriver_ |
Referenced by compute_wall_model_parameters(), register_wall_bc(), and ~TurbKineticEnergyEquationSystem().
1.8.11