micromechanical (C++)
|
Options for micromechanical models. More...
#include <options.hpp>
Public Attributes | |
bool | update_void_ratio_from_after_isotropic_loading_to_before = false |
whether to update the void ratio after the isotropic loading to the void ratio before the isotropic loading | |
bool | update_npv = false |
whether to update npv based on the coordination number and particle radius | |
bool | update_fabric_coefs = false |
whether to update fabric coefficients | |
bool | kinematic_hypothesis = false |
use the kinematic hypothesis | |
bool | separate_mean_deviatoric_stress_strain = false |
apply mean and deviatoric stress/strain separately | |
bool | best_fit_strain_averaging = true |
use the best-fit hypothesis for strain averaging | |
bool | precise_incremental_volumetric_strain = false |
use the precise volumetric strain to update void ratio | |
bool | increment_plastic_displacement = true |
increment plastic displacement to the total displacement | |
bool | use_isotropic_fabric_tensor_in_strain_averaging = true |
bool | use_isotropic_fabric_tensor_in_stress_localization = false |
Use isotropic fabric tensor in stress localization. | |
bool | use_plastic_strain_in_fabric_evolution = true |
Use plastic strain in fabric evolution. | |
bool | ignore_fabric_rotations_for_isotropic_loading = false |
ignore fabric rotations for isotropic loading | |
bool | ignore_fabric_evolution_for_isotropic_loading = false |
ignore fabric evolution for isotropic loading | |
bool | ignore_distractions = true |
ignore distractions in the calculation | |
bool | mixed_load_check_convergence = true |
bool | mixed_load_check_strain_convergence = true |
check convergence of mixed load control with maximum iterations | |
bool | mixed_load_check_absolute_convergence = false |
check absolute tolerance for the mixed load | |
T | mixed_load_absolute_tolerance = 1e-5 |
absolute tolerance for the mixed load | |
T | mixed_load_relative_tolerance = 1e-3 |
relative tolerance for the mixed load | |
int | mixed_load_max_iterations = 100 |
maximum number of iterations for the mixed load control algorithm | |
int | mixed_load_max_larger_steps = -1 |
maximum number of larger steps for the mixed load control algorithm | |
T | integration_loading_ratio = 1.0 |
bool | integration_substepping_relative_to_increment = false |
whether to use the macro-micro integration substepping relative to the increment of last step | |
T | integration_max_substepping_ratio = -1.0 |
maximum macro-micro integration substepping ratio | |
T | integration_min_substepping_ratio = -1.0 |
minimum macro-micro integration substepping ratio | |
bool | integration_check_convergence = true |
check convergence of integration with maximum iterations | |
bool | integration_check_absolute_convergence = false |
check absolute contact integration error | |
T | integration_absolute_tolerance = 1e-10 |
absolute tolerance for the unbalanced force | |
T | integration_relative_tolerance = 1e-3 |
relative tolerance for the unbalanced force | |
int | integration_max_iterations = 100 |
maximum number of iterations for the integration algorithm | |
bool | contact_check_convergence = true |
Whether to check the convergence. | |
T | contact_tolerance = 1e-10 |
Contact tolerance. | |
int | contact_max_iterations = 100 |
Maximum number of iterations. | |
T | contact_max_increment = 0.1 |
Maximum force ratio increment. | |
T | contact_min_normal_force = 1e-10 |
minimum normal force | |
bool | contact_friction_angle_combined = false |
Whether to use the combined friction angle. | |
T | contact_friction_angle_weight_mises = 0.0 |
Weight for Von Mises criterion in the friction angle. | |
T | contact_friction_angle_weight_tresca = 0.0 |
Weight for Tresca criterion in the friction angle. | |
T | contact_friction_angle_weight_mohr_coulomb = 1.0 |
Weight for Mohr-Coulomb criterion in the friction angle. | |
T | contact_friction_angle_weight_smp = 0.0 |
Weight for SMP criterion in the friction angle. | |
bool | contact_check_plastic_multiplier = true |
Whether to check the sign of plastic multiplier. | |
T | contact_plastic_method_multiplier = 1.0 |
bool | contact_ensure_force_state_on_yield_surface = false |
Whether to ensure the force state is on the yield surface. | |
bool | contact_sanisand_constant_hardening_parameter = true |
Whether to use constant hardening parameter h for the SANISAND contact law. | |
bool | contact_sanisand_maintain_yield_surface = false |
Whether to maintain the yield surface for the SANISAND contact law. | |
bool | contact_linear_critical_state_line = false |
Whether to use linear critical state line for OSIMSAND contact law. | |
int | disp_steps = -1 |
Print debug information every disp_steps steps. | |
bool | verbose = false |
Whether to print verbose information. | |
bool | cache = true |
Cache contact variables. | |
int | cache_precision = 15 |
Cache contact variables precision. | |
bool | debug = false |
debug flag | |
int | run_steps = -1 |
number of steps to run | |
int | run_mixed_load_steps = -1 |
number of mixed load steps to run | |
int | run_contact_integration_steps = -1 |
number of contact integration steps to run | |
Options for micromechanical models.
bool micromechanical::core::Options< T >::best_fit_strain_averaging = true |
use the best-fit hypothesis for strain averaging
bool micromechanical::core::Options< T >::cache = true |
Cache contact variables.
int micromechanical::core::Options< T >::cache_precision = 15 |
Cache contact variables precision.
bool micromechanical::core::Options< T >::contact_check_convergence = true |
Whether to check the convergence.
bool micromechanical::core::Options< T >::contact_check_plastic_multiplier = true |
Whether to check the sign of plastic multiplier.
bool micromechanical::core::Options< T >::contact_ensure_force_state_on_yield_surface = false |
Whether to ensure the force state is on the yield surface.
bool micromechanical::core::Options< T >::contact_friction_angle_combined = false |
Whether to use the combined friction angle.
T micromechanical::core::Options< T >::contact_friction_angle_weight_mises = 0.0 |
Weight for Von Mises criterion in the friction angle.
T micromechanical::core::Options< T >::contact_friction_angle_weight_mohr_coulomb = 1.0 |
Weight for Mohr-Coulomb criterion in the friction angle.
T micromechanical::core::Options< T >::contact_friction_angle_weight_smp = 0.0 |
Weight for SMP criterion in the friction angle.
T micromechanical::core::Options< T >::contact_friction_angle_weight_tresca = 0.0 |
Weight for Tresca criterion in the friction angle.
bool micromechanical::core::Options< T >::contact_linear_critical_state_line = false |
Whether to use linear critical state line for OSIMSAND contact law.
T micromechanical::core::Options< T >::contact_max_increment = 0.1 |
Maximum force ratio increment.
int micromechanical::core::Options< T >::contact_max_iterations = 100 |
Maximum number of iterations.
T micromechanical::core::Options< T >::contact_min_normal_force = 1e-10 |
minimum normal force
T micromechanical::core::Options< T >::contact_plastic_method_multiplier = 1.0 |
Multiplier for the contact plastic method
bool micromechanical::core::Options< T >::contact_sanisand_constant_hardening_parameter = true |
Whether to use constant hardening parameter h for the SANISAND contact law.
bool micromechanical::core::Options< T >::contact_sanisand_maintain_yield_surface = false |
Whether to maintain the yield surface for the SANISAND contact law.
T micromechanical::core::Options< T >::contact_tolerance = 1e-10 |
Contact tolerance.
bool micromechanical::core::Options< T >::debug = false |
debug flag
int micromechanical::core::Options< T >::disp_steps = -1 |
Print debug information every disp_steps steps.
bool micromechanical::core::Options< T >::ignore_distractions = true |
ignore distractions in the calculation
bool micromechanical::core::Options< T >::ignore_fabric_evolution_for_isotropic_loading = false |
ignore fabric evolution for isotropic loading
bool micromechanical::core::Options< T >::ignore_fabric_rotations_for_isotropic_loading = false |
ignore fabric rotations for isotropic loading
bool micromechanical::core::Options< T >::increment_plastic_displacement = true |
increment plastic displacement to the total displacement
T micromechanical::core::Options< T >::integration_absolute_tolerance = 1e-10 |
absolute tolerance for the unbalanced force
bool micromechanical::core::Options< T >::integration_check_absolute_convergence = false |
check absolute contact integration error
bool micromechanical::core::Options< T >::integration_check_convergence = true |
check convergence of integration with maximum iterations
T micromechanical::core::Options< T >::integration_loading_ratio = 1.0 |
macro-micro integration loading ratio
int micromechanical::core::Options< T >::integration_max_iterations = 100 |
maximum number of iterations for the integration algorithm
T micromechanical::core::Options< T >::integration_max_substepping_ratio = -1.0 |
maximum macro-micro integration substepping ratio
T micromechanical::core::Options< T >::integration_min_substepping_ratio = -1.0 |
minimum macro-micro integration substepping ratio
T micromechanical::core::Options< T >::integration_relative_tolerance = 1e-3 |
relative tolerance for the unbalanced force
bool micromechanical::core::Options< T >::integration_substepping_relative_to_increment = false |
whether to use the macro-micro integration substepping relative to the increment of last step
bool micromechanical::core::Options< T >::kinematic_hypothesis = false |
use the kinematic hypothesis
T micromechanical::core::Options< T >::mixed_load_absolute_tolerance = 1e-5 |
absolute tolerance for the mixed load
bool micromechanical::core::Options< T >::mixed_load_check_absolute_convergence = false |
check absolute tolerance for the mixed load
bool micromechanical::core::Options< T >::mixed_load_check_convergence = true |
bool micromechanical::core::Options< T >::mixed_load_check_strain_convergence = true |
check convergence of mixed load control with maximum iterations
check strain convergence of the mixed load control algorithm
int micromechanical::core::Options< T >::mixed_load_max_iterations = 100 |
maximum number of iterations for the mixed load control algorithm
int micromechanical::core::Options< T >::mixed_load_max_larger_steps = -1 |
maximum number of larger steps for the mixed load control algorithm
T micromechanical::core::Options< T >::mixed_load_relative_tolerance = 1e-3 |
relative tolerance for the mixed load
bool micromechanical::core::Options< T >::precise_incremental_volumetric_strain = false |
use the precise volumetric strain to update void ratio
int micromechanical::core::Options< T >::run_contact_integration_steps = -1 |
number of contact integration steps to run
int micromechanical::core::Options< T >::run_mixed_load_steps = -1 |
number of mixed load steps to run
int micromechanical::core::Options< T >::run_steps = -1 |
number of steps to run
bool micromechanical::core::Options< T >::separate_mean_deviatoric_stress_strain = false |
apply mean and deviatoric stress/strain separately
bool micromechanical::core::Options< T >::update_fabric_coefs = false |
whether to update fabric coefficients
bool micromechanical::core::Options< T >::update_npv = false |
whether to update npv based on the coordination number and particle radius
bool micromechanical::core::Options< T >::update_void_ratio_from_after_isotropic_loading_to_before = false |
whether to update the void ratio after the isotropic loading to the void ratio before the isotropic loading
bool micromechanical::core::Options< T >::use_isotropic_fabric_tensor_in_strain_averaging = true |
Use isotropic fabric tensor in strain averaging
bool micromechanical::core::Options< T >::use_isotropic_fabric_tensor_in_stress_localization = false |
Use isotropic fabric tensor in stress localization.
bool micromechanical::core::Options< T >::use_plastic_strain_in_fabric_evolution = true |
Use plastic strain in fabric evolution.
bool micromechanical::core::Options< T >::verbose = false |
Whether to print verbose information.