libMesh
Public Member Functions | Public Attributes | Protected Attributes | List of all members
FEMParameters Class Reference

#include <femparameters.h>

Inheritance diagram for FEMParameters:
[legend]

Public Member Functions

 FEMParameters (const libMesh::Parallel::Communicator &comm_in)
 
 ~FEMParameters ()
 
void read (GetPot &input, const std::vector< std::string > *other_variable_names=libmesh_nullptr)
 
 FEMParameters (const libMesh::Parallel::Communicator &comm_in)
 
 ~FEMParameters ()
 
void read (GetPot &input, const std::vector< std::string > *other_variable_names=libmesh_nullptr)
 
 FEMParameters (const libMesh::Parallel::Communicator &comm_in)
 
 ~FEMParameters ()
 
void read (GetPot &input, const std::vector< std::string > *other_variable_names=libmesh_nullptr)
 
 FEMParameters (const libMesh::Parallel::Communicator &comm_in)
 
 ~FEMParameters ()
 
void read (GetPot &input, const std::vector< std::string > *other_variable_names=libmesh_nullptr)
 
 FEMParameters (const libMesh::Parallel::Communicator &comm_in)
 
 ~FEMParameters ()
 
void read (GetPot &input, const std::vector< std::string > *other_variable_names=libmesh_nullptr)
 
 FEMParameters (const libMesh::Parallel::Communicator &comm_in)
 
 ~FEMParameters ()
 
void read (GetPot &input, const std::vector< std::string > *other_variable_names=NULL)
 
const Parallel::Communicator & comm () const
 
processor_id_type n_processors () const
 
processor_id_type processor_id () const
 

Public Attributes

unsigned int initial_timestep
 
unsigned int n_timesteps
 
bool transient
 
unsigned int deltat_reductions
 
std::string timesolver_core
 
libMesh::Real end_time
 
libMesh::Real deltat
 
libMesh::Real timesolver_theta
 
libMesh::Real timesolver_maxgrowth
 
libMesh::Real timesolver_tolerance
 
libMesh::Real timesolver_upper_tolerance
 
libMesh::Real steadystate_tolerance
 
std::vector< libMesh::FEMNormTypetimesolver_norm
 
unsigned int dimension
 
std::string domaintype
 
std::string domainfile
 
std::string elementtype
 
libMesh::Real elementorder
 
libMesh::Real domain_xmin
 
libMesh::Real domain_ymin
 
libMesh::Real domain_zmin
 
libMesh::Real domain_edge_width
 
libMesh::Real domain_edge_length
 
libMesh::Real domain_edge_height
 
unsigned int coarsegridx
 
unsigned int coarsegridy
 
unsigned int coarsegridz
 
unsigned int coarserefinements
 
unsigned int extrarefinements
 
std::string mesh_redistribute_func
 
unsigned int nelem_target
 
libMesh::Real global_tolerance
 
libMesh::Real refine_fraction
 
libMesh::Real coarsen_fraction
 
libMesh::Real coarsen_threshold
 
unsigned int max_adaptivesteps
 
unsigned int initial_adaptivesteps
 
unsigned int write_interval
 
bool write_gmv_error
 
bool write_tecplot_error
 
bool write_exodus_error
 
bool output_xda
 
bool output_xdr
 
bool output_bz2
 
bool output_gz
 
bool output_gmv
 
bool output_tecplot
 
bool output_exodus
 
bool output_nemesis
 
std::vector< std::string > system_types
 
std::vector< libMesh::PeriodicBoundaryperiodic_boundaries
 
std::map< libMesh::subdomain_id_type, libMesh::FunctionBase< libMesh::Number > * > initial_conditions
 
std::map< libMesh::boundary_id_type, libMesh::FunctionBase< libMesh::Number > * > dirichlet_conditions
 
std::map< libMesh::boundary_id_type, libMesh::FunctionBase< libMesh::Number > * > neumann_conditions
 
std::map< libMesh::boundary_id_type, std::vector< unsigned int > > dirichlet_condition_variables
 
std::map< libMesh::boundary_id_type, std::vector< unsigned int > > neumann_condition_variables
 
std::map< int, std::map< libMesh::subdomain_id_type, libMesh::FunctionBase< libMesh::Number > * > > other_interior_functions
 
std::map< int, std::map< libMesh::boundary_id_type, libMesh::FunctionBase< libMesh::Number > * > > other_boundary_functions
 
bool run_simulation
 
bool run_postprocess
 
std::vector< std::string > fe_family
 
std::vector< unsigned intfe_order
 
int extra_quadrature_order
 
bool analytic_jacobians
 
libMesh::Real verify_analytic_jacobians
 
libMesh::Real numerical_jacobian_h
 
bool print_solution_norms
 
bool print_solutions
 
bool print_residual_norms
 
bool print_residuals
 
bool print_jacobian_norms
 
bool print_jacobians
 
bool print_element_solutions
 
bool print_element_residuals
 
bool print_element_jacobians
 
bool use_petsc_snes
 
bool time_solver_quiet
 
bool solver_quiet
 
bool solver_verbose
 
bool reuse_preconditioner
 
bool require_residual_reduction
 
libMesh::Real min_step_length
 
unsigned int max_linear_iterations
 
unsigned int max_nonlinear_iterations
 
libMesh::Real relative_step_tolerance
 
libMesh::Real relative_residual_tolerance
 
libMesh::Real absolute_residual_tolerance
 
libMesh::Real initial_linear_tolerance
 
libMesh::Real minimum_linear_tolerance
 
libMesh::Real linear_tolerance_multiplier
 
unsigned int initial_sobolev_order
 
unsigned int initial_extra_quadrature
 
bool refine_uniformly
 
std::string indicator_type
 
bool patch_reuse
 
unsigned int sobolev_order
 
std::string system_config_file
 

Protected Attributes

const Parallel::Communicator & _communicator
 

Detailed Description

Definition at line 22 of file femparameters.h.

Constructor & Destructor Documentation

FEMParameters::FEMParameters ( const libMesh::Parallel::Communicator comm_in)

Definition at line 24 of file femparameters.C.

24  :
25  ParallelObject(comm_in),
27  transient(true),
29  timesolver_core("euler"),
31  deltat(0.0001), timesolver_theta(0.5),
35  timesolver_norm(0, L2),
36 
37  dimension(2),
38  domaintype("square"), domainfile("mesh.xda"), elementtype("quad"),
39  elementorder(2),
40  domain_xmin(0.0), domain_ymin(0.0), domain_zmin(0.0),
45 
46  nelem_target(8000), global_tolerance(0.0),
50 
51  write_interval(10),
52  write_gmv_error(false), write_tecplot_error(false),
53  write_exodus_error(false),
54  output_xda(false), output_xdr(false),
55  output_bz2(true), output_gz(true),
56  output_gmv(false), output_tecplot(false),
57  output_exodus(false), output_nemesis(false),
58 
59  system_types(0),
60 
61 #ifdef LIBMESH_ENABLE_PERIODIC
63 #endif
64 
65  run_simulation(true), run_postprocess(false),
66 
67  fe_family(1, "LAGRANGE"), fe_order(1, 1),
69 
78 
79  use_petsc_snes(false),
80  time_solver_quiet(true), solver_quiet(true), solver_verbose(false),
83  min_step_length(1e-5),
89 
92  refine_uniformly(false),
93  indicator_type("kelly"), patch_reuse(true), sobolev_order(1)
94 {
95 }
unsigned int nelem_target
Definition: femparameters.h:56
ParallelObject(const Parallel::Communicator &comm_in)
Constructor.
libMesh::Real timesolver_upper_tolerance
Definition: femparameters.h:38
libMesh::Real domain_ymin
Definition: femparameters.h:48
bool print_solution_norms
libMesh::Real deltat
Definition: femparameters.h:38
unsigned int initial_timestep
Definition: femparameters.h:34
bool print_element_residuals
libMesh::Real initial_linear_tolerance
unsigned int dimension
Definition: femparameters.h:45
unsigned int coarserefinements
Definition: femparameters.h:51
bool reuse_preconditioner
libMesh::Real timesolver_tolerance
Definition: femparameters.h:38
std::string domaintype
Definition: femparameters.h:46
libMesh::Real elementorder
Definition: femparameters.h:47
bool analytic_jacobians
libMesh::Real domain_edge_length
Definition: femparameters.h:49
std::string timesolver_core
Definition: femparameters.h:37
bool require_residual_reduction
unsigned int coarsegridy
Definition: femparameters.h:50
libMesh::Real domain_zmin
Definition: femparameters.h:48
bool print_residual_norms
libMesh::Real timesolver_maxgrowth
Definition: femparameters.h:38
libMesh::Real relative_step_tolerance
std::string indicator_type
static const Real TOLERANCE
libMesh::Real refine_fraction
Definition: femparameters.h:58
libMesh::Real domain_edge_height
Definition: femparameters.h:49
long double max(long double a, double b)
unsigned int initial_extra_quadrature
std::vector< unsigned int > fe_order
std::string mesh_redistribute_func
Definition: femparameters.h:52
libMesh::Real coarsen_threshold
Definition: femparameters.h:58
bool write_gmv_error
Definition: femparameters.h:65
libMesh::Real end_time
Definition: femparameters.h:38
unsigned int max_linear_iterations
std::string domainfile
Definition: femparameters.h:46
libMesh::Real minimum_linear_tolerance
std::vector< libMesh::PeriodicBoundary > periodic_boundaries
Definition: femparameters.h:81
std::vector< std::string > fe_family
unsigned int coarsegridx
Definition: femparameters.h:50
libMesh::Real verify_analytic_jacobians
unsigned int write_interval
Definition: femparameters.h:64
unsigned int max_adaptivesteps
Definition: femparameters.h:59
int extra_quadrature_order
libMesh::Real global_tolerance
Definition: femparameters.h:57
std::string elementtype
Definition: femparameters.h:46
libMesh::Real absolute_residual_tolerance
bool write_exodus_error
Definition: femparameters.h:65
libMesh::Real relative_residual_tolerance
bool print_element_solutions
bool print_jacobian_norms
unsigned int extrarefinements
Definition: femparameters.h:51
libMesh::Real min_step_length
unsigned int n_timesteps
Definition: femparameters.h:34
libMesh::Real timesolver_theta
Definition: femparameters.h:38
unsigned int coarsegridz
Definition: femparameters.h:50
bool print_element_jacobians
unsigned int max_nonlinear_iterations
unsigned int initial_adaptivesteps
Definition: femparameters.h:60
bool time_solver_quiet
unsigned int initial_sobolev_order
libMesh::Real numerical_jacobian_h
std::vector< libMesh::FEMNormType > timesolver_norm
Definition: femparameters.h:41
unsigned int sobolev_order
std::vector< std::string > system_types
Definition: femparameters.h:74
libMesh::Real linear_tolerance_multiplier
bool write_tecplot_error
Definition: femparameters.h:65
libMesh::Real domain_edge_width
Definition: femparameters.h:49
libMesh::Real coarsen_fraction
Definition: femparameters.h:58
libMesh::Real steadystate_tolerance
Definition: femparameters.h:38
libMesh::Real domain_xmin
Definition: femparameters.h:48
unsigned int deltat_reductions
Definition: femparameters.h:36
FEMParameters::~FEMParameters ( )

Definition at line 97 of file femparameters.C.

References dirichlet_conditions, initial_conditions, neumann_conditions, other_boundary_functions, and other_interior_functions.

98 {
99  for (std::map<subdomain_id_type, FunctionBase<Number> *>::iterator
100  i = initial_conditions.begin(); i != initial_conditions.end();
101  ++i)
102  delete i->second;
103 
104  for (std::map<boundary_id_type, FunctionBase<Number> *>::iterator
105  i = dirichlet_conditions.begin(); i != dirichlet_conditions.end();
106  ++i)
107  delete i->second;
108 
109  for (std::map<boundary_id_type, FunctionBase<Number> *>::iterator
110  i = neumann_conditions.begin(); i != neumann_conditions.end();
111  ++i)
112  delete i->second;
113 
114  for (std::map<int,
116  >::iterator
117  i = other_boundary_functions.begin(); i != other_boundary_functions.end();
118  ++i)
119  for (std::map<boundary_id_type, FunctionBase<Number> *>::iterator
120  j = i->second.begin(); j != i->second.end();
121  ++j)
122  delete j->second;
123 
124  for (std::map<int,
126  >::iterator
127  i = other_interior_functions.begin(); i != other_interior_functions.end();
128  ++i)
129  for (std::map<subdomain_id_type, FunctionBase<Number> *>::iterator
130  j = i->second.begin(); j != i->second.end();
131  ++j)
132  delete j->second;
133 }
std::map< libMesh::boundary_id_type, libMesh::FunctionBase< libMesh::Number > * > neumann_conditions
Definition: femparameters.h:87
int8_t boundary_id_type
Definition: id_types.h:51
std::map< int, std::map< libMesh::subdomain_id_type, libMesh::FunctionBase< libMesh::Number > * > > other_interior_functions
Definition: femparameters.h:94
std::map< libMesh::subdomain_id_type, libMesh::FunctionBase< libMesh::Number > * > initial_conditions
Definition: femparameters.h:85
std::map< int, std::map< libMesh::boundary_id_type, libMesh::FunctionBase< libMesh::Number > * > > other_boundary_functions
Definition: femparameters.h:97
std::map< libMesh::boundary_id_type, libMesh::FunctionBase< libMesh::Number > * > dirichlet_conditions
Definition: femparameters.h:87
FEMParameters::FEMParameters ( const libMesh::Parallel::Communicator comm_in)
FEMParameters::~FEMParameters ( )
FEMParameters::FEMParameters ( const libMesh::Parallel::Communicator comm_in)
FEMParameters::~FEMParameters ( )
FEMParameters::FEMParameters ( const libMesh::Parallel::Communicator comm_in)
FEMParameters::~FEMParameters ( )
FEMParameters::FEMParameters ( const libMesh::Parallel::Communicator comm_in)
FEMParameters::~FEMParameters ( )
FEMParameters::FEMParameters ( const libMesh::Parallel::Communicator comm_in)
FEMParameters::~FEMParameters ( )

Member Function Documentation

const Parallel::Communicator& libMesh::ParallelObject::comm ( ) const
inherited
Returns
A reference to the Parallel::Communicator object used by this mesh.

Definition at line 87 of file parallel_object.h.

References libMesh::ParallelObject::_communicator.

Referenced by libMesh::__libmesh_petsc_diff_solver_monitor(), libMesh::__libmesh_petsc_diff_solver_residual(), libMesh::__libmesh_petsc_preconditioner_apply(), libMesh::__libmesh_petsc_snes_jacobian(), libMesh::__libmesh_petsc_snes_postcheck(), libMesh::__libmesh_petsc_snes_residual(), libMesh::__libmesh_tao_equality_constraints(), libMesh::__libmesh_tao_equality_constraints_jacobian(), libMesh::__libmesh_tao_gradient(), libMesh::__libmesh_tao_hessian(), libMesh::__libmesh_tao_inequality_constraints(), libMesh::__libmesh_tao_inequality_constraints_jacobian(), libMesh::__libmesh_tao_objective(), libMesh::MeshRefinement::_coarsen_elements(), libMesh::ExactSolution::_compute_error(), libMesh::ParmetisPartitioner::_do_repartition(), libMesh::UniformRefinementEstimator::_estimate_error(), libMesh::BoundaryInfo::_find_id_maps(), libMesh::PetscLinearSolver< T >::_petsc_shell_matrix_get_diagonal(), libMesh::SlepcEigenSolver< T >::_petsc_shell_matrix_get_diagonal(), libMesh::PetscLinearSolver< T >::_petsc_shell_matrix_mult(), libMesh::SlepcEigenSolver< T >::_petsc_shell_matrix_mult(), libMesh::PetscLinearSolver< T >::_petsc_shell_matrix_mult_add(), libMesh::EquationSystems::_read_impl(), libMesh::MeshRefinement::_refine_elements(), libMesh::MeshRefinement::_smooth_flags(), add_cube_convex_hull_to_mesh(), libMesh::TransientRBConstruction::add_IC_to_RB_space(), libMesh::ImplicitSystem::add_matrix(), libMesh::RBConstruction::add_scaled_matrix_and_vector(), libMesh::System::add_vector(), libMesh::EigenSparseLinearSolver< T >::adjoint_solve(), libMesh::UnstructuredMesh::all_second_order(), libMesh::MeshTools::Modification::all_tri(), libMesh::LaplaceMeshSmoother::allgather_graph(), libMesh::TransientRBConstruction::allocate_data_structures(), libMesh::RBConstruction::allocate_data_structures(), libMesh::TransientRBConstruction::assemble_affine_expansion(), libMesh::FEMSystem::assemble_qoi(), libMesh::MeshCommunication::assign_global_indices(), libMesh::ParmetisPartitioner::assign_partitioning(), libMesh::DofMap::attach_matrix(), libMesh::Parallel::BinSorter< KeyType, IdxType >::binsort(), libMesh::Parallel::Sort< KeyType, IdxType >::binsort(), libMesh::MeshCommunication::broadcast(), libMesh::SparseMatrix< T >::build(), libMesh::MeshTools::Generation::build_extrusion(), libMesh::Parallel::Histogram< KeyType, IdxType >::build_histogram(), libMesh::PetscNonlinearSolver< T >::build_mat_null_space(), libMesh::BoundaryInfo::build_node_list_from_side_list(), libMesh::EquationSystems::build_parallel_solution_vector(), libMesh::MeshBase::cache_elem_dims(), libMesh::System::calculate_norm(), libMesh::DofMap::check_dirichlet_bcid_consistency(), libMesh::Parallel::Sort< KeyType, IdxType >::communicate_bins(), libMesh::RBConstruction::compute_Fq_representor_innerprods(), libMesh::RBConstruction::compute_max_error_bound(), libMesh::Nemesis_IO_Helper::compute_num_global_elem_blocks(), libMesh::Nemesis_IO_Helper::compute_num_global_nodesets(), libMesh::Nemesis_IO_Helper::compute_num_global_sidesets(), libMesh::RBConstruction::compute_output_dual_innerprods(), libMesh::RBSCMConstruction::compute_SCM_bounds_on_training_set(), libMesh::Problem_Interface::computeF(), libMesh::Problem_Interface::computeJacobian(), libMesh::Problem_Interface::computePreconditioner(), libMesh::ExodusII_IO::copy_elemental_solution(), libMesh::MeshTools::correct_node_proc_ids(), libMesh::MeshTools::create_bounding_box(), libMesh::MeshTools::create_nodal_bounding_box(), libMesh::MeshRefinement::create_parent_error_vector(), libMesh::MeshTools::create_processor_bounding_box(), libMesh::MeshTools::create_subdomain_bounding_box(), libMesh::MeshCommunication::delete_remote_elements(), libMesh::DofMap::distribute_dofs(), DMlibMeshFunction(), DMlibMeshJacobian(), DMlibMeshSetSystem_libMesh(), DMVariableBounds_libMesh(), libMesh::MeshRefinement::eliminate_unrefined_patches(), libMesh::RBEIMConstruction::enrich_RB_space(), libMesh::TransientRBConstruction::enrich_RB_space(), libMesh::RBConstruction::enrich_RB_space(), AssembleOptimization::equality_constraints(), libMesh::WeightedPatchRecoveryErrorEstimator::estimate_error(), libMesh::JumpErrorEstimator::estimate_error(), libMesh::PatchRecoveryErrorEstimator::estimate_error(), libMesh::AdjointRefinementEstimator::estimate_error(), libMesh::ExactErrorEstimator::estimate_error(), libMesh::RBEIMConstruction::evaluate_mesh_function(), libMesh::MeshRefinement::flag_elements_by_elem_fraction(), libMesh::MeshRefinement::flag_elements_by_error_fraction(), libMesh::MeshRefinement::flag_elements_by_nelem_target(), libMesh::MeshCommunication::gather(), libMesh::MeshCommunication::gather_neighboring_elements(), libMesh::MeshfreeInterpolation::gather_remote_data(), libMesh::CondensedEigenSystem::get_eigenpair(), libMesh::DofMap::get_info(), libMesh::ImplicitSystem::get_linear_solver(), libMesh::EquationSystems::get_solution(), AssembleOptimization::inequality_constraints(), AssembleOptimization::inequality_constraints_jacobian(), libMesh::LocationMap< T >::init(), libMesh::TopologyMap::init(), libMesh::PetscDiffSolver::init(), libMesh::TimeSolver::init(), libMesh::TaoOptimizationSolver< T >::init(), libMesh::PetscNonlinearSolver< T >::init(), libMesh::SystemSubsetBySubdomain::init(), libMesh::EigenSystem::init_data(), libMesh::EigenSystem::init_matrices(), libMesh::ParmetisPartitioner::initialize(), libMesh::OptimizationSystem::initialize_equality_constraints_storage(), libMesh::OptimizationSystem::initialize_inequality_constraints_storage(), libMesh::RBEIMConstruction::initialize_rb_construction(), integrate_function(), libMesh::MeshTools::libmesh_assert_parallel_consistent_procids< Elem >(), libMesh::MeshTools::libmesh_assert_parallel_consistent_procids< Node >(), libMesh::MeshTools::libmesh_assert_topology_consistent_procids< Node >(), libMesh::MeshTools::libmesh_assert_valid_boundary_ids(), libMesh::MeshTools::libmesh_assert_valid_dof_ids(), libMesh::MeshTools::libmesh_assert_valid_neighbors(), libMesh::DistributedMesh::libmesh_assert_valid_parallel_flags(), libMesh::DistributedMesh::libmesh_assert_valid_parallel_object_ids(), libMesh::DistributedMesh::libmesh_assert_valid_parallel_p_levels(), libMesh::MeshTools::libmesh_assert_valid_refinement_flags(), libMesh::MeshTools::libmesh_assert_valid_unique_ids(), libMesh::MeshRefinement::limit_level_mismatch_at_edge(), libMesh::MeshRefinement::limit_level_mismatch_at_node(), libMesh::MeshRefinement::limit_overrefined_boundary(), libMesh::MeshRefinement::limit_underrefined_boundary(), main(), libMesh::MeshRefinement::make_coarsening_compatible(), libMesh::MeshCommunication::make_elems_parallel_consistent(), libMesh::MeshRefinement::make_flags_parallel_consistent(), libMesh::MeshCommunication::make_new_node_proc_ids_parallel_consistent(), libMesh::MeshCommunication::make_new_nodes_parallel_consistent(), libMesh::MeshCommunication::make_node_ids_parallel_consistent(), libMesh::MeshCommunication::make_node_proc_ids_parallel_consistent(), libMesh::MeshCommunication::make_node_unique_ids_parallel_consistent(), libMesh::MeshCommunication::make_nodes_parallel_consistent(), libMesh::MeshCommunication::make_p_levels_parallel_consistent(), libMesh::MeshRefinement::make_refinement_compatible(), libMesh::TransientRBConstruction::mass_matrix_scaled_matvec(), libMesh::FEMSystem::mesh_position_set(), libMesh::MeshSerializer::MeshSerializer(), LinearElasticityWithContact::move_mesh(), libMesh::DistributedMesh::n_active_elem(), libMesh::MeshTools::n_active_levels(), libMesh::BoundaryInfo::n_boundary_conds(), libMesh::BoundaryInfo::n_edge_conds(), libMesh::CondensedEigenSystem::n_global_non_condensed_dofs(), libMesh::MeshTools::n_levels(), libMesh::BoundaryInfo::n_nodeset_conds(), libMesh::MeshTools::n_p_levels(), libMesh::BoundaryInfo::n_shellface_conds(), new_function_base(), libMesh::DistributedMesh::parallel_max_elem_id(), libMesh::DistributedMesh::parallel_max_node_id(), libMesh::ReplicatedMesh::parallel_max_unique_id(), libMesh::DistributedMesh::parallel_max_unique_id(), libMesh::DistributedMesh::parallel_n_elem(), libMesh::DistributedMesh::parallel_n_nodes(), libMesh::SparsityPattern::Build::parallel_sync(), libMesh::MeshTools::paranoid_n_levels(), libMesh::Partitioner::partition(), libMesh::MetisPartitioner::partition_range(), libMesh::Partitioner::partition_unpartitioned_elements(), libMesh::petsc_auto_fieldsplit(), libMesh::System::point_gradient(), libMesh::System::point_hessian(), libMesh::System::point_value(), libMesh::MeshBase::prepare_for_use(), libMesh::SparseMatrix< T >::print(), read(), libMesh::Nemesis_IO::read(), libMesh::CheckpointIO::read(), libMesh::XdrIO::read(), libMesh::CheckpointIO::read_header(), libMesh::XdrIO::read_header(), libMesh::RBEvaluation::read_in_vectors_from_multiple_files(), libMesh::TransientRBConstruction::read_riesz_representors_from_files(), libMesh::RBConstruction::read_riesz_representors_from_files(), libMesh::XdrIO::read_serialized_bc_names(), libMesh::XdrIO::read_serialized_bcs_helper(), libMesh::XdrIO::read_serialized_connectivity(), libMesh::XdrIO::read_serialized_nodes(), libMesh::XdrIO::read_serialized_nodesets(), libMesh::XdrIO::read_serialized_subdomain_names(), libMesh::MeshBase::recalculate_n_partitions(), libMesh::MeshCommunication::redistribute(), libMesh::MeshRefinement::refine_and_coarsen_elements(), libMesh::DistributedMesh::renumber_dof_objects(), LinearElasticityWithContact::residual_and_jacobian(), libMesh::MeshCommunication::send_coarse_ghosts(), libMesh::TransientRBConstruction::set_error_temporal_data(), libMesh::RBEIMConstruction::set_explicit_sys_subvector(), libMesh::Partitioner::set_node_processor_ids(), libMesh::DofMap::set_nonlocal_dof_objects(), libMesh::Partitioner::set_parent_processor_ids(), libMesh::LaplaceMeshSmoother::smooth(), libMesh::Parallel::Sort< KeyType, IdxType >::sort(), libMesh::MeshBase::subdomain_ids(), libMesh::BoundaryInfo::sync(), libMesh::Parallel::sync_element_data_by_parent_id(), libMesh::Parallel::sync_node_data_by_element_id(), libMesh::MeshRefinement::test_level_one(), MeshfunctionDFEM::test_mesh_function_dfem(), MeshfunctionDFEM::test_mesh_function_dfem_grad(), libMesh::MeshRefinement::test_unflagged(), PointLocatorTest::testLocator(), BoundaryInfoTest::testMesh(), SystemsTest::testProjectCubeWithMeshFunction(), libMesh::MeshTools::total_weight(), libMesh::MeshFunctionSolutionTransfer::transfer(), libMesh::MeshfreeSolutionTransfer::transfer(), libMesh::TransientRBConstruction::truth_assembly(), libMesh::RBConstruction::truth_assembly(), libMesh::MeshRefinement::uniformly_coarsen(), libMesh::TransientRBConstruction::update_RB_initial_condition_all_N(), libMesh::RBEIMConstruction::update_RB_system_matrices(), libMesh::TransientRBConstruction::update_RB_system_matrices(), libMesh::RBConstruction::update_RB_system_matrices(), libMesh::TransientRBConstruction::update_residual_terms(), libMesh::RBConstruction::update_residual_terms(), libMesh::NameBasedIO::write(), libMesh::XdrIO::write(), libMesh::RBEvaluation::write_out_vectors(), libMesh::TransientRBConstruction::write_riesz_representors_to_files(), libMesh::RBConstruction::write_riesz_representors_to_files(), libMesh::XdrIO::write_serialized_bcs_helper(), libMesh::XdrIO::write_serialized_connectivity(), libMesh::XdrIO::write_serialized_nodes(), libMesh::XdrIO::write_serialized_nodesets(), libMesh::RBDataSerialization::RBEvaluationSerialization::write_to_file(), libMesh::RBDataSerialization::TransientRBEvaluationSerialization::write_to_file(), libMesh::RBDataSerialization::RBEIMEvaluationSerialization::write_to_file(), and libMesh::RBDataSerialization::RBSCMEvaluationSerialization::write_to_file().

88  { return _communicator; }
const Parallel::Communicator & _communicator
processor_id_type libMesh::ParallelObject::n_processors ( ) const
inherited
Returns
The number of processors in the group.

Definition at line 93 of file parallel_object.h.

References libMesh::ParallelObject::_communicator, and libMesh::Parallel::Communicator::size().

Referenced by libMesh::ParmetisPartitioner::_do_repartition(), libMesh::BoundaryInfo::_find_id_maps(), libMesh::DistributedMesh::add_elem(), libMesh::DistributedMesh::add_node(), libMesh::LaplaceMeshSmoother::allgather_graph(), libMesh::FEMSystem::assembly(), libMesh::ParmetisPartitioner::assign_partitioning(), libMesh::AztecLinearSolver< T >::AztecLinearSolver(), libMesh::MeshCommunication::broadcast(), libMesh::BoundaryInfo::build_node_list_from_side_list(), libMesh::DistributedMesh::clear(), libMesh::Nemesis_IO_Helper::compute_border_node_ids(), libMesh::Nemesis_IO_Helper::construct_nemesis_filename(), libMesh::MeshTools::correct_node_proc_ids(), libMesh::UnstructuredMesh::create_pid_mesh(), libMesh::MeshTools::create_processor_bounding_box(), libMesh::DofMap::distribute_dofs(), libMesh::DofMap::distribute_local_dofs_node_major(), libMesh::DofMap::distribute_local_dofs_var_major(), libMesh::DistributedMesh::DistributedMesh(), libMesh::EnsightIO::EnsightIO(), libMesh::MeshCommunication::gather(), libMesh::MeshCommunication::gather_neighboring_elements(), libMesh::MeshBase::get_info(), libMesh::EquationSystems::get_solution(), libMesh::SystemSubsetBySubdomain::init(), libMesh::ParmetisPartitioner::initialize(), libMesh::Nemesis_IO_Helper::initialize(), libMesh::DistributedMesh::insert_elem(), libMesh::MeshTools::libmesh_assert_parallel_consistent_procids< Elem >(), libMesh::MeshTools::libmesh_assert_parallel_consistent_procids< Node >(), libMesh::MeshTools::libmesh_assert_topology_consistent_procids< Node >(), libMesh::MeshTools::libmesh_assert_valid_boundary_ids(), libMesh::MeshTools::libmesh_assert_valid_dof_ids(), libMesh::MeshTools::libmesh_assert_valid_neighbors(), libMesh::MeshTools::libmesh_assert_valid_refinement_flags(), libMesh::DofMap::local_variable_indices(), libMesh::MeshRefinement::make_coarsening_compatible(), libMesh::MeshBase::n_active_elem_on_proc(), libMesh::MeshBase::n_elem_on_proc(), libMesh::MeshBase::n_nodes_on_proc(), libMesh::SparsityPattern::Build::parallel_sync(), libMesh::Partitioner::partition(), libMesh::MeshBase::partition(), libMesh::Partitioner::partition_unpartitioned_elements(), libMesh::PetscLinearSolver< T >::PetscLinearSolver(), libMesh::System::point_gradient(), libMesh::System::point_hessian(), libMesh::System::point_value(), libMesh::SparseMatrix< T >::print(), libMesh::NameBasedIO::read(), libMesh::Nemesis_IO::read(), libMesh::CheckpointIO::read(), libMesh::CheckpointIO::read_connectivity(), libMesh::XdrIO::read_header(), libMesh::CheckpointIO::read_nodes(), libMesh::MeshCommunication::redistribute(), libMesh::DistributedMesh::renumber_dof_objects(), libMesh::Partitioner::repartition(), libMesh::MeshCommunication::send_coarse_ghosts(), libMesh::Partitioner::set_node_processor_ids(), libMesh::DofMap::set_nonlocal_dof_objects(), libMesh::Parallel::Sort< KeyType, IdxType >::sort(), WriteVecAndScalar::testWrite(), libMesh::MeshRefinement::uniformly_coarsen(), libMesh::DistributedMesh::update_parallel_id_counts(), libMesh::GMVIO::write_binary(), libMesh::GMVIO::write_discontinuous_gmv(), libMesh::XdrIO::write_serialized_bcs_helper(), libMesh::XdrIO::write_serialized_connectivity(), libMesh::XdrIO::write_serialized_nodes(), and libMesh::XdrIO::write_serialized_nodesets().

94  { return cast_int<processor_id_type>(_communicator.size()); }
unsigned int size() const
Definition: parallel.h:726
const Parallel::Communicator & _communicator
processor_id_type libMesh::ParallelObject::processor_id ( ) const
inherited
Returns
The rank of this processor in the group.

Definition at line 99 of file parallel_object.h.

References libMesh::ParallelObject::_communicator, and libMesh::Parallel::Communicator::rank().

Referenced by libMesh::BoundaryInfo::_find_id_maps(), libMesh::EquationSystems::_read_impl(), libMesh::DistributedMesh::add_elem(), libMesh::BoundaryInfo::add_elements(), libMesh::DofMap::add_neighbors_to_send_list(), libMesh::DistributedMesh::add_node(), libMesh::MeshRefinement::add_node(), libMesh::MeshTools::Modification::all_tri(), libMesh::FEMSystem::assembly(), libMesh::ParmetisPartitioner::assign_partitioning(), libMesh::MeshCommunication::broadcast(), libMesh::EquationSystems::build_discontinuous_solution_vector(), libMesh::Nemesis_IO_Helper::build_element_and_node_maps(), libMesh::ParmetisPartitioner::build_graph(), libMesh::InfElemBuilder::build_inf_elem(), libMesh::BoundaryInfo::build_node_list_from_side_list(), libMesh::DofMap::build_sparsity(), libMesh::DistributedMesh::clear(), libMesh::ExodusII_IO_Helper::close(), libMesh::Nemesis_IO_Helper::compute_border_node_ids(), libMesh::Nemesis_IO_Helper::compute_communication_map_parameters(), libMesh::Nemesis_IO_Helper::compute_internal_and_border_elems_and_internal_nodes(), libMesh::RBConstruction::compute_max_error_bound(), libMesh::Nemesis_IO_Helper::compute_node_communication_maps(), libMesh::Nemesis_IO_Helper::compute_num_global_elem_blocks(), libMesh::Nemesis_IO_Helper::compute_num_global_nodesets(), libMesh::Nemesis_IO_Helper::compute_num_global_sidesets(), libMesh::Nemesis_IO_Helper::construct_nemesis_filename(), libMesh::MeshTools::correct_node_proc_ids(), libMesh::ExodusII_IO_Helper::create(), libMesh::DistributedMesh::delete_elem(), libMesh::DistributedMesh::delete_node(), libMesh::MeshCommunication::delete_remote_elements(), libMesh::DofMap::distribute_dofs(), libMesh::DofMap::distribute_local_dofs_node_major(), libMesh::DofMap::distribute_local_dofs_var_major(), libMesh::DistributedMesh::DistributedMesh(), libMesh::EnsightIO::EnsightIO(), libMesh::RBEIMConstruction::evaluate_mesh_function(), libMesh::MeshFunction::find_element(), libMesh::MeshFunction::find_elements(), libMesh::UnstructuredMesh::find_neighbors(), libMesh::MeshCommunication::gather(), libMesh::MeshCommunication::gather_neighboring_elements(), libMesh::Nemesis_IO_Helper::get_cmap_params(), libMesh::Nemesis_IO_Helper::get_eb_info_global(), libMesh::Nemesis_IO_Helper::get_elem_cmap(), libMesh::Nemesis_IO_Helper::get_elem_map(), libMesh::MeshBase::get_info(), libMesh::DofMap::get_info(), libMesh::Nemesis_IO_Helper::get_init_global(), libMesh::Nemesis_IO_Helper::get_init_info(), libMesh::Nemesis_IO_Helper::get_loadbal_param(), libMesh::Nemesis_IO_Helper::get_node_cmap(), libMesh::Nemesis_IO_Helper::get_node_map(), libMesh::Nemesis_IO_Helper::get_ns_param_global(), libMesh::EquationSystems::get_solution(), libMesh::Nemesis_IO_Helper::get_ss_param_global(), libMesh::SparsityPattern::Build::handle_vi_vj(), libMesh::SystemSubsetBySubdomain::init(), HeatSystem::init_data(), libMesh::ParmetisPartitioner::initialize(), libMesh::ExodusII_IO_Helper::initialize(), libMesh::ExodusII_IO_Helper::initialize_element_variables(), libMesh::ExodusII_IO_Helper::initialize_global_variables(), libMesh::ExodusII_IO_Helper::initialize_nodal_variables(), libMesh::DistributedMesh::insert_elem(), libMesh::DofMap::is_evaluable(), libMesh::SparsityPattern::Build::join(), libMesh::TransientRBEvaluation::legacy_write_offline_data_to_files(), libMesh::RBEIMEvaluation::legacy_write_offline_data_to_files(), libMesh::RBEvaluation::legacy_write_offline_data_to_files(), libMesh::RBSCMEvaluation::legacy_write_offline_data_to_files(), libMesh::RBEIMEvaluation::legacy_write_out_interpolation_points_elem(), libMesh::MeshTools::libmesh_assert_parallel_consistent_procids< Elem >(), libMesh::MeshTools::libmesh_assert_parallel_consistent_procids< Node >(), libMesh::MeshTools::libmesh_assert_valid_neighbors(), libMesh::DistributedMesh::libmesh_assert_valid_parallel_object_ids(), libMesh::DofMap::local_variable_indices(), main(), libMesh::MeshRefinement::make_coarsening_compatible(), AugmentSparsityOnInterface::mesh_reinit(), libMesh::MeshBase::n_active_local_elem(), libMesh::BoundaryInfo::n_boundary_conds(), libMesh::BoundaryInfo::n_edge_conds(), libMesh::System::n_local_dofs(), libMesh::MeshBase::n_local_elem(), libMesh::MeshBase::n_local_nodes(), libMesh::BoundaryInfo::n_nodeset_conds(), libMesh::BoundaryInfo::n_shellface_conds(), libMesh::WeightedPatchRecoveryErrorEstimator::EstimateError::operator()(), libMesh::SparsityPattern::Build::operator()(), libMesh::PatchRecoveryErrorEstimator::EstimateError::operator()(), libMesh::SparsityPattern::Build::parallel_sync(), libMesh::MetisPartitioner::partition_range(), libMesh::System::point_gradient(), libMesh::System::point_hessian(), libMesh::System::point_value(), libMesh::SparseMatrix< T >::print(), libMesh::NumericVector< T >::print_global(), libMesh::Nemesis_IO_Helper::put_cmap_params(), libMesh::Nemesis_IO_Helper::put_elem_cmap(), libMesh::Nemesis_IO_Helper::put_elem_map(), libMesh::Nemesis_IO_Helper::put_loadbal_param(), libMesh::Nemesis_IO_Helper::put_node_cmap(), libMesh::Nemesis_IO_Helper::put_node_map(), libMesh::NameBasedIO::read(), libMesh::Nemesis_IO::read(), libMesh::CheckpointIO::read(), libMesh::XdrIO::read(), libMesh::ExodusII_IO_Helper::read_elem_num_map(), libMesh::CheckpointIO::read_header(), libMesh::XdrIO::read_header(), libMesh::RBEvaluation::read_in_vectors_from_multiple_files(), libMesh::ExodusII_IO_Helper::read_node_num_map(), libMesh::TransientRBConstruction::read_riesz_representors_from_files(), libMesh::RBConstruction::read_riesz_representors_from_files(), libMesh::XdrIO::read_serialized_bc_names(), libMesh::XdrIO::read_serialized_bcs_helper(), libMesh::XdrIO::read_serialized_connectivity(), libMesh::XdrIO::read_serialized_nodes(), libMesh::XdrIO::read_serialized_nodesets(), libMesh::XdrIO::read_serialized_subdomain_names(), libMesh::MeshCommunication::redistribute(), libMesh::DistributedMesh::renumber_dof_objects(), libMesh::MeshCommunication::send_coarse_ghosts(), libMesh::Partitioner::set_node_processor_ids(), libMesh::DofMap::set_nonlocal_dof_objects(), libMesh::LaplaceMeshSmoother::smooth(), DefaultCouplingTest::testCoupling(), PointNeighborCouplingTest::testCoupling(), BoundaryInfoTest::testShellFaceConstraints(), WriteVecAndScalar::testWrite(), libMesh::MeshTools::total_weight(), libMesh::MeshRefinement::uniformly_coarsen(), libMesh::Parallel::Packing< Node * >::unpack(), libMesh::Parallel::Packing< Elem * >::unpack(), libMesh::DistributedMesh::update_parallel_id_counts(), libMesh::DTKAdapter::update_variable_values(), libMesh::MeshTools::weight(), libMesh::NameBasedIO::write(), libMesh::CheckpointIO::write(), libMesh::XdrIO::write(), libMesh::EquationSystems::write(), libMesh::GMVIO::write_discontinuous_gmv(), libMesh::ExodusII_IO::write_element_data(), libMesh::ExodusII_IO_Helper::write_element_values(), libMesh::ExodusII_IO_Helper::write_elements(), libMesh::ExodusII_IO::write_global_data(), libMesh::ExodusII_IO_Helper::write_global_values(), libMesh::ExodusII_IO::write_information_records(), libMesh::ExodusII_IO_Helper::write_information_records(), libMesh::ExodusII_IO_Helper::write_nodal_coordinates(), libMesh::UCDIO::write_nodal_data(), libMesh::ExodusII_IO::write_nodal_data(), libMesh::ExodusII_IO::write_nodal_data_discontinuous(), libMesh::ExodusII_IO_Helper::write_nodal_values(), libMesh::Nemesis_IO_Helper::write_nodesets(), libMesh::ExodusII_IO_Helper::write_nodesets(), libMesh::RBEvaluation::write_out_vectors(), write_output_solvedata(), libMesh::RBConstruction::write_riesz_representors_to_files(), libMesh::XdrIO::write_serialized_bc_names(), libMesh::XdrIO::write_serialized_bcs_helper(), libMesh::XdrIO::write_serialized_connectivity(), libMesh::XdrIO::write_serialized_nodes(), libMesh::XdrIO::write_serialized_nodesets(), libMesh::XdrIO::write_serialized_subdomain_names(), libMesh::Nemesis_IO_Helper::write_sidesets(), libMesh::ExodusII_IO_Helper::write_sidesets(), libMesh::ExodusII_IO::write_timestep(), and libMesh::ExodusII_IO_Helper::write_timestep().

100  { return cast_int<processor_id_type>(_communicator.rank()); }
const Parallel::Communicator & _communicator
unsigned int rank() const
Definition: parallel.h:724
void FEMParameters::read ( GetPot &  input,
const std::vector< std::string > *  other_variable_names = libmesh_nullptr 
)
void FEMParameters::read ( GetPot &  input,
const std::vector< std::string > *  other_variable_names = NULL 
)
void FEMParameters::read ( GetPot &  input,
const std::vector< std::string > *  other_variable_names = libmesh_nullptr 
)
void FEMParameters::read ( GetPot &  input,
const std::vector< std::string > *  other_variable_names = libmesh_nullptr 
)
void FEMParameters::read ( GetPot &  input,
const std::vector< std::string > *  other_variable_names = libmesh_nullptr 
)

Definition at line 150 of file femparameters.C.

References absolute_residual_tolerance, analytic_jacobians, coarsegridx, coarsegridy, coarsegridz, coarsen_fraction, coarsen_threshold, coarserefinements, libMesh::ParallelObject::comm(), deltat, deltat_reductions, dimension, dirichlet_condition_variables, dirichlet_conditions, libMesh::DISCRETE_L2, domain_edge_height, domain_edge_length, domain_edge_width, domain_xmin, domain_ymin, domain_zmin, domainfile, domaintype, elementorder, elementtype, end_time, libMesh::err, extra_quadrature_order, extrarefinements, fe_family, fe_order, global_tolerance, libMesh::H1, libMesh::H2, indicator_type, initial_adaptivesteps, initial_conditions, initial_extra_quadrature, initial_linear_tolerance, initial_sobolev_order, initial_timestep, libMesh::L2, linear_tolerance_multiplier, std::max(), max_adaptivesteps, max_linear_iterations, max_nonlinear_iterations, mesh_redistribute_func, min_step_length, minimum_linear_tolerance, n_timesteps, libMesh::Quality::name(), nelem_target, neumann_condition_variables, neumann_conditions, new_function_base(), numerical_jacobian_h, other_boundary_functions, other_interior_functions, libMesh::out, output_bz2, output_exodus, output_gmv, output_gz, output_nemesis, output_tecplot, output_xda, output_xdr, patch_reuse, periodic_boundaries, print_element_jacobians, print_element_residuals, print_element_solutions, print_jacobian_norms, print_jacobians, print_residual_norms, print_residuals, print_solution_norms, print_solutions, libMesh::Real, refine_fraction, refine_uniformly, relative_residual_tolerance, relative_step_tolerance, require_residual_reduction, reuse_preconditioner, run_postprocess, run_simulation, sobolev_order, solver_quiet, solver_verbose, steadystate_tolerance, system_config_file, system_types, time_solver_quiet, timesolver_core, timesolver_maxgrowth, timesolver_norm, timesolver_theta, timesolver_tolerance, timesolver_upper_tolerance, use_petsc_snes, verify_analytic_jacobians, write_exodus_error, write_gmv_error, write_interval, and write_tecplot_error.

Referenced by main(), and new_function_base().

152 {
153  std::vector<std::string> variable_names;
154  if (other_variable_names)
155  for (std::size_t i=0; i != other_variable_names->size(); ++i)
156  {
157  const std::string & name = (*other_variable_names)[i];
158  const std::string stringval = input(name, std::string());
159  variable_names.push_back(name + "=" + stringval);
160  }
161 
162  GETPOT_INT_INPUT(initial_timestep);
163  GETPOT_INT_INPUT(n_timesteps);
164  GETPOT_INPUT(transient);
165  GETPOT_INT_INPUT(deltat_reductions);
166  GETPOT_INPUT(timesolver_core);
167  GETPOT_INPUT(end_time);
168  GETPOT_INPUT(deltat);
169  GETPOT_INPUT(timesolver_theta);
170  GETPOT_INPUT(timesolver_maxgrowth);
171  GETPOT_INPUT(timesolver_tolerance);
172  GETPOT_INPUT(timesolver_upper_tolerance);
173  GETPOT_INPUT(steadystate_tolerance);
174 
175  GETPOT_REGISTER(timesolver_norm);
176  const unsigned int n_timesolver_norm = input.vector_variable_size("timesolver_norm");
177  timesolver_norm.resize(n_timesolver_norm, L2);
178  for (unsigned int i=0; i != n_timesolver_norm; ++i)
179  {
180  int current_norm = 0; // L2
181  if (timesolver_norm[i] == H1)
182  current_norm = 1;
183  if (timesolver_norm[i] == H2)
184  current_norm = 2;
185  current_norm = input("timesolver_norm", current_norm, i);
186  if (current_norm == 0)
187  timesolver_norm[i] = L2;
188  else if (current_norm == 1)
189  timesolver_norm[i] = H1;
190  else if (current_norm == 2)
191  timesolver_norm[i] = H2;
192  else
194  }
195 
196 
197  GETPOT_INT_INPUT(dimension);
198  GETPOT_INPUT(domaintype);
199  GETPOT_INPUT(domainfile);
200  GETPOT_INPUT(elementtype);
201  GETPOT_INPUT(elementorder);
202  GETPOT_INPUT(domain_xmin);
203  GETPOT_INPUT(domain_ymin);
204  GETPOT_INPUT(domain_zmin);
205  GETPOT_INPUT(domain_edge_width);
206  GETPOT_INPUT(domain_edge_length);
207  GETPOT_INPUT(domain_edge_height);
208  GETPOT_INT_INPUT(coarsegridx);
209  GETPOT_INT_INPUT(coarsegridy);
210  GETPOT_INT_INPUT(coarsegridz);
211  GETPOT_INT_INPUT(coarserefinements);
212  GETPOT_INT_INPUT(extrarefinements);
213  GETPOT_INPUT(mesh_redistribute_func);
214 
215 
216  GETPOT_INT_INPUT(nelem_target);
217  GETPOT_INPUT(global_tolerance);
218  GETPOT_INPUT(refine_fraction);
219  GETPOT_INPUT(coarsen_fraction);
220  GETPOT_INPUT(coarsen_threshold);
221  GETPOT_INT_INPUT(max_adaptivesteps);
222  GETPOT_INT_INPUT(initial_adaptivesteps);
223 
224 
225  GETPOT_INT_INPUT(write_interval);
226  GETPOT_INPUT(output_xda);
227  GETPOT_INPUT(output_xdr);
228  GETPOT_INPUT(output_gz);
229 #ifndef LIBMESH_HAVE_GZSTREAM
230  output_gz = false;
231 #endif
232  GETPOT_INPUT(output_bz2);
233 #ifndef LIBMESH_HAVE_BZ2
234  output_bz2 = false;
235 #endif
236  GETPOT_INPUT(output_gmv);
237  GETPOT_INPUT(write_gmv_error);
238 #ifndef LIBMESH_HAVE_GMV
239  output_gmv = false;
240  write_gmv_error = false;
241 #endif
242  GETPOT_INPUT(output_tecplot);
243  GETPOT_INPUT(write_tecplot_error);
244 #ifndef LIBMESH_HAVE_TECPLOT_API
245  output_tecplot = false;
246  write_tecplot_error = false;
247 #endif
248  GETPOT_INPUT(output_exodus);
249  GETPOT_INPUT(write_exodus_error);
250 #ifndef LIBMESH_HAVE_EXODUS_API
251  output_exodus = false;
252  write_exodus_error = false;
253 #endif
254  GETPOT_INPUT(output_nemesis);
255 #ifndef LIBMESH_HAVE_NEMESIS_API
256  output_nemesis = false;
257 #endif
258 
259 
260  GETPOT_REGISTER(system_types);
261  const unsigned int n_system_types =
262  input.vector_variable_size("system_types");
263  if (n_system_types)
264  {
265  system_types.resize(n_system_types, "");
266  for (unsigned int i=0; i != n_system_types; ++i)
267  {
268  system_types[i] = input("system_types", system_types[i], i);
269  }
270  }
271 
272 
273 #ifdef LIBMESH_ENABLE_PERIODIC
274  GETPOT_REGISTER(periodic_boundaries);
275  const unsigned int n_periodic_bcs =
276  input.vector_variable_size("periodic_boundaries");
277 
278  if (n_periodic_bcs)
279  {
280  if (domaintype != "square" &&
281  domaintype != "cylinder" &&
282  domaintype != "file" &&
283  domaintype != "od2")
284  {
285  libMesh::out << "Periodic boundaries need rectilinear domains" << std::endl;;
286  libmesh_error();
287  }
288  for (unsigned int i=0; i != n_periodic_bcs; ++i)
289  {
290  unsigned int myboundary =
291  input("periodic_boundaries", -1, i);
292  unsigned int pairedboundary = 0;
293  RealVectorValue translation_vector;
294  if (dimension == 2)
295  switch (myboundary)
296  {
297  case 0:
298  pairedboundary = 2;
299  translation_vector = RealVectorValue(0., domain_edge_length);
300  break;
301  case 1:
302  pairedboundary = 3;
303  translation_vector = RealVectorValue(-domain_edge_width, 0);
304  break;
305  default:
306  libMesh::out << "Unrecognized periodic boundary id " <<
307  myboundary << std::endl;;
308  libmesh_error();
309  }
310  else if (dimension == 3)
311  switch (myboundary)
312  {
313  case 0:
314  pairedboundary = 5;
315  translation_vector = RealVectorValue(Real(0), Real(0), domain_edge_height);
316  break;
317  case 1:
318  pairedboundary = 3;
319  translation_vector = RealVectorValue(Real(0), domain_edge_length, Real(0));
320  break;
321  case 2:
322  pairedboundary = 4;
323  translation_vector = RealVectorValue(-domain_edge_width, Real(0), Real(0));
324  break;
325  default:
326  libMesh::out << "Unrecognized periodic boundary id " <<
327  myboundary << std::endl;;
328  libmesh_error();
329  }
330  periodic_boundaries.push_back(PeriodicBoundary(translation_vector));
331  periodic_boundaries[i].myboundary = myboundary;
332  periodic_boundaries[i].pairedboundary = pairedboundary;
333  }
334  }
335 #endif // LIBMESH_ENABLE_PERIODIC
336 
337  // Use std::string inputs so GetPot doesn't have to make a bunch
338  // of internal C string copies
339  std::string zero_string = "zero";
340  std::string empty_string = "";
341 
342  GETPOT_REGISTER(dirichlet_condition_types);
343  GETPOT_REGISTER(dirichlet_condition_values);
344  GETPOT_REGISTER(dirichlet_condition_boundaries);
345  GETPOT_REGISTER(dirichlet_condition_variables);
346 
347  const unsigned int n_dirichlet_conditions=
348  input.vector_variable_size("dirichlet_condition_types");
349 
350  if (n_dirichlet_conditions !=
351  input.vector_variable_size("dirichlet_condition_values"))
352  {
353  libMesh::out << "Error: " << n_dirichlet_conditions
354  << " Dirichlet condition types does not match "
355  << input.vector_variable_size("dirichlet_condition_values")
356  << " Dirichlet condition values." << std::endl;
357 
358  libmesh_error();
359  }
360 
361  if (n_dirichlet_conditions !=
362  input.vector_variable_size("dirichlet_condition_boundaries"))
363  {
364  libMesh::out << "Error: " << n_dirichlet_conditions
365  << " Dirichlet condition types does not match "
366  << input.vector_variable_size("dirichlet_condition_boundaries")
367  << " Dirichlet condition boundaries." << std::endl;
368 
369  libmesh_error();
370  }
371 
372  if (n_dirichlet_conditions !=
373  input.vector_variable_size("dirichlet_condition_variables"))
374  {
375  libMesh::out << "Error: " << n_dirichlet_conditions
376  << " Dirichlet condition types does not match "
377  << input.vector_variable_size("dirichlet_condition_variables")
378  << " Dirichlet condition variables sets." << std::endl;
379 
380  libmesh_error();
381  }
382 
383  for (unsigned int i=0; i != n_dirichlet_conditions; ++i)
384  {
385  const std::string func_type =
386  input("dirichlet_condition_types", zero_string, i);
387 
388  const std::string func_value =
389  input("dirichlet_condition_values", empty_string, i);
390 
391  const boundary_id_type func_boundary =
392  input("dirichlet_condition_boundaries", boundary_id_type(0), i);
393 
394  dirichlet_conditions[func_boundary] =
395  (new_function_base(func_type, func_value).release());
396 
397  const std::string variable_set =
398  input("dirichlet_condition_variables", empty_string, i);
399 
400  for (std::size_t i=0; i != variable_set.size(); ++i)
401  {
402  if (variable_set[i] == '1')
403  dirichlet_condition_variables[func_boundary].push_back(i);
404  else if (variable_set[i] != '0')
405  {
406  libMesh::out << "Unable to understand Dirichlet variable set"
407  << variable_set << std::endl;
408  libmesh_error();
409  }
410  }
411  }
412 
413  GETPOT_REGISTER(neumann_condition_types);
414  GETPOT_REGISTER(neumann_condition_values);
415  GETPOT_REGISTER(neumann_condition_boundaries);
416  GETPOT_REGISTER(neumann_condition_variables);
417 
418  const unsigned int n_neumann_conditions=
419  input.vector_variable_size("neumann_condition_types");
420 
421  if (n_neumann_conditions !=
422  input.vector_variable_size("neumann_condition_values"))
423  {
424  libMesh::out << "Error: " << n_neumann_conditions
425  << " Neumann condition types does not match "
426  << input.vector_variable_size("neumann_condition_values")
427  << " Neumann condition values." << std::endl;
428 
429  libmesh_error();
430  }
431 
432  if (n_neumann_conditions !=
433  input.vector_variable_size("neumann_condition_boundaries"))
434  {
435  libMesh::out << "Error: " << n_neumann_conditions
436  << " Neumann condition types does not match "
437  << input.vector_variable_size("neumann_condition_boundaries")
438  << " Neumann condition boundaries." << std::endl;
439 
440  libmesh_error();
441  }
442 
443  if (n_neumann_conditions !=
444  input.vector_variable_size("neumann_condition_variables"))
445  {
446  libMesh::out << "Error: " << n_neumann_conditions
447  << " Neumann condition types does not match "
448  << input.vector_variable_size("neumann_condition_variables")
449  << " Neumann condition variables sets." << std::endl;
450 
451  libmesh_error();
452  }
453 
454  for (unsigned int i=0; i != n_neumann_conditions; ++i)
455  {
456  const std::string func_type =
457  input("neumann_condition_types", zero_string, i);
458 
459  const std::string func_value =
460  input("neumann_condition_values", empty_string, i);
461 
462  const boundary_id_type func_boundary =
463  input("neumann_condition_boundaries", boundary_id_type(0), i);
464 
465  neumann_conditions[func_boundary] =
466  (new_function_base(func_type, func_value).release());
467 
468  const std::string variable_set =
469  input("neumann_condition_variables", empty_string, i);
470 
471  for (std::size_t i=0; i != variable_set.size(); ++i)
472  {
473  if (variable_set[i] == '1')
474  neumann_condition_variables[func_boundary].push_back(i);
475  else if (variable_set[i] != '0')
476  {
477  libMesh::out << "Unable to understand Neumann variable set"
478  << variable_set << std::endl;
479  libmesh_error();
480  }
481  }
482  }
483 
484  GETPOT_REGISTER(initial_condition_types);
485  GETPOT_REGISTER(initial_condition_values);
486  GETPOT_REGISTER(initial_condition_subdomains);
487 
488  const unsigned int n_initial_conditions=
489  input.vector_variable_size("initial_condition_types");
490 
491  if (n_initial_conditions !=
492  input.vector_variable_size("initial_condition_values"))
493  {
494  libMesh::out << "Error: " << n_initial_conditions
495  << " initial condition types does not match "
496  << input.vector_variable_size("initial_condition_values")
497  << " initial condition values." << std::endl;
498 
499  libmesh_error();
500  }
501 
502  if (n_initial_conditions !=
503  input.vector_variable_size("initial_condition_subdomains"))
504  {
505  libMesh::out << "Error: " << n_initial_conditions
506  << " initial condition types does not match "
507  << input.vector_variable_size("initial_condition_subdomains")
508  << " initial condition subdomains." << std::endl;
509 
510  libmesh_error();
511  }
512 
513  for (unsigned int i=0; i != n_initial_conditions; ++i)
514  {
515  const std::string func_type =
516  input("initial_condition_types", zero_string, i);
517 
518  const std::string func_value =
519  input("initial_condition_values", empty_string, i);
520 
521  const subdomain_id_type func_subdomain =
522  input("initial_condition_subdomains", subdomain_id_type(0), i);
523 
524  initial_conditions[func_subdomain] =
525  (new_function_base(func_type, func_value).release());
526  }
527 
528  GETPOT_REGISTER(other_interior_function_types);
529  GETPOT_REGISTER(other_interior_function_values);
530  GETPOT_REGISTER(other_interior_function_subdomains);
531  GETPOT_REGISTER(other_interior_function_ids);
532 
533  const unsigned int n_other_interior_functions =
534  input.vector_variable_size("other_interior_function_types");
535 
536  if (n_other_interior_functions !=
537  input.vector_variable_size("other_interior_function_values"))
538  {
539  libMesh::out << "Error: " << n_other_interior_functions
540  << " other interior function types does not match "
541  << input.vector_variable_size("other_interior_function_values")
542  << " other interior function values." << std::endl;
543 
544  libmesh_error();
545  }
546 
547  if (n_other_interior_functions !=
548  input.vector_variable_size("other_interior_function_subdomains"))
549  {
550  libMesh::out << "Error: " << n_other_interior_functions
551  << " other interior function types does not match "
552  << input.vector_variable_size("other_interior_function_subdomains")
553  << " other interior function subdomains." << std::endl;
554 
555  libmesh_error();
556  }
557 
558  if (n_other_interior_functions !=
559  input.vector_variable_size("other_interior_function_ids"))
560  {
561  libMesh::out << "Error: " << n_other_interior_functions
562  << " other interior function types does not match "
563  << input.vector_variable_size("other_interior_function_ids")
564  << " other interior function ids." << std::endl;
565 
566  libmesh_error();
567  }
568 
569  for (unsigned int i=0; i != n_other_interior_functions; ++i)
570  {
571  const std::string func_type =
572  input("other_interior_function_types", zero_string, i);
573 
574  const std::string func_value =
575  input("other_interior_function_values", empty_string, i);
576 
577  const subdomain_id_type func_subdomain =
578  input("other_interior_condition_subdomains", subdomain_id_type(0), i);
579 
580  const int func_id =
581  input("other_interior_condition_ids", int(0), i);
582 
583  other_interior_functions[func_id][func_subdomain] =
584  (new_function_base(func_type, func_value).release());
585  }
586 
587  GETPOT_REGISTER(other_boundary_function_types);
588  GETPOT_REGISTER(other_boundary_function_values);
589  GETPOT_REGISTER(other_boundary_function_boundaries);
590  GETPOT_REGISTER(other_boundary_function_ids);
591 
592  const unsigned int n_other_boundary_functions =
593  input.vector_variable_size("other_boundary_function_types");
594 
595  if (n_other_boundary_functions !=
596  input.vector_variable_size("other_boundary_function_values"))
597  {
598  libMesh::out << "Error: " << n_other_boundary_functions
599  << " other boundary function types does not match "
600  << input.vector_variable_size("other_boundary_function_values")
601  << " other boundary function values." << std::endl;
602 
603  libmesh_error();
604  }
605 
606  if (n_other_boundary_functions !=
607  input.vector_variable_size("other_boundary_function_boundaries"))
608  {
609  libMesh::out << "Error: " << n_other_boundary_functions
610  << " other boundary function types does not match "
611  << input.vector_variable_size("other_boundary_function_boundaries")
612  << " other boundary function boundaries." << std::endl;
613 
614  libmesh_error();
615  }
616 
617  if (n_other_boundary_functions !=
618  input.vector_variable_size("other_boundary_function_ids"))
619  {
620  libMesh::out << "Error: " << n_other_boundary_functions
621  << " other boundary function types does not match "
622  << input.vector_variable_size("other_boundary_function_ids")
623  << " other boundary function ids." << std::endl;
624 
625  libmesh_error();
626  }
627 
628  for (unsigned int i=0; i != n_other_boundary_functions; ++i)
629  {
630  const std::string func_type =
631  input("other_boundary_function_types", zero_string, i);
632 
633  const std::string func_value =
634  input("other_boundary_function_values", empty_string, i);
635 
636  const boundary_id_type func_boundary =
637  input("other_boundary_function_boundaries", boundary_id_type(0), i);
638 
639  const int func_id =
640  input("other_boundary_function_ids", int(0), i);
641 
642  other_boundary_functions[func_id][func_boundary] =
643  (new_function_base(func_type, func_value).release());
644  }
645 
646  GETPOT_INPUT(run_simulation);
647  GETPOT_INPUT(run_postprocess);
648 
649 
650  GETPOT_REGISTER(fe_family);
651  const unsigned int n_fe_family =
652  std::max(1u, input.vector_variable_size("fe_family"));
653  fe_family.resize(n_fe_family, "LAGRANGE");
654  for (unsigned int i=0; i != n_fe_family; ++i)
655  fe_family[i] = input("fe_family", fe_family[i].c_str(), i);
656  GETPOT_REGISTER(fe_order);
657  const unsigned int n_fe_order =
658  input.vector_variable_size("fe_order");
659  fe_order.resize(n_fe_order, 1);
660  for (unsigned int i=0; i != n_fe_order; ++i)
661  fe_order[i] = input("fe_order", (int)fe_order[i], i);
662  GETPOT_INPUT(extra_quadrature_order);
663 
664 
665  GETPOT_INPUT(analytic_jacobians);
666  GETPOT_INPUT(verify_analytic_jacobians);
667  GETPOT_INPUT(numerical_jacobian_h);
668  GETPOT_INPUT(print_solution_norms);
669  GETPOT_INPUT(print_solutions);
670  GETPOT_INPUT(print_residual_norms);
671  GETPOT_INPUT(print_residuals);
672  GETPOT_INPUT(print_jacobian_norms);
673  GETPOT_INPUT(print_jacobians);
674  GETPOT_INPUT(print_element_solutions);
675  GETPOT_INPUT(print_element_residuals);
676  GETPOT_INPUT(print_element_jacobians);
677 
678 
679  GETPOT_INPUT(use_petsc_snes);
680  GETPOT_INPUT(time_solver_quiet);
681  GETPOT_INPUT(solver_quiet);
682  GETPOT_INPUT(solver_verbose);
683  GETPOT_INPUT(reuse_preconditioner);
684  GETPOT_INPUT(require_residual_reduction);
685  GETPOT_INPUT(min_step_length);
686  GETPOT_INT_INPUT(max_linear_iterations);
687  GETPOT_INT_INPUT(max_nonlinear_iterations);
688  GETPOT_INPUT(relative_step_tolerance);
689  GETPOT_INPUT(relative_residual_tolerance);
690  GETPOT_INPUT(absolute_residual_tolerance);
691  GETPOT_INPUT(initial_linear_tolerance);
692  GETPOT_INPUT(minimum_linear_tolerance);
693  GETPOT_INPUT(linear_tolerance_multiplier);
694 
695 
696  GETPOT_INT_INPUT(initial_sobolev_order);
697  GETPOT_INT_INPUT(initial_extra_quadrature);
698  GETPOT_INPUT(refine_uniformly);
699  GETPOT_INPUT(indicator_type);
700  GETPOT_INPUT(patch_reuse);
701  GETPOT_INT_INPUT(sobolev_order);
702 
703  GETPOT_INPUT(system_config_file);
704 
705  std::vector<std::string> bad_variables =
706  input.unidentified_arguments(variable_names);
707 
708  if (this->comm().rank() == 0 && !bad_variables.empty())
709  {
710  libMesh::err << "ERROR: Unrecognized variables:" << std::endl;
711  for (std::size_t i = 0; i != bad_variables.size(); ++i)
712  libMesh::err << bad_variables[i] << std::endl;
713  libMesh::err << "Not found among recognized variables:" << std::endl;
714  for (std::size_t i = 0; i != variable_names.size(); ++i)
715  libMesh::err << variable_names[i] << std::endl;
716  libmesh_error();
717  }
718 }
std::string name(const ElemQuality q)
This function returns a string containing some name for q.
Definition: elem_quality.C:39
unsigned int nelem_target
Definition: femparameters.h:56
OStreamProxy err
libMesh::Real timesolver_upper_tolerance
Definition: femparameters.h:38
libMesh::Real domain_ymin
Definition: femparameters.h:48
bool print_solution_norms
libMesh::Real deltat
Definition: femparameters.h:38
unsigned int initial_timestep
Definition: femparameters.h:34
bool print_element_residuals
libMesh::Real initial_linear_tolerance
unsigned int dimension
Definition: femparameters.h:45
unsigned int coarserefinements
Definition: femparameters.h:51
bool reuse_preconditioner
libMesh::Real timesolver_tolerance
Definition: femparameters.h:38
std::string domaintype
Definition: femparameters.h:46
libMesh::Real elementorder
Definition: femparameters.h:47
bool analytic_jacobians
VectorValue< Real > RealVectorValue
Useful typedefs to allow transparent switching between Real and Complex data types.
TestClass subdomain_id_type
Based on the 4-byte comment warning above, this probably doesn&#39;t work with exodusII at all...
Definition: id_types.h:43
libMesh::Real domain_edge_length
Definition: femparameters.h:49
std::string timesolver_core
Definition: femparameters.h:37
std::string system_config_file
bool require_residual_reduction
unsigned int coarsegridy
Definition: femparameters.h:50
libMesh::Real domain_zmin
Definition: femparameters.h:48
bool print_residual_norms
libMesh::Real timesolver_maxgrowth
Definition: femparameters.h:38
std::map< libMesh::boundary_id_type, libMesh::FunctionBase< libMesh::Number > * > neumann_conditions
Definition: femparameters.h:87
libMesh::Real relative_step_tolerance
std::string indicator_type
The definition of a periodic boundary.
libMesh::Real refine_fraction
Definition: femparameters.h:58
UniquePtr< FunctionBase< Number > > new_function_base(const std::string &func_type, const std::string &func_value)
libMesh::Real domain_edge_height
Definition: femparameters.h:49
long double max(long double a, double b)
unsigned int initial_extra_quadrature
std::vector< unsigned int > fe_order
std::string mesh_redistribute_func
Definition: femparameters.h:52
libMesh::Real coarsen_threshold
Definition: femparameters.h:58
bool write_gmv_error
Definition: femparameters.h:65
libMesh::Real end_time
Definition: femparameters.h:38
unsigned int max_linear_iterations
int8_t boundary_id_type
Definition: id_types.h:51
std::map< int, std::map< libMesh::subdomain_id_type, libMesh::FunctionBase< libMesh::Number > * > > other_interior_functions
Definition: femparameters.h:94
std::map< libMesh::subdomain_id_type, libMesh::FunctionBase< libMesh::Number > * > initial_conditions
Definition: femparameters.h:85
std::string domainfile
Definition: femparameters.h:46
libMesh::Real minimum_linear_tolerance
std::vector< libMesh::PeriodicBoundary > periodic_boundaries
Definition: femparameters.h:81
std::vector< std::string > fe_family
std::map< int, std::map< libMesh::boundary_id_type, libMesh::FunctionBase< libMesh::Number > * > > other_boundary_functions
Definition: femparameters.h:97
unsigned int coarsegridx
Definition: femparameters.h:50
libMesh::Real verify_analytic_jacobians
unsigned int write_interval
Definition: femparameters.h:64
unsigned int max_adaptivesteps
Definition: femparameters.h:59
std::map< libMesh::boundary_id_type, std::vector< unsigned int > > neumann_condition_variables
Definition: femparameters.h:90
int extra_quadrature_order
libMesh::Real global_tolerance
Definition: femparameters.h:57
std::string elementtype
Definition: femparameters.h:46
libMesh::Real absolute_residual_tolerance
bool write_exodus_error
Definition: femparameters.h:65
libMesh::Real relative_residual_tolerance
bool print_element_solutions
DIE A HORRIBLE DEATH HERE typedef LIBMESH_DEFAULT_SCALAR_TYPE Real
bool print_jacobian_norms
unsigned int extrarefinements
Definition: femparameters.h:51
const Parallel::Communicator & comm() const
OStreamProxy out
libMesh::Real min_step_length
unsigned int n_timesteps
Definition: femparameters.h:34
libMesh::Real timesolver_theta
Definition: femparameters.h:38
unsigned int coarsegridz
Definition: femparameters.h:50
bool print_element_jacobians
unsigned int max_nonlinear_iterations
std::map< libMesh::boundary_id_type, std::vector< unsigned int > > dirichlet_condition_variables
Definition: femparameters.h:90
unsigned int initial_adaptivesteps
Definition: femparameters.h:60
bool time_solver_quiet
unsigned int initial_sobolev_order
libMesh::Real numerical_jacobian_h
std::map< libMesh::boundary_id_type, libMesh::FunctionBase< libMesh::Number > * > dirichlet_conditions
Definition: femparameters.h:87
std::vector< libMesh::FEMNormType > timesolver_norm
Definition: femparameters.h:41
unsigned int sobolev_order
std::vector< std::string > system_types
Definition: femparameters.h:74
libMesh::Real linear_tolerance_multiplier
bool write_tecplot_error
Definition: femparameters.h:65
libMesh::Real domain_edge_width
Definition: femparameters.h:49
libMesh::Real coarsen_fraction
Definition: femparameters.h:58
libMesh::Real steadystate_tolerance
Definition: femparameters.h:38
libMesh::Real domain_xmin
Definition: femparameters.h:48
unsigned int deltat_reductions
Definition: femparameters.h:36
void FEMParameters::read ( GetPot &  input,
const std::vector< std::string > *  other_variable_names = libmesh_nullptr 
)

Member Data Documentation

const Parallel::Communicator& libMesh::ParallelObject::_communicator
protectedinherited
libMesh::Real FEMParameters::absolute_residual_tolerance

Definition at line 129 of file femparameters.h.

Referenced by new_function_base(), and read().

bool FEMParameters::analytic_jacobians

Definition at line 111 of file femparameters.h.

Referenced by new_function_base(), read(), and set_system_parameters().

unsigned int FEMParameters::coarsegridx

Definition at line 50 of file femparameters.h.

Referenced by new_function_base(), and read().

unsigned int FEMParameters::coarsegridy

Definition at line 50 of file femparameters.h.

Referenced by new_function_base(), and read().

unsigned int FEMParameters::coarsegridz

Definition at line 50 of file femparameters.h.

Referenced by new_function_base(), and read().

libMesh::Real FEMParameters::coarsen_fraction

Definition at line 58 of file femparameters.h.

Referenced by build_mesh_refinement(), new_function_base(), and read().

libMesh::Real FEMParameters::coarsen_threshold

Definition at line 58 of file femparameters.h.

Referenced by build_mesh_refinement(), new_function_base(), and read().

unsigned int FEMParameters::coarserefinements

Definition at line 51 of file femparameters.h.

Referenced by new_function_base(), and read().

libMesh::Real FEMParameters::deltat

Definition at line 38 of file femparameters.h.

Referenced by new_function_base(), read(), and set_system_parameters().

unsigned int FEMParameters::deltat_reductions

Definition at line 36 of file femparameters.h.

Referenced by new_function_base(), read(), and set_system_parameters().

unsigned int FEMParameters::dimension

Definition at line 45 of file femparameters.h.

Referenced by new_function_base(), and read().

std::map< libMesh::boundary_id_type, std::vector< unsigned int > > FEMParameters::dirichlet_condition_variables

Definition at line 90 of file femparameters.h.

Referenced by new_function_base(), read(), and set_system_parameters().

std::map< libMesh::boundary_id_type, libMesh::FunctionBase< libMesh::Number > * > FEMParameters::dirichlet_conditions

Definition at line 87 of file femparameters.h.

Referenced by new_function_base(), read(), set_system_parameters(), and ~FEMParameters().

libMesh::Real FEMParameters::domain_edge_height

Definition at line 49 of file femparameters.h.

Referenced by new_function_base(), and read().

libMesh::Real FEMParameters::domain_edge_length

Definition at line 49 of file femparameters.h.

Referenced by new_function_base(), and read().

libMesh::Real FEMParameters::domain_edge_width

Definition at line 49 of file femparameters.h.

Referenced by new_function_base(), and read().

libMesh::Real FEMParameters::domain_xmin

Definition at line 48 of file femparameters.h.

Referenced by new_function_base(), and read().

libMesh::Real FEMParameters::domain_ymin

Definition at line 48 of file femparameters.h.

Referenced by new_function_base(), and read().

libMesh::Real FEMParameters::domain_zmin

Definition at line 48 of file femparameters.h.

Referenced by new_function_base(), and read().

std::string FEMParameters::domainfile

Definition at line 46 of file femparameters.h.

Referenced by build_domain(), new_function_base(), and read().

std::string FEMParameters::domaintype

Definition at line 46 of file femparameters.h.

Referenced by new_function_base(), and read().

libMesh::Real FEMParameters::elementorder

Definition at line 47 of file femparameters.h.

Referenced by new_function_base(), and read().

std::string FEMParameters::elementtype

Definition at line 46 of file femparameters.h.

Referenced by new_function_base(), and read().

libMesh::Real FEMParameters::end_time

Definition at line 38 of file femparameters.h.

Referenced by new_function_base(), and read().

int FEMParameters::extra_quadrature_order

Definition at line 107 of file femparameters.h.

Referenced by new_function_base(), read(), and set_system_parameters().

unsigned int FEMParameters::extrarefinements

Definition at line 51 of file femparameters.h.

Referenced by new_function_base(), and read().

std::vector< std::string > FEMParameters::fe_family

Definition at line 105 of file femparameters.h.

Referenced by new_function_base(), read(), and set_system_parameters().

std::vector< unsigned int > FEMParameters::fe_order

Definition at line 106 of file femparameters.h.

Referenced by new_function_base(), read(), and set_system_parameters().

libMesh::Real FEMParameters::global_tolerance

Definition at line 57 of file femparameters.h.

Referenced by build_mesh_refinement(), new_function_base(), and read().

std::string FEMParameters::indicator_type

Definition at line 142 of file femparameters.h.

Referenced by build_error_estimator(), new_function_base(), and read().

unsigned int FEMParameters::initial_adaptivesteps

Definition at line 60 of file femparameters.h.

Referenced by new_function_base(), and read().

std::map< libMesh::subdomain_id_type, libMesh::FunctionBase< libMesh::Number > * > FEMParameters::initial_conditions

Definition at line 85 of file femparameters.h.

Referenced by new_function_base(), read(), and ~FEMParameters().

unsigned int FEMParameters::initial_extra_quadrature

Definition at line 137 of file femparameters.h.

Referenced by new_function_base(), and read().

libMesh::Real FEMParameters::initial_linear_tolerance

Definition at line 129 of file femparameters.h.

Referenced by new_function_base(), read(), and set_system_parameters().

unsigned int FEMParameters::initial_sobolev_order

Definition at line 136 of file femparameters.h.

Referenced by new_function_base(), and read().

unsigned int FEMParameters::initial_timestep

Definition at line 34 of file femparameters.h.

Referenced by new_function_base(), read(), and write_output_headers().

libMesh::Real FEMParameters::linear_tolerance_multiplier

Definition at line 129 of file femparameters.h.

Referenced by new_function_base(), read(), and set_system_parameters().

unsigned int FEMParameters::max_adaptivesteps

Definition at line 59 of file femparameters.h.

Referenced by new_function_base(), and read().

unsigned int FEMParameters::max_linear_iterations

Definition at line 128 of file femparameters.h.

Referenced by new_function_base(), read(), and set_system_parameters().

unsigned int FEMParameters::max_nonlinear_iterations

Definition at line 128 of file femparameters.h.

Referenced by new_function_base(), read(), and set_system_parameters().

std::string FEMParameters::mesh_redistribute_func

Definition at line 52 of file femparameters.h.

Referenced by new_function_base(), and read().

libMesh::Real FEMParameters::min_step_length

Definition at line 127 of file femparameters.h.

Referenced by new_function_base(), read(), and set_system_parameters().

libMesh::Real FEMParameters::minimum_linear_tolerance

Definition at line 129 of file femparameters.h.

Referenced by new_function_base(), read(), and set_system_parameters().

unsigned int FEMParameters::n_timesteps

Definition at line 34 of file femparameters.h.

Referenced by new_function_base(), and read().

unsigned int FEMParameters::nelem_target

Definition at line 56 of file femparameters.h.

Referenced by build_mesh_refinement(), new_function_base(), and read().

std::map< libMesh::boundary_id_type, std::vector< unsigned int > > FEMParameters::neumann_condition_variables

Definition at line 90 of file femparameters.h.

Referenced by new_function_base(), and read().

std::map< libMesh::boundary_id_type, libMesh::FunctionBase< libMesh::Number > * > FEMParameters::neumann_conditions

Definition at line 87 of file femparameters.h.

Referenced by new_function_base(), read(), and ~FEMParameters().

libMesh::Real FEMParameters::numerical_jacobian_h

Definition at line 113 of file femparameters.h.

Referenced by new_function_base(), read(), and set_system_parameters().

std::map< int, std::map< libMesh::boundary_id_type, libMesh::FunctionBase< libMesh::Number > * > > FEMParameters::other_boundary_functions

Definition at line 97 of file femparameters.h.

Referenced by new_function_base(), read(), and ~FEMParameters().

std::map< int, std::map< libMesh::subdomain_id_type, libMesh::FunctionBase< libMesh::Number > * > > FEMParameters::other_interior_functions

Definition at line 94 of file femparameters.h.

Referenced by new_function_base(), read(), and ~FEMParameters().

bool FEMParameters::output_bz2

Definition at line 65 of file femparameters.h.

Referenced by new_function_base(), numbered_filename(), and read().

bool FEMParameters::output_exodus

Definition at line 65 of file femparameters.h.

Referenced by new_function_base(), read(), and write_output().

bool FEMParameters::output_gmv

Definition at line 65 of file femparameters.h.

Referenced by new_function_base(), read(), and write_output().

bool FEMParameters::output_gz

Definition at line 65 of file femparameters.h.

Referenced by new_function_base(), numbered_filename(), and read().

bool FEMParameters::output_nemesis

Definition at line 65 of file femparameters.h.

Referenced by new_function_base(), and read().

bool FEMParameters::output_tecplot

Definition at line 65 of file femparameters.h.

Referenced by new_function_base(), read(), and write_output().

bool FEMParameters::output_xda

Definition at line 65 of file femparameters.h.

Referenced by new_function_base(), read(), and write_output().

bool FEMParameters::output_xdr

Definition at line 65 of file femparameters.h.

Referenced by new_function_base(), read(), and write_output().

bool FEMParameters::patch_reuse

Definition at line 143 of file femparameters.h.

Referenced by build_error_estimator(), new_function_base(), and read().

std::vector< libMesh::PeriodicBoundary > FEMParameters::periodic_boundaries

Definition at line 81 of file femparameters.h.

Referenced by new_function_base(), and read().

bool FEMParameters::print_element_jacobians

Definition at line 115 of file femparameters.h.

Referenced by new_function_base(), read(), and set_system_parameters().

bool FEMParameters::print_element_residuals

Definition at line 115 of file femparameters.h.

Referenced by new_function_base(), read(), and set_system_parameters().

bool FEMParameters::print_element_solutions

Definition at line 115 of file femparameters.h.

Referenced by new_function_base(), and read().

bool FEMParameters::print_jacobian_norms

Definition at line 115 of file femparameters.h.

Referenced by new_function_base(), read(), and set_system_parameters().

bool FEMParameters::print_jacobians

Definition at line 115 of file femparameters.h.

Referenced by new_function_base(), read(), and set_system_parameters().

bool FEMParameters::print_residual_norms

Definition at line 115 of file femparameters.h.

Referenced by new_function_base(), read(), and set_system_parameters().

bool FEMParameters::print_residuals

Definition at line 115 of file femparameters.h.

Referenced by new_function_base(), read(), and set_system_parameters().

bool FEMParameters::print_solution_norms

Definition at line 115 of file femparameters.h.

Referenced by new_function_base(), read(), and set_system_parameters().

bool FEMParameters::print_solutions

Definition at line 115 of file femparameters.h.

Referenced by new_function_base(), read(), and set_system_parameters().

libMesh::Real FEMParameters::refine_fraction

Definition at line 58 of file femparameters.h.

Referenced by build_mesh_refinement(), new_function_base(), and read().

bool FEMParameters::refine_uniformly

Definition at line 141 of file femparameters.h.

Referenced by new_function_base(), and read().

libMesh::Real FEMParameters::relative_residual_tolerance

Definition at line 129 of file femparameters.h.

Referenced by new_function_base(), read(), and set_system_parameters().

libMesh::Real FEMParameters::relative_step_tolerance

Definition at line 129 of file femparameters.h.

Referenced by new_function_base(), read(), and set_system_parameters().

bool FEMParameters::require_residual_reduction

Definition at line 125 of file femparameters.h.

Referenced by new_function_base(), read(), and set_system_parameters().

bool FEMParameters::reuse_preconditioner

Definition at line 125 of file femparameters.h.

Referenced by new_function_base(), and read().

bool FEMParameters::run_postprocess

Definition at line 101 of file femparameters.h.

Referenced by new_function_base(), and read().

bool FEMParameters::run_simulation
unsigned int FEMParameters::sobolev_order

Definition at line 144 of file femparameters.h.

Referenced by new_function_base(), and read().

bool FEMParameters::solver_quiet

Definition at line 125 of file femparameters.h.

Referenced by new_function_base(), read(), and set_system_parameters().

bool FEMParameters::solver_verbose

Definition at line 125 of file femparameters.h.

Referenced by new_function_base(), read(), and set_system_parameters().

libMesh::Real FEMParameters::steadystate_tolerance
std::string FEMParameters::system_config_file

Definition at line 148 of file femparameters.h.

Referenced by new_function_base(), and read().

std::vector< std::string > FEMParameters::system_types

Definition at line 74 of file femparameters.h.

Referenced by new_function_base(), and read().

bool FEMParameters::time_solver_quiet

Definition at line 125 of file femparameters.h.

Referenced by new_function_base(), read(), and set_system_parameters().

std::string FEMParameters::timesolver_core

Definition at line 37 of file femparameters.h.

Referenced by new_function_base(), read(), and set_system_parameters().

libMesh::Real FEMParameters::timesolver_maxgrowth

Definition at line 38 of file femparameters.h.

Referenced by new_function_base(), and read().

std::vector< libMesh::FEMNormType > FEMParameters::timesolver_norm

Definition at line 41 of file femparameters.h.

Referenced by new_function_base(), and read().

libMesh::Real FEMParameters::timesolver_theta

Definition at line 38 of file femparameters.h.

Referenced by new_function_base(), read(), and set_system_parameters().

libMesh::Real FEMParameters::timesolver_tolerance
libMesh::Real FEMParameters::timesolver_upper_tolerance

Definition at line 38 of file femparameters.h.

Referenced by new_function_base(), and read().

bool FEMParameters::transient

Definition at line 35 of file femparameters.h.

Referenced by set_system_parameters().

bool FEMParameters::use_petsc_snes

Definition at line 124 of file femparameters.h.

Referenced by new_function_base(), read(), and set_system_parameters().

libMesh::Real FEMParameters::verify_analytic_jacobians

Definition at line 112 of file femparameters.h.

Referenced by new_function_base(), read(), and set_system_parameters().

bool FEMParameters::write_exodus_error

Definition at line 65 of file femparameters.h.

Referenced by new_function_base(), and read().

bool FEMParameters::write_gmv_error

Definition at line 65 of file femparameters.h.

Referenced by new_function_base(), and read().

unsigned int FEMParameters::write_interval

Definition at line 64 of file femparameters.h.

Referenced by new_function_base(), and read().

bool FEMParameters::write_tecplot_error

Definition at line 65 of file femparameters.h.

Referenced by new_function_base(), and read().


The documentation for this class was generated from the following files: