Classes | |
| class | PetscOptions |
| A struct for storing the various types of petsc options and values. More... | |
| class | PetscOptionsScope |
| Activates a problem's PETSc options database for the lifetime of this scope. More... | |
Functions | |
| void | petscSetOptions (const PetscOptions &po, const SolverParams &solver_params, FEProblemBase *const problem=nullptr) |
| A function for setting the PETSc options in PETSc from the options supplied to MOOSE. | |
| void | petscSetOptions (const PetscOptions &po, const std::vector< SolverParams > &solver_params, FEProblemBase *problem) |
| A function for setting the PETSc options in PETSc from the options supplied to MOOSE. | |
| void | petscSetKSPDefaults (FEProblemBase &problem, KSP ksp) |
| Set the default options for a KSP. | |
| template<typename T > | |
| void | setLinearSolverDefaults (FEProblemBase &problem, libMesh::LinearSolver< T > &linear_solver) |
| Set the defaults for a libMesh LinearSolver. | |
| void | petscSetDefaults (FEProblemBase &problem) |
| Sets the default options for PETSc. | |
| PetscErrorCode | petscSetupOutput (CommandLine *cmd_line) |
| void | outputNorm (libMesh::Real old_norm, libMesh::Real norm, bool use_color=false) |
| Helper function for outputting the norm values with/without color. | |
| PetscErrorCode | petscLinearMonitor (KSP, PetscInt its, PetscReal rnorm, void *void_ptr) |
| Helper function for displaying the linear residual during PETSC solve. | |
| void | processSingletonMooseWrappedOptions (FEProblemBase &fe_problem, const InputParameters ¶ms) |
| Process some MOOSE-wrapped PETSc options. | |
| void | storePetscOptions (FEProblemBase &fe_problem, const std::string &prefix, const ParallelParamObject ¶m_object) |
| Stores the PETSc options supplied from the parameter object on the problem. | |
| void | setConvergedReasonFlags (FEProblemBase &fe_problem, std::string prefix) |
| Set flags that will instruct the user on the reason their simulation diverged from PETSc's perspective. | |
| void | setSolveTypeFromParams (FEProblemBase &fe_problem, const InputParameters ¶ms) |
| Sets the FE problem's solve type from the input params. | |
| void | setLineSearchFromParams (FEProblemBase &fe_problem, const InputParameters ¶ms) |
| Sets the FE problem's line search from the input params. | |
| void | setMFFDTypeFromParams (FEProblemBase &fe_problem, const InputParameters ¶ms) |
| Sets the FE problem's matrix-free finite difference type from the input params. | |
| void | storePetscOptionsFromParams (FEProblemBase &fe_problem, const InputParameters ¶ms) |
| Stores the Petsc flags and pair options fron the input params in the given PetscOptions object. | |
| void | addPetscFlagsToPetscOptions (const MultiMooseEnum &petsc_flags, std::string prefix, const ParallelParamObject ¶m_object, PetscOptions &petsc_options) |
| Populate flags in a given PetscOptions object using a vector of input arguments. | |
| void | addPetscPairsToPetscOptions (const std::vector< std::pair< MooseEnumItem, std::string > > &petsc_pair_options, const unsigned int mesh_dimension, std::string prefix, const ParallelParamObject ¶m_object, PetscOptions &petsc_options) |
| Populate name and value pairs in a given PetscOptions object using vectors of input arguments. | |
| std::set< std::string > | getPetscValidLineSearches () |
| Returns the valid petsc line search options as a set of strings. | |
| InputParameters | getPetscValidParams () |
| Returns the PETSc options that are common between Executioners and Preconditioners. | |
| MultiMooseEnum | getCommonPetscFlags () |
| A helper function to produce a MultiMooseEnum with commonly used PETSc single options (flags) | |
| MultiMooseEnum | getCommonSNESFlags () |
| A helper function to produce a MultiMooseEnum with commonly used PETSc snes single options (flags) | |
| MultiMooseEnum | getCommonKSPFlags () |
| A helper function to produce a MultiMooseEnum with commonly used PETSc ksp single options (flags) | |
| MultiMooseEnum | getCommonPetscKeys () |
| A helper function to produce a MultiMooseEnum with commonly used PETSc iname options (keys in key-value pairs) | |
| MultiMooseEnum | getCommonSNESKeys () |
| A helper function to produce a MultiMooseEnum with commonly used PETSc snes option names (keys) | |
| MultiMooseEnum | getCommonKSPKeys () |
| A helper function to produce a MultiMooseEnum with commonly used PETSc ksp option names (keys) | |
| bool | isSNESVI (FEProblemBase &fe_problem) |
| check if SNES type is variational inequalities (VI) solver | |
| void | setSinglePetscOption (const std::string &name, const std::string &value="", FEProblemBase *const problem=nullptr) |
| A wrapper function for dealing with different versions of PetscOptionsSetValue. | |
| void | setSinglePetscOptionIfAppropriate (const MultiMooseEnum &dont_add_these_options, const std::string &name, const std::string &value="", FEProblemBase *const problem=nullptr) |
| Same as setSinglePetscOption, but does not set the option if it doesn't make sense for the current simulation type, e.g. | |
| void | registerPetscCitation (const std::string &bibtex) |
| Register a BibTeX entry with PETSc's citation list so that it is printed (alongside the run-specific citations from any PETSc solvers/preconditioners used) when the PETSc -citations option is enabled. | |
| void | addPetscOptionsFromCommandline (FEProblemBase *const problem=nullptr) |
| Insert command-line PETSc options into the active PETSc options database. | |
| void | petscSetDefaultPCSide (FEProblemBase &problem, KSP ksp) |
| Setup which side we want to apply preconditioner. | |
| void | petscSetDefaultKSPNormType (FEProblemBase &problem, KSP ksp) |
| Set norm type. | |
| void | colorAdjacencyMatrix (PetscScalar *adjacency_matrix, unsigned int size, unsigned int colors, std::vector< unsigned int > &vertex_colors, const char *coloring_algorithm) |
| This method takes an adjacency matrix, and a desired number of colors and applies a graph coloring algorithm to produce a coloring. | |
| void | dontAddPetscFlag (const std::string &flag, PetscOptions &petsc_options) |
| Function to ensure that a particular petsc option is not added to the PetscOptions storage object to be later set unless explicitly specified in input or on the command line. | |
| void | dontAddNonlinearConvergedReason (FEProblemBase &fe_problem) |
| Function to ensure that -snes_converged_reason is not added to the PetscOptions storage object to be later set unless explicitly specified in input or on the command line. | |
| void | dontAddLinearConvergedReason (FEProblemBase &fe_problem) |
| Function to ensure that -ksp_converged_reason is not added to the PetscOptions storage object to be later set unless explicitly specified in input or on the command line. | |
| void | dontAddCommonKSPOptions (FEProblemBase &fe_problem) |
| Function to ensure that common KSP options are not added to the PetscOptions storage object to be later set unless explicitly specified in input or on the command line. | |
| void | dontAddCommonSNESOptions (FEProblemBase &fe_problem) |
| Function to ensure that common SNES options are not added to the PetscOptions storage object to be later set unless explicitly specified in input or on the command line. | |
| void | dontAddCommonSNESOptions (FEProblemBase &fe_problem, const std::string &prefix) |
Prefixed variant: suppress common SNES options for the system identified by prefix (e.g. | |
| std::unique_ptr< PetscMatrix< Number > > | createMatrixFromFile (const libMesh::Parallel::Communicator &comm, Mat &petsc_mat, const std::string &binary_mat_file, unsigned int mat_number_to_load=1) |
| Create a matrix from a binary file. | |
| std::string | stringify (const LineSearchType &t) |
| std::string | stringify (const MffdType &t) |
| void | setSolverOptions (const SolverParams &solver_params, const MultiMooseEnum &dont_add_these_options) |
| void | petscSetOptionsHelper (const PetscOptions &po, FEProblemBase *const problem) |
| PetscErrorCode | petscNonlinearConverged (SNES, PetscInt it, PetscReal, PetscReal, PetscReal, SNESConvergedReason *reason, void *ctx) |
| PetscErrorCode | petscLinearConverged (KSP, PetscInt it, PetscReal, KSPConvergedReason *reason, void *ctx) |
| PCSide | getPetscPCSide (Moose::PCSideType pcs) |
| KSPNormType | getPetscKSPNormType (Moose::MooseKSPNormType kspnorm) |
| template<typename T > | |
| void | checkUserProvidedPetscOption (const T &option, const ParallelParamObject ¶m_object) |
| void Moose::PetscSupport::addPetscFlagsToPetscOptions | ( | const MultiMooseEnum & | petsc_flags, |
| std::string | prefix, | ||
| const ParallelParamObject & | param_object, | ||
| PetscOptions & | petsc_options | ||
| ) |
Populate flags in a given PetscOptions object using a vector of input arguments.
| petsc_flags | Container holding the flags of the petsc options |
| prefix | The prefix to add to the user provided petsc_flags. This should not contain a leading dash per PETSc prefix convention. Note that this function will immediately \emph add said dash at the start of prefix so that later calls to PetscOptionsSetValue work. This is the reason we pass prefix by value |
| param_object | The ParallelParamObject adding the PETSc options |
| petsc_options | Data structure which handles petsc options within moose |
"-log_summary" cannot be used in the input file. This option needs to be set when PETSc is initialized which happens before the parser is even created. We'll throw an error if somebody attempts to add this option later.
"-log_summary" cannot be used in the input file. This option needs to be set when PETSc is initialized which happens before the parser is even created. We'll throw an error if somebody attempts to add this option later.
Definition at line 786 of file PetscSupport.C.
Referenced by MFEMPetscNonlinearSolver::ConstructSolver(), and storePetscOptions().
| void Moose::PetscSupport::addPetscOptionsFromCommandline | ( | FEProblemBase *const | problem = nullptr | ) |
Insert command-line PETSc options into the active PETSc options database.
When problem is provided, this also reapplies vector and matrix type options that may have been consumed before the options database was rebuilt, which preserves PETSc's used-option bookkeeping for command-line '-vec_type' and '*mat_type' options.
Definition at line 328 of file PetscSupport.C.
Referenced by petscSetOptionsHelper(), and Moose::SlepcSupport::slepcSetOptions().
| void Moose::PetscSupport::addPetscPairsToPetscOptions | ( | const std::vector< std::pair< MooseEnumItem, std::string > > & | petsc_pair_options, |
| const unsigned int | mesh_dimension, | ||
| std::string | prefix, | ||
| const ParallelParamObject & | param_object, | ||
| PetscOptions & | petsc_options | ||
| ) |
Populate name and value pairs in a given PetscOptions object using vectors of input arguments.
| petsc_pair_options | Option-value pairs of petsc settings |
| mesh_dimension | The mesh dimension, needed for multigrid settings |
| prefix | The prefix to add to the user provided petsc_pair_options. This should not contain a leading dash per PETSc prefix convention. Note that this function will immediately \emph add said dash at the start of prefix so that later calls to PetscOptionsSetValue work. This is the reason we pass prefix by value |
| param_object | The ParallelParamObject adding the PETSc options |
| petsc_options | Data structure which handles petsc options within moose |
Definition at line 850 of file PetscSupport.C.
Referenced by PhysicsBase::addPetscPairsToPetscOptions(), MFEMPetscNonlinearSolver::ConstructSolver(), and storePetscOptions().
| void Moose::PetscSupport::checkUserProvidedPetscOption | ( | const T & | option, |
| const ParallelParamObject & | param_object | ||
| ) |
Definition at line 778 of file PetscSupport.C.
Referenced by addPetscFlagsToPetscOptions(), and addPetscPairsToPetscOptions().
| void Moose::PetscSupport::colorAdjacencyMatrix | ( | PetscScalar * | adjacency_matrix, |
| unsigned int | size, | ||
| unsigned int | colors, | ||
| std::vector< unsigned int > & | vertex_colors, | ||
| const char * | coloring_algorithm | ||
| ) |
This method takes an adjacency matrix, and a desired number of colors and applies a graph coloring algorithm to produce a coloring.
The coloring is returned as a vector of unsigned integers indicating which color or group each vextex in the adjacency matrix belongs to.
Definition at line 1229 of file PetscSupport.C.
| std::unique_ptr< PetscMatrix< Number > > Moose::PetscSupport::createMatrixFromFile | ( | const libMesh::Parallel::Communicator & | comm, |
| Mat & | petsc_mat, | ||
| const std::string & | binary_mat_file, | ||
| unsigned int | mat_number_to_load = 1 |
||
| ) |
Create a matrix from a binary file.
Note that the returned libMesh matrix wrapper will not destroy the created matrix on destruction. petsc_mat must be destroyed manually via MatDestroy
| mat_number_to_load | A binary file may contain multiple writes of a matrix. This parameter can be used to load a particular matrix from the binary file. By default we load the first written matrix |
Definition at line 1339 of file PetscSupport.C.
Referenced by MatrixSymmetryCheck::execute().
| void Moose::PetscSupport::dontAddCommonKSPOptions | ( | FEProblemBase & | fe_problem | ) |
Function to ensure that common KSP options are not added to the PetscOptions storage object to be later set unless explicitly specified in input or on the command line.
Definition at line 1313 of file PetscSupport.C.
Referenced by ExplicitTimeIntegrator::ExplicitTimeIntegrator().
| void Moose::PetscSupport::dontAddCommonSNESOptions | ( | FEProblemBase & | fe_problem | ) |
Function to ensure that common SNES options are not added to the PetscOptions storage object to be later set unless explicitly specified in input or on the command line.
Definition at line 1323 of file PetscSupport.C.
Referenced by dontAddCommonSNESOptions(), ExplicitTimeIntegrator::ExplicitTimeIntegrator(), and FEProblemSolve::FEProblemSolve().
| void Moose::PetscSupport::dontAddCommonSNESOptions | ( | FEProblemBase & | fe_problem, |
| const std::string & | prefix | ||
| ) |
Prefixed variant: suppress common SNES options for the system identified by prefix (e.g.
"v_sys_"). Adds the prefixed flag/key names to the blocklist so that setSolverOptions and setConvergedReasonFlags skip them for that system.
Definition at line 1329 of file PetscSupport.C.
| void Moose::PetscSupport::dontAddLinearConvergedReason | ( | FEProblemBase & | fe_problem | ) |
Function to ensure that -ksp_converged_reason is not added to the PetscOptions storage object to be later set unless explicitly specified in input or on the command line.
Definition at line 1307 of file PetscSupport.C.
Referenced by CommonOutputAction::act(), and EigenProblemSolve::EigenProblemSolve().
| void Moose::PetscSupport::dontAddNonlinearConvergedReason | ( | FEProblemBase & | fe_problem | ) |
Function to ensure that -snes_converged_reason is not added to the PetscOptions storage object to be later set unless explicitly specified in input or on the command line.
Definition at line 1301 of file PetscSupport.C.
Referenced by CommonOutputAction::act(), and EigenProblemSolve::EigenProblemSolve().
| void Moose::PetscSupport::dontAddPetscFlag | ( | const std::string & | flag, |
| PetscOptions & | petsc_options | ||
| ) |
Function to ensure that a particular petsc option is not added to the PetscOptions storage object to be later set unless explicitly specified in input or on the command line.
Definition at line 1294 of file PetscSupport.C.
Referenced by dontAddCommonKSPOptions(), dontAddCommonSNESOptions(), dontAddLinearConvergedReason(), dontAddNonlinearConvergedReason(), and EigenProblemSolve::EigenProblemSolve().
| MultiMooseEnum Moose::PetscSupport::getCommonKSPFlags | ( | ) |
A helper function to produce a MultiMooseEnum with commonly used PETSc ksp single options (flags)
Definition at line 1085 of file PetscSupport.C.
Referenced by dontAddCommonKSPOptions(), and getCommonPetscFlags().
| MultiMooseEnum Moose::PetscSupport::getCommonKSPKeys | ( | ) |
A helper function to produce a MultiMooseEnum with commonly used PETSc ksp option names (keys)
Definition at line 1110 of file PetscSupport.C.
Referenced by dontAddCommonKSPOptions(), and getCommonPetscKeys().
| MultiMooseEnum Moose::PetscSupport::getCommonPetscFlags | ( | ) |
A helper function to produce a MultiMooseEnum with commonly used PETSc single options (flags)
Definition at line 1092 of file PetscSupport.C.
Referenced by getPetscValidParams(), AddFieldSplitAction::validParams(), MFEMPetscNonlinearSolver::validParams(), and Split::validParams().
| MultiMooseEnum Moose::PetscSupport::getCommonPetscKeys | ( | ) |
A helper function to produce a MultiMooseEnum with commonly used PETSc iname options (keys in key-value pairs)
Definition at line 1118 of file PetscSupport.C.
Referenced by getPetscValidParams(), AddFieldSplitAction::validParams(), MFEMPetscNonlinearSolver::validParams(), and Split::validParams().
| MultiMooseEnum Moose::PetscSupport::getCommonSNESFlags | ( | ) |
A helper function to produce a MultiMooseEnum with commonly used PETSc snes single options (flags)
Definition at line 1074 of file PetscSupport.C.
Referenced by dontAddCommonSNESOptions(), and getCommonPetscFlags().
| MultiMooseEnum Moose::PetscSupport::getCommonSNESKeys | ( | ) |
A helper function to produce a MultiMooseEnum with commonly used PETSc snes option names (keys)
Definition at line 1101 of file PetscSupport.C.
Referenced by dontAddCommonSNESOptions(), and getCommonPetscKeys().
| KSPNormType Moose::PetscSupport::getPetscKSPNormType | ( | Moose::MooseKSPNormType | kspnorm | ) |
Definition at line 550 of file PetscSupport.C.
Referenced by petscSetDefaultKSPNormType().
| PCSide Moose::PetscSupport::getPetscPCSide | ( | Moose::PCSideType | pcs | ) |
Definition at line 533 of file PetscSupport.C.
Referenced by petscSetDefaultPCSide().
| std::set< std::string > Moose::PetscSupport::getPetscValidLineSearches | ( | ) |
Returns the valid petsc line search options as a set of strings.
Definition at line 1033 of file PetscSupport.C.
Referenced by FEProblemSolve::validParams().
| InputParameters Moose::PetscSupport::getPetscValidParams | ( | ) |
Returns the PETSc options that are common between Executioners and Preconditioners.
The output of this function should be added to the the parameters object of the overarching class
Definition at line 1039 of file PetscSupport.C.
Referenced by FEProblemSolve::validParams(), and MoosePreconditioner::validParams().
| bool Moose::PetscSupport::isSNESVI | ( | FEProblemBase & | fe_problem | ) |
check if SNES type is variational inequalities (VI) solver
Definition at line 1134 of file PetscSupport.C.
Referenced by BoundsBase::initialSetup().
| void Moose::PetscSupport::outputNorm | ( | libMesh::Real | old_norm, |
| libMesh::Real | norm, | ||
| bool | use_color = false |
||
| ) |
Helper function for outputting the norm values with/without color.
| PetscErrorCode Moose::PetscSupport::petscLinearConverged | ( | KSP | , |
| PetscInt | it, | ||
| PetscReal | , | ||
| KSPConvergedReason * | reason, | ||
| void * | ctx | ||
| ) |
Definition at line 483 of file PetscSupport.C.
Referenced by petscSetDefaults().
| PetscErrorCode Moose::PetscSupport::petscLinearMonitor | ( | KSP | , |
| PetscInt | its, | ||
| PetscReal | rnorm, | ||
| void * | void_ptr | ||
| ) |
Helper function for displaying the linear residual during PETSC solve.
| PetscErrorCode Moose::PetscSupport::petscNonlinearConverged | ( | SNES | , |
| PetscInt | it, | ||
| PetscReal | , | ||
| PetscReal | , | ||
| PetscReal | , | ||
| SNESConvergedReason * | reason, | ||
| void * | ctx | ||
| ) |
Definition at line 435 of file PetscSupport.C.
Referenced by petscSetDefaults().
| void Moose::PetscSupport::petscSetDefaultKSPNormType | ( | FEProblemBase & | problem, |
| KSP | ksp | ||
| ) |
Set norm type.
Definition at line 571 of file PetscSupport.C.
Referenced by Moose::SlepcSupport::mooseSlepcEPSSNESKSPSetPCSide(), and petscSetKSPDefaults().
| void Moose::PetscSupport::petscSetDefaultPCSide | ( | FEProblemBase & | problem, |
| KSP | ksp | ||
| ) |
Setup which side we want to apply preconditioner.
Definition at line 582 of file PetscSupport.C.
Referenced by Moose::SlepcSupport::mooseSlepcEPSSNESKSPSetPCSide(), and petscSetKSPDefaults().
| void Moose::PetscSupport::petscSetDefaults | ( | FEProblemBase & | problem | ) |
Sets the default options for PETSc.
Definition at line 617 of file PetscSupport.C.
Referenced by FEProblemBase::initPetscOutputAndSomeSolverSettings(), Moose::ScopedThrowOnError::ScopedThrowOnError(), and FEProblemBase::solveLinearSystem().
| void Moose::PetscSupport::petscSetKSPDefaults | ( | FEProblemBase & | problem, |
| KSP | ksp | ||
| ) |
Set the default options for a KSP.
Definition at line 595 of file PetscSupport.C.
Referenced by petscSetDefaults(), and setLinearSolverDefaults().
| void Moose::PetscSupport::petscSetOptions | ( | const PetscOptions & | po, |
| const SolverParams & | solver_params, | ||
| FEProblemBase *const | problem = nullptr |
||
| ) |
A function for setting the PETSc options in PETSc from the options supplied to MOOSE.
This interface function should be used when setting options on a per-system basis
Definition at line 397 of file PetscSupport.C.
Referenced by Moose::SlepcSupport::slepcSetOptions(), FEProblemBase::solve(), and FEProblemBase::solveLinearSystem().
| void Moose::PetscSupport::petscSetOptions | ( | const PetscOptions & | po, |
| const std::vector< SolverParams > & | solver_params, | ||
| FEProblemBase * | problem | ||
| ) |
A function for setting the PETSc options in PETSc from the options supplied to MOOSE.
This interface function should be used for setting options all at once for all systems in a multi-system context. Note that PetscOptions is not a vector because the options database has prefixes for the different systems
Definition at line 407 of file PetscSupport.C.
| void Moose::PetscSupport::petscSetOptionsHelper | ( | const PetscOptions & | po, |
| FEProblemBase *const | problem | ||
| ) |
Definition at line 377 of file PetscSupport.C.
Referenced by petscSetOptions(), and petscSetOptions().
| PetscErrorCode Moose::PetscSupport::petscSetupOutput | ( | CommandLine * | cmd_line | ) |
Definition at line 418 of file PetscSupport.C.
Referenced by MooseApp::executeExecutioner().
| void Moose::PetscSupport::processSingletonMooseWrappedOptions | ( | FEProblemBase & | fe_problem, |
| const InputParameters & | params | ||
| ) |
Process some MOOSE-wrapped PETSc options.
These options have no support for multi-system as indicated by the fact that this function takes no prefix nor solver system argument
Definition at line 681 of file PetscSupport.C.
Referenced by storePetscOptions().
| void Moose::PetscSupport::registerPetscCitation | ( | const std::string & | bibtex | ) |
Register a BibTeX entry with PETSc's citation list so that it is printed (alongside the run-specific citations from any PETSc solvers/preconditioners used) when the PETSc -citations option is enabled.
The list is printed at PetscFinalize.
Definition at line 1357 of file PetscSupport.C.
Referenced by MooseApp::requestCitations().
| void Moose::PetscSupport::setConvergedReasonFlags | ( | FEProblemBase & | fe_problem, |
| std::string | prefix | ||
| ) |
Set flags that will instruct the user on the reason their simulation diverged from PETSc's perspective.
| fe_problem | The problem from which to retrieve the PETSc options |
| prefix | The prefix to add to the convergence flags. This should not contain a leading dash per PETSc prefix convention. Note that this function will immediately \emph add said dash at the start of prefix so that calls to PetscOptionsSetValue work. This is the reason we pass prefix by value |
Definition at line 823 of file PetscSupport.C.
Referenced by FEProblemSolve::FEProblemSolve().
| void Moose::PetscSupport::setLinearSolverDefaults | ( | FEProblemBase & | problem, |
| libMesh::LinearSolver< T > & | linear_solver | ||
| ) |
Set the defaults for a libMesh LinearSolver.
Used in explicit solves
Definition at line 118 of file PetscSupport.h.
Referenced by ExplicitTimeIntegrator::setupSolver().
| void Moose::PetscSupport::setLineSearchFromParams | ( | FEProblemBase & | fe_problem, |
| const InputParameters & | params | ||
| ) |
Sets the FE problem's line search from the input params.
Definition at line 734 of file PetscSupport.C.
Referenced by processSingletonMooseWrappedOptions().
| void Moose::PetscSupport::setMFFDTypeFromParams | ( | FEProblemBase & | fe_problem, |
| const InputParameters & | params | ||
| ) |
Sets the FE problem's matrix-free finite difference type from the input params.
Definition at line 766 of file PetscSupport.C.
Referenced by processSingletonMooseWrappedOptions().
| void Moose::PetscSupport::setSinglePetscOption | ( | const std::string & | name, |
| const std::string & | value = "", |
||
| FEProblemBase *const | problem = nullptr |
||
| ) |
A wrapper function for dealing with different versions of PetscOptionsSetValue.
This is not generally called from MOOSE code, it is instead intended to be called by stuff in MOOSE::PetscSupport.
Definition at line 1158 of file PetscSupport.C.
Referenced by Moose::SlepcSupport::clearFreeNonlinearPowerIterations(), MFEMPetscNonlinearSolver::ConstructSolver(), FEProblemBase::FEProblemBase(), petscSetOptionsHelper(), CommandLine::printUsage(), MooseApp::requestCitations(), Moose::SlepcSupport::setEigenSolverOptions(), Moose::SlepcSupport::setFreeNonlinearPowerIterations(), Moose::SlepcSupport::setNewtonPetscOptions(), Moose::SlepcSupport::setNonlinearPowerOptions(), and setSinglePetscOptionIfAppropriate().
| void Moose::PetscSupport::setSinglePetscOptionIfAppropriate | ( | const MultiMooseEnum & | dont_add_these_options, |
| const std::string & | name, | ||
| const std::string & | value = "", |
||
| FEProblemBase *const | problem = nullptr |
||
| ) |
Same as setSinglePetscOption, but does not set the option if it doesn't make sense for the current simulation type, e.g.
if name is contained within dont_add_these_options
Definition at line 1219 of file PetscSupport.C.
Referenced by Moose::SlepcSupport::setEigenProblemOptions(), Moose::SlepcSupport::setSlepcEigenSolverTolerances(), setSolverOptions(), Moose::SlepcSupport::setWhichEigenPairsOptions(), and Moose::SlepcSupport::slepcSetOptions().
| void Moose::PetscSupport::setSolverOptions | ( | const SolverParams & | solver_params, |
| const MultiMooseEnum & | dont_add_these_options | ||
| ) |
Definition at line 282 of file PetscSupport.C.
Referenced by petscSetOptions(), and petscSetOptions().
| void Moose::PetscSupport::setSolveTypeFromParams | ( | FEProblemBase & | fe_problem, |
| const InputParameters & | params | ||
| ) |
Sets the FE problem's solve type from the input params.
Definition at line 721 of file PetscSupport.C.
Referenced by MoosePreconditioner::MoosePreconditioner(), and processSingletonMooseWrappedOptions().
| void Moose::PetscSupport::storePetscOptions | ( | FEProblemBase & | fe_problem, |
| const std::string & | prefix, | ||
| const ParallelParamObject & | param_object | ||
| ) |
Stores the PETSc options supplied from the parameter object on the problem.
| fe_problem | The problem on which we will store the parameters |
| prefix | A prefix to apply to all the parameter object's PETSc options. This should either be a single character '-' or a string like "-foo_" where the trailing '_' is required |
| param_object | The parameter object potentially holding PETSc options String prefixes may be used to select the system the parameters is applied to |
Definition at line 696 of file PetscSupport.C.
Referenced by FEProblemSolve::FEProblemSolve(), MoosePreconditioner::initialSetup(), MooseStaticCondensationPreconditioner::initialSetup(), and Split::setup().
| void Moose::PetscSupport::storePetscOptionsFromParams | ( | FEProblemBase & | fe_problem, |
| const InputParameters & | params | ||
| ) |
Stores the Petsc flags and pair options fron the input params in the given PetscOptions object.
| std::string Moose::PetscSupport::stringify | ( | const LineSearchType & | t | ) |
Definition at line 238 of file PetscSupport.C.
Referenced by setSolverOptions().
| std::string Moose::PetscSupport::stringify | ( | const MffdType & | t | ) |
Definition at line 267 of file PetscSupport.C.