CArl
Code Arlequin / C++ implementation
carl_feti_setup_init_input_parser.h
Go to the documentation of this file.
1 /*
2  * carl_feti_setup_init_input_parser.h
3  *
4  * Created on: Feb 14, 2017
5  * Author: Thiago Milanetto Schlittler
6  */
7 
8 #ifndef CARL_FETI_SETUP_INIT_INPUT_PARSER_H_
9 #define CARL_FETI_SETUP_INIT_INPUT_PARSER_H_
10 
11 #include "carl_headers.h"
12 
13 namespace carl
14 {
17  // --- Parameters used directly by the CArl_FETI_setup_init program (some are also used by the other CArl_FETI programs)
18 
19  // Cluster
21 
22  // External solver commands
23  std::string ext_solver_BIG;
24  std::string ext_solver_micro;
25 
28 
29  std::string ext_solver_BIG_input;
30  std::string ext_solver_micro_input;
31 
32  // Path to "scratch" folder
33  std::string scratch_folder_path;
34  std::string script_filename;
35 
36  // Path to the "final" output folder
37  std::string output_folder;
38 
39 
40  // Rigid body mode options for the micro system
42  std::string force_micro_path;
43  std::string RB_vectors_base;
45 
46  // Coupling matrices path
47  std::string coupling_folder_path;
48 
49  // --- Parameters used to set up the other CArl_FETI input files
50 
51  // FETI / CG parameters
54  double CG_coupled_div;
57 
59 };
60 
97 void get_input_params(GetPot& field_parser,
98  feti_setup_init_params& input_params);
99 
100 };
101 #endif /* CARL_FETI_SETUP_INIT_INPUT_PARSER_H_ */
bool bUseRigidBodyModes
[RB] Use the rigid body modes for the micro system?
double CG_coupled_div
[CG] Residual divergence.
void get_input_params(GetPot &field_parser, feti_iterate_params &input_params)
Parser function for the coupled solver test programs.
ClusterSchedulerType scheduler
Cluster scheduler software type. Values: PBS, SLURM (code not implemented for the later yet)...
std::string ext_solver_BIG_input
Path to a file containing the input parameters of the external solve for system A.
std::string scratch_folder_path
Path to the folder which will be used to save the temporary files during the solve operation...
std::string script_filename
Path to the file used to generate the scripts.
ExtSolverType ext_solver_BIG_type
Type of solver used for the external system A.
std::string ext_solver_micro_input
Path to a file containing the input parameters of the external solve for system B.
carl::BaseCGPrecondType CG_precond_type
[CG] Type of preconditionner.
std::string coupling_folder_path
Path to the folder containing the coupling matrices.
std::string RB_vectors_base
[RB] Common path base for the micro system's rigid body mode vectors.
ClusterSchedulerType
Definition: common_enums.h:14
double CG_coupled_conv_abs
[CG] Absolute residual convergence.
Structure containing the parameters for the setup initialization of the FETI solver.
int nb_of_rb_vectors
[RB] Number of RB mode vectors.
int CG_coupled_conv_max
[CG] Maximum number of iterations.
std::string ext_solver_micro
Command used for the external solver for system B.
double CG_coupled_conv_rel
[CG] Relative residual convergence.
std::string force_micro_path
[RB] Path to the vector containing the external forces for the system B.
std::string ext_solver_BIG
Command used for the external solver for system A.
BaseCGPrecondType
Definition: common_enums.h:35
ExtSolverType
Definition: common_enums.h:22
ExtSolverType ext_solver_micro_type
Type of solver used for the external system B.
double CG_coupled_conv_corr
[CG] Relative rigid body mode convergence.
std::string output_folder
Path to the coupled solution folder.