... | ... | @@ -8,7 +8,7 @@ damageinfo.dat is read by DamageInfoParser.h |
|
|
|
|
|
| **command**| **description**|
|
|
|
|:------------------------------------------------|:-------------------------------|
|
|
|
| `initial_defect_width` = 0.2 | ratio of **lc**. Here, the initial defect will be **0.2** times the characteristic length **lc** of the material. |
|
|
|
| `initial_defect_width` = 0.2 | ratio of `lc`. Here, the initial defect will be **0.2** times the characteristic length `lc` of the material. |
|
|
|
| `restart_file` = ls_control_timestep_0730.bin | (no warranty on the restart procedure) |
|
|
|
|
|
|
|
... | ... | @@ -26,13 +26,13 @@ damageinfo.dat is read by DamageInfoParser.h |
|
|
| `residual_threshold` = 1.e-5 | maximum residual for Newton-Raphson solver. |
|
|
|
| `update_tangent_mat_freq` = 5 | ... |
|
|
|
| `number_of_thread` = 4 | ... |
|
|
|
| elastic_solver_verbose = 0 | **1** for verbose prints for MUMPS solver|
|
|
|
| velocity_solver_verbose = 0 | **1** for verbose prints for MUMPS solver|
|
|
|
| elastic_solver_condn = 0 | matrix conditionning for SuperLU solver |
|
|
|
| elastic_solver_mumps_mem = 5500 | ... for MUMPS solver |
|
|
|
| velocity_solver_mumps_mem = 5500 |... for MUMPS solver |
|
|
|
| elastic_solver_mumps_mem_relax= | ... for MUMPS solver |
|
|
|
| velocity_solver_mumps_mem_relax | ... for MUMPS solver |
|
|
|
| `elastic_solver_verbose` = 0 | **1** for verbose prints for MUMPS solver|
|
|
|
| `velocity_solver_verbose` = 0 | **1** for verbose prints for MUMPS solver|
|
|
|
| `elastic_solver_condn` = 0 | matrix conditionning for SuperLU solver |
|
|
|
| `elastic_solver_mumps_mem` = 5500 | ... for MUMPS solver |
|
|
|
| `velocity_solver_mumps_mem` = 5500 |... for MUMPS solver |
|
|
|
| `elastic_solver_mumps_mem_relax`= | ... for MUMPS solver |
|
|
|
| `velocity_solver_mumps_mem_relax` | ... for MUMPS solver |
|
|
|
|
|
|
|
|
|
|
... | ... | @@ -44,10 +44,10 @@ damageinfo.dat is read by DamageInfoParser.h |
|
|
|
|
|
| **command**| **description**|
|
|
|
|:------------------------------------------------|:-------------------------------|
|
|
|
| lc = 0.01 | Characteristic length `lc` of the material. |
|
|
|
| Yc = 100 | Characteristic Energy Release Rate`Yc` of the material. Not used if `hardeningCZM` is equal to **1**. |
|
|
|
| YPCoef = 0. | Generally **0** (default).|
|
|
|
|2D_plane_condition = plane_strain | 2D assumption |
|
|
|
| `lc` = 0.01 | Characteristic length `lc` of the material. |
|
|
|
| `Yc` = 100 | Characteristic Energy Release Rate`Yc` of the material. Not used if `hardeningCZM` is equal to **1**. |
|
|
|
| `YPCoef` = 0. | Generally **0** (default).|
|
|
|
| `2D_plane_condition = plane_strain` | 2D assumption |
|
|
|
|
|
|
|
|
|
|
... | ... | @@ -61,11 +61,11 @@ DOI: 10.1186/s40323-015-0041-9 |
|
|
|
|
|
| **command**| **description**|
|
|
|
|:------------------------------------------------|:-------------------------------|
|
|
|
| hardeningCZM = 1 | **1**: use Cohesive Zone Model equivalence |
|
|
|
| CZM_wf = 7.80e-5 | *wf* maximun opening value (stress = 0). |
|
|
|
| CZM_w1 = 3.00e-5 | *w1* intersection of opening axis and the first slope. |
|
|
|
| CZM_sigmak = 1.00e6 | stress at point where the slope changes. |
|
|
|
| CZM_sigmac = 3.00e6 | stress where the opening starts (opening = 0) |
|
|
|
| `hardeningCZM` = 1 | **1**: use Cohesive Zone Model equivalence |
|
|
|
| `CZM_wf` = 7.80e-5 | *wf* maximun opening value (stress = 0). |
|
|
|
| `CZM_w1` = 3.00e-5 | *w1* intersection of opening axis and the first slope. |
|
|
|
| `CZM_sigmak` = 1.00e6 | stress at point where the slope changes. |
|
|
|
| `CZM_sigmac` = 3.00e6 | stress where the opening starts (opening = 0) |
|
|
|
|
|
|
|
|
|
|
... | ... | @@ -74,10 +74,10 @@ DOI: 10.1186/s40323-015-0041-9 |
|
|
|
|
|
| **command**| **description**|
|
|
|
|:------------------------------------------------|:-------------------------------|
|
|
|
| polynomial_order = 2 | **2** (but, level set order is 1) |
|
|
|
| space_type = 1 | ... |
|
|
|
| use_enrichment = 5 | **5** to use Heavyside function enrichment of the crack, else **3** |
|
|
|
| update_displacement_field = 0 | **0** means that the displacement field is unknown every iteration. **1** the displacement field is initiated with the previous displacement field in the Newton-Raphson solver (may reduice the N-R process in some case, but is more time consuming ) |
|
|
|
| `polynomial_order` = 2 | **2** (but, level set order is 1) |
|
|
|
| `space_type` = 1 | ... |
|
|
|
| `use_enrichment` = 5 | **5** to use Heavyside function enrichment of the crack, else **3** |
|
|
|
| `update_displacement_field` = 0 | **0** means that the displacement field is unknown every iteration. **1** the displacement field is initiated with the previous displacement field in the Newton-Raphson solver (may reduice the N-R process in some case, but is more time consuming ) |
|
|
|
|
|
|
|
|
|
|
... | ... | @@ -87,7 +87,7 @@ DOI: 10.1186/s40323-015-0041-9 |
|
|
|
|
|
| **command**| **description**|
|
|
|
|:------------------------------------------------|:-------------------------------|
|
|
|
| tls_geom_interface = 2 | **2** for Double Cut to use with `use_enrichment` equal to **5** or **0** , **0** for Simple Cut to use with `use_enrichment` equal to **3** or **0** (**1** for experimental double cut implemented by Nicolas Chevaugeon for 2D problems). |
|
|
|
| `tls_geom_interface` = 2 | **2** for Double Cut to use with `use_enrichment` equal to **5** or **0** , **0** for Simple Cut to use with `use_enrichment` equal to **3** or **0** (**1** for experimental double cut implemented by Nicolas Chevaugeon for 2D problems). |
|
|
|
|
|
|
|
|
|
|
... | ... | @@ -102,11 +102,11 @@ damage front (level set) displacement control |
|
|
|
|
|
| **command**| **description**|
|
|
|
|:------------------------------------------------|:-------------------------------|
|
|
|
| front_advance_algo = 3 | generally **3**, except for Cohesive Zone Model equivalence where it is **4**. |
|
|
|
| k_max = 100. | maximum value of `kmax`. |
|
|
|
| power_law_coef = 100. | initial value of `kmax`, which may evolve during the TLS process but will be limited by `k_max`(above). Small value induices a global expansion of the damage zone (level set displacment), big value induices propagation arround th process zone (crack tip). Must be big compared to `lc`. See **A level set based model for damage growth: The thick level set approach**, N. Moës, C. Stolz, P.-E. Bernard, N. Chevaugeon, **International Journal For Numerical Methods in Engineering**, 86,pp 358–380, 2011 |
|
|
|
| CFLfactor = 0.25 | the maximum displacement of the damage level set is set to **0.25** times the size of the element on which the displacement is maximum. The value must be between **0.25** and **0.6**.|
|
|
|
| Yx_mean_algo = 0 | method to compute <Y> (average of Y). Default value is **0**.|
|
|
|
| `front_advance_algo` = 3 | generally **3**, except for Cohesive Zone Model equivalence where it is **4**. |
|
|
|
| `k_max` = 100. | maximum value of `kmax`. |
|
|
|
| `power_law_coef` = 100. | initial value of `kmax`, which may evolve during the TLS process but will be limited by `k_max`(above). Small value induices a global expansion of the damage zone (level set displacment), big value induices propagation arround th process zone (crack tip). Must be big compared to `lc`. See **A level set based model for damage growth: The thick level set approach**, N. Moës, C. Stolz, P.-E. Bernard, N. Chevaugeon, **International Journal For Numerical Methods in Engineering**, 86,pp 358–380, 2011 |
|
|
|
| `CFLfactor` = 0.25 | the maximum displacement of the damage level set is set to **0.25** times the size of the element on which the displacement is maximum. The value must be between **0.25** and **0.6**.|
|
|
|
| `Yx_mean_algo` = 0 | method to compute <Y> (average of Y). Default value is **0**.|
|
|
|
|
|
|
|
|
|
|
... | ... | @@ -115,10 +115,10 @@ damage front (level set) displacement control |
|
|
|
|
|
| **command**| **description**|
|
|
|
|:------------------------------------------------|:-------------------------------|
|
|
|
| damage_shape = Poly3 | the shape of the function Phi(d). Generally `Poly3 ` except for Cohesive Zone Model equivalence where it is `Poly2revert`.|
|
|
|
| hcoef = 0. | coefficient before `alpha_i` variables of the asymmetric traction/compression behavior of the material : **0** means that asymmetric is taken into account, **1** means that the material is symmetric (standard elasticity). Generally **0** or **1** but can be fixed numerically in [0,1]. |
|
|
|
| penalty_coef = 1. | involved in the computation of the field averaging (see Eq.9.a in the paper of A. Salzman 2016). |
|
|
|
| radius_factor = .2 | the initial radius of level set will be set to 0.2 times `lc`. |
|
|
|
| `damage_shape` = `Poly3` | the shape of the function Phi(d). Generally `Poly3 ` except for Cohesive Zone Model equivalence where it is `Poly2revert`.|
|
|
|
| `hcoef` = 0. | coefficient before `alpha_i` variables of the asymmetric traction/compression behavior of the material : **0** means that asymmetric is taken into account, **1** means that the material is symmetric (standard elasticity). Generally **0** or **1** but can be fixed numerically in [0,1]. |
|
|
|
| `penalty_coef` = 1. | involved in the computation of the field averaging (see Eq.9.a in the paper of A. Salzman 2016). |
|
|
|
| `radius_factor` = .2 | the initial radius of level set will be set to 0.2 times `lc`. |
|
|
|
|
|
|
|
|
|
|
... | ... | @@ -130,22 +130,22 @@ Only used withDamageTestContext <DamageTestOctree> template parameter. |
|
|
|
|
|
| **command**| **description**|
|
|
|
|:------------------------------------------------|:-------------------------------|
|
|
|
| band_width_octree = 1.5 | ratio of `lc`. Distance arround the damage level set where the mesh is fine. |
|
|
|
| band_width_geo = 1. | default value is **1** |
|
|
|
| band_width_fr = 0.25 | ratio of `lc`. Define mesh refinement where boundary conditions are applied. |
|
|
|
| min_recursion_level = 1 | octree level where mesh is coarse. |
|
|
|
| octree_recursion_level = 6 | octree level where mesh is fine. |
|
|
|
| octree_inter_level = 3 | octree level for transition mesh. |
|
|
|
| `band_width_octree` = 1.5 | ratio of `lc`. Distance arround the damage level set where the mesh is fine. |
|
|
|
| `band_width_geo` = 1. | default value is **1** |
|
|
|
| `band_width_fr` = 0.25 | ratio of `lc`. Define mesh refinement where boundary conditions are applied. |
|
|
|
| `min_recursion_level` = 1 | octree level where mesh is coarse. |
|
|
|
| `octree_recursion_level` = 6 | octree level where mesh is fine. |
|
|
|
| `octree_inter_level` = 3 | octree level for transition mesh. |
|
|
|
|
|
|
|
|
|
## search for initiation control:
|
|
|
|
|
|
| **command**| **description**|
|
|
|
|:------------------------------------------------|:-------------------------------|
|
|
|
| search_for_initiations = -10000 | when smaller than **0**, initation zone is automatically computed at the beginning of the job. When greater than **0** the initiation zone is evaluated every `search_for_initiations` iterations. |
|
|
|
| start_with_search_for_initiations = 1 | **1**: start the job with a virgin part and `search_for_initiations` must be less than **0**. **0**: the initiation zone is defined by the level set given in the main file. |
|
|
|
| sphere_radius_search_for_initiations = 0.03 | ratio of `lc` for level set initiation. |
|
|
|
| search_at_adapt = 1 | initation zone is automatically computed every time that the mesh is refined ( only works with octree at now) |
|
|
|
| `search_for_initiations` = -10000 | when smaller than **0**, initation zone is automatically computed at the beginning of the job. When greater than **0** the initiation zone is evaluated every `search_for_initiations` iterations. |
|
|
|
| `start_with_search_for_initiations` = 1 | **1**: start the job with a virgin part and `search_for_initiations` must be less than **0**. **0**: the initiation zone is defined by the level set given in the main file. |
|
|
|
| `sphere_radius_search_for_initiations` = 0.03 | ratio of `lc` for level set initiation. |
|
|
|
| `search_at_adapt` = 1 | initation zone is automatically computed every time that the mesh is refined ( only works with octree at now) |
|
|
|
|
|
|
|
|
|
|
... | ... | @@ -154,14 +154,14 @@ Only used withDamageTestContext <DamageTestOctree> template parameter. |
|
|
|
|
|
| **command**| **description**|
|
|
|
|:------------------------------------------------|:-------------------------------|
|
|
|
| full_elastic_out = 0 | **0**: export mesh without the full-damaged zone (**d=1**). **1**: the zone where **d=1** is meshed for output. |
|
|
|
| load_factor_out = 1 | **1**: fields are ouput by taken into account the load factor. **0** fields are output for the load given in the **main.dat** file |
|
|
|
| output_name = output | screen output will be output in the file **output.txt** |
|
|
|
| export_manager = { | Use to export fields declared by `MyExport(...)` commands in the c++ files |
|
|
|
| `full_elastic_out` = 0 | **0**: export mesh without the full-damaged zone (**d=1**). **1**: the zone where **d=1** is meshed for output. |
|
|
|
| `load_factor_out` = 1 | **1**: fields are ouput by taken into account the load factor. **0** fields are output for the load given in the **main.dat** file |
|
|
|
| `output_name` = output | screen output will be output in the file **output.txt** |
|
|
|
| `export_manager` = { | Use to export fields declared by `MyExport(...)` commands in the c++ files |
|
|
|
| displacement 20 | `MyExport("displacement",...)` will be execute every **20** iterations. Synthax **5+23** means every **5** itérations after iteration **23** is reached (then, the first is **25**) |
|
|
|
| strain 20 | `MyExport("strain",...)` will be execute every **20** iterations |
|
|
|
| stress 20 | `MyExport("stress",...)` will be execute every **20** iterations |
|
|
|
| isoCrakDamageFront 1 | `MyExport("isoCrakDamageFront",...)` will be execute every **1** iteration |
|
|
|
| damage 5 } | `MyExport("damage",...)` will be execute every **5** iterations |
|
|
|
| debug_geom 1 | extra verbose prints for debug |
|
|
|
| *strain* 20 | `MyExport("*strain*",...)` will be execute every **20** iterations |
|
|
|
| *stress* 20 | `MyExport("*stress*",...)` will be execute every **20** iterations |
|
|
|
| *isoCrakDamageFront* 1 | `MyExport("*isoCrakDamageFront*",...)` will be execute every **1** iteration |
|
|
|
| *damage* 5 } | `MyExport("*damage*",...)` will be execute every **5** iterations |
|
|
|
| `debug_geom` 1 | extra verbose prints for debug |
|
|
|
|