[P]arallel [Hi]gh-order [Li]brary for [P]DEs  Latest
Parallel High-Order Library for PDEs through hp-adaptive Discontinuous Galerkin methods
parameters_grid_refinement.h
1 #ifndef __PARAMETERS_GRID_REFINEMENT_H__
2 #define __PARAMETERS_GRID_REFINEMENT_H__
3 
4 #include <deal.II/base/parameter_handler.h>
5 #include "parameters/parameters.h"
6 
7 namespace PHiLiP {
8 
9 namespace Parameters {
10 
13 {
14 public:
16  unsigned int refinement_steps;
17 
18  // main set of parameters for deciding the method
19 
22  uniform, // all cells are refined
23  fixed_fraction, // picks fraction with largest indicators
24  continuous, // generates a new mesh based on a size field
25  };
28 
31  h, // element size only
32  p, // polynomial orders
33  hp, // mix of both
34  };
37 
39 
43 
46 
49 
51 
54 
57  jump_based, // based on face jumps with neighbouring cells
58  reconstruction_based, // based on p+1 derivative along tensor product chord lines
59  };
62 
65  error_based, // using the exact error for testing
66  hessian_based, // feature_based
67  residual_based, // requires a fine grid projection
68  adjoint_based, // adjoint based
69  };
72 
74  enum OutputType{
75  gmsh_out, // output of pos and geo files for gmsh remeshing
76  msh_out, // output of .msh with data fields corresponding to output_data_type
77  };
80 
83  size_field, // size
84  frame_field, // vector pair
85  metric_field, // dim x dim matrix
86  };
89 
90  // need to add: isotropy indicators AND smoothness indicator
91 
92  // double p; // polynomial order when fixed, should take this from the grid
93  double norm_Lq;
94 
97 
98  double r_max;
99  double c_max;
100 
101  // new_complexity = (old_complexity * complexity_scale) + complexity_add
103  double complexity_add;
104 
106 
109  std::vector<double> complexity_vector;
110 
113 
115  static void declare_parameters(dealii::ParameterHandler &prm);
117  void parse_parameters(dealii::ParameterHandler &prm);
118 };
119 
120 } // Parameters namespace
121 
122 } // PHiLiP namespace
123 
124 #endif // __PARAMETERS_GRID_REFINEMENT_H__
RefinementType refinement_type
Selected type of refinement to be performed.
ErrorIndicator
Types of error indicator to be used in the grid refinement.
double r_max
refinement factor for log DWR size field
OutputType
File type/interface to be used for access to external tools.
Files for the baseline physics.
Definition: ADTypes.hpp:10
AnisoIndicator
Control of anisotropic splitting indicator to be used in fixed-fraction methods.
AnisoIndicator anisotropic_indicator
Selected anisotropic splitting indicator.
OutputDataType
Method of data storage in the output file for continuous methods.
RefinementMethod
Controls the underlying method of refinement.
double coarsening_fraction
coarsening fraction for fixed-fraction methods
ErrorIndicator error_indicator
Selected error indicator type.
bool anisotropic
Flag for performing anisotropic refinement.
void parse_parameters(dealii::ParameterHandler &prm)
Parses input file and sets the variables.
double anisotropic_threshold_ratio
threshold value in anisotropic indicator to enable anisotropic splitting
RefinementMethod refinement_method
Selected method of refinement.
double norm_Lq
Lq norm exponent selection.
unsigned int refinement_steps
Number of refinement steps to be performed.
double complexity_add
additive constant to complexity between grid refinement iterations
RefinementType
Controls the type of refinement to be performed.
bool exit_after_refine
Flag to exit after call to refinement.
OutputDataType output_data_type
Selected data storage type.
Parameters related to individual grid refinement run.
double anisotropic_ratio_max
Maximum anisotropic ratio for continuous size field targets.
double refinement_fraction
refinement fraction for fixed-fraction methods
static void declare_parameters(dealii::ParameterHandler &prm)
Declares the possible variables and sets the defaults.
double anisotropic_ratio_min
Minimum anisotropic ratio for continuous zie field targets.
std::vector< double > complexity_vector
Vector of complexities to be used for initial continuous grid refinement iterations.
double complexity_scale
multiplier to complexity between grid refinement iterations
OutputType output_type
Selected file output type.
double c_max
coarsening factor for log DWR size field