![]() |
v0.15.0 |
#include <MoFEM.hpp>#include <MatrixFunction.hpp>#include <IntegrationRules.hpp>#include <cstdlib>#include <phg-quadrule/quad.h>#include <HenckyOps.hpp>#include <PlasticOps.hpp>#include <PlasticNaturalBCs.hpp>#include <ThermoElasticOps.hpp>#include <FiniteThermalOps.hpp>#include <ThermoPlasticOps.hpp>#include <ThermalOps.hpp>#include <EdgeFlippingOps.hpp>#include <SolutionMapping.hpp>#include <ThermalConvection.hpp>#include <ThermalRadiation.hpp>Go to the source code of this file.
Classes | |
| struct | ElementsAndOps< 2 > |
| struct | ElementsAndOps< 3 > |
| struct | TSPrePostProc |
| Set of functions called by PETSc solver used to refine and update mesh. More... | |
| struct | ResizeCtx |
| struct | Example |
| [Example] More... | |
| struct | Example::ScaledTimeScale |
| struct | SetUpSchur |
| [Push operators to pipeline] More... | |
| struct | MyTsCtx |
| struct | SetUpSchurImpl |
Macros | |
| #define | EXECUTABLE_DIMENSION 3 |
Enumerations | |
| enum | ICType { IC_UNIFORM , IC_GAUSSIAN , IC_LINEAR } |
Variables | |
| constexpr int | SPACE_DIM |
| constexpr auto | size_symm = (SPACE_DIM * (SPACE_DIM + 1)) / 2 |
| constexpr bool | IS_LARGE_STRAINS |
| constexpr AssemblyType | AT |
| constexpr IntegrationType | IT |
| constexpr FieldSpace | CONTACT_SPACE = ElementsAndOps<SPACE_DIM>::CONTACT_SPACE |
| double | exp_C = -6.284 |
| double | exp_D = -1.024 |
| const bool | is_large_strains |
| PetscBool | set_timer = PETSC_FALSE |
| Set timer. | |
| PetscBool | do_eval_field = PETSC_FALSE |
| Evaluate field. | |
| char | restart_file [255] |
| PetscBool | restart_flg = PETSC_TRUE |
| double | restart_time = 0 |
| int | restart_step = 0 |
| PetscBool | is_distributed_mesh = PETSC_TRUE |
| double | scale = 1. |
| double | default_thermal_conductivity_scale = 1. |
| double | default_heat_capacity_scale = 1. |
| ScalerFunTwoArgs | thermal_conductivity_scaling |
| ScalerFunTwoArgs | heat_capacity_scaling |
| ScalerFunThreeArgs | inelastic_heat_fraction_scaling |
| double | young_modulus = 115000 |
| Young modulus. | |
| double | poisson_ratio = 0.31 |
| Poisson ratio. | |
| double | sigmaY = 936.2 |
| Yield stress. | |
| double | H = 584.3 |
| Hardening. | |
| double | visH = 0 |
| Viscous hardening. | |
| double | zeta = 5e-2 |
| regularisation parameter | |
| double | Qinf = 174.2 |
| Saturation yield stress. | |
| double | b_iso = 63.69 |
| Saturation exponent. | |
| double | C1_k = 0 |
| Kinematic hardening. | |
| double | cn0 = 1 |
| double | cn1 = 1 |
| double | default_ref_temp = 20.0 |
| const char *const | ICTypes [] |
| ICType | ic_type = IC_UNIFORM |
| double | init_temp = 20.0 |
| double | peak_temp = 1000.0 |
| double | width = 10.0 |
| Width of Gaussian distribution. | |
| double | default_coeff_expansion = 1e-5 |
| double | default_heat_conductivity |
| double | default_heat_capacity = 2.332 |
| double | omega_0 = 2e-3 |
| flow stress softening | |
| double | omega_h = 2e-3 |
| hardening softening | |
| double | inelastic_heat_fraction |
| fraction of plastic dissipation converted to heat | |
| double | temp_0 = 20 |
| reference temperature for thermal softening | |
| int | order = 2 |
| Order displacement. | |
| int | tau_order = order - 2 |
| Order of tau field. | |
| int | ep_order = order - 1 |
| Order of ep field. | |
| int | flux_order = order |
| Order of tau field. | |
| int | T_order = order - 1 |
| Order of ep field. | |
| int | geom_order = 2 |
| Order if fixed. | |
| int | atom_test = 0 |
| PetscBool | order_edge = PETSC_FALSE |
| PetscBool | order_face = PETSC_FALSE |
| PetscBool | order_volume = PETSC_FALSE |
| PetscBool | is_quasi_static = PETSC_TRUE |
| double | rho = 0.0 |
| double | alpha_damping = 0 |
| double | init_dt = 0.05 |
| double | min_dt = 1e-12 |
| double | qual_tol = 0 |
| auto | Gaussian_distribution |
| auto | linear_distribution |
| auto | uniform_distribution |
| auto | init_T |
| Initialisation function for temperature field. | |
| int | post_processing_counter = 0 |
| auto | save_range |
| static boost::weak_ptr< TSPrePostProc > | tsPrePostProc |
| static std::unordered_map< TS, ResizeCtx * > | ts_to_rctx |
| static std::unordered_map< TS, MyTsCtx * > | ts_to_ctx |
| Example * | thermoplastic_raw_ptr = nullptr |
| static char | help [] = "...\n\n" |
| [Solve] | |
| #define EXECUTABLE_DIMENSION 3 |
Definition at line 13 of file thermoplastic.cpp.
| using AssemblyDomainEleOp = FormsIntegrators<DomainEleOp>::Assembly<AT>::OpBase |
Definition at line 76 of file thermoplastic.cpp.
Definition at line 69 of file thermoplastic.cpp.
Definition at line 70 of file thermoplastic.cpp.
| using BoundaryLhsBCs = NaturalBC<BoundaryEleOp>::Assembly<AT>::BiLinearForm<IT> |
Definition at line 510 of file thermoplastic.cpp.
| using BoundaryNaturalBC = NaturalBC<BoundaryEleOp>::Assembly<AT>::LinearForm<IT> |
[Body and heat source]
[Natural boundary conditions]
Definition at line 525 of file thermoplastic.cpp.
| using BoundaryRhsBCs = NaturalBC<BoundaryEleOp>::Assembly<AT>::LinearForm<IT> |
Definition at line 507 of file thermoplastic.cpp.
| using DomainEle = ElementsAndOps<SPACE_DIM>::DomainEle |
Definition at line 66 of file thermoplastic.cpp.
Definition at line 67 of file thermoplastic.cpp.
Definition at line 68 of file thermoplastic.cpp.
| using DomainNaturalBCLhs = NaturalBC<DomainEleOp>::Assembly<AT>::BiLinearForm<IT> |
Definition at line 520 of file thermoplastic.cpp.
| using DomainNaturalBCRhs = NaturalBC<DomainEleOp>::Assembly<AT>::LinearForm<IT> |
[Body and heat source]
Definition at line 515 of file thermoplastic.cpp.
| using DomainRhsBCs = NaturalBC<DomainEleOp>::Assembly<AT>::LinearForm<IT> |
Definition at line 504 of file thermoplastic.cpp.
| using EntData = EntitiesFieldData::EntData |
Definition at line 65 of file thermoplastic.cpp.
| using OpBodyForce = DomainNaturalBCRhs::OpFlux<NaturalMeshsetType<BLOCKSET>, 1, SPACE_DIM> |
Definition at line 516 of file thermoplastic.cpp.
| using OpBoundaryLhsBCs = BoundaryLhsBCs::OpFlux<PlasticOps::BoundaryBCs, 1, SPACE_DIM> |
Definition at line 511 of file thermoplastic.cpp.
| using OpBoundaryRhsBCs = BoundaryRhsBCs::OpFlux<PlasticOps::BoundaryBCs, 1, SPACE_DIM> |
Definition at line 508 of file thermoplastic.cpp.
| using OpDomainRhsBCs = DomainRhsBCs::OpFlux<PlasticOps::DomainBCs, 1, SPACE_DIM> |
Definition at line 505 of file thermoplastic.cpp.
| using OpEssentialFluxLhs = EssentialBC<BoundaryEleOp>::Assembly< AT>::BiLinearForm<IT>::OpEssentialLhs<HeatFluxCubitBcData, 3, SPACE_DIM> |
Definition at line 535 of file thermoplastic.cpp.
| using OpEssentialFluxRhs = EssentialBC<BoundaryEleOp>::Assembly<AT>::LinearForm< IT>::OpEssentialRhs<HeatFluxCubitBcData, 3, SPACE_DIM> |
[Natural boundary conditions]
[Essential boundary conditions (Least square approach)]
Definition at line 533 of file thermoplastic.cpp.
| using OpForce = BoundaryNaturalBC::OpFlux<NaturalForceMeshsets, 1, SPACE_DIM> |
Definition at line 527 of file thermoplastic.cpp.
| using OpHeatSource = DomainNaturalBCRhs::OpFlux<NaturalMeshsetType<BLOCKSET>, 1, 1> |
Definition at line 518 of file thermoplastic.cpp.
| using OpSetTemperatureLhs = DomainNaturalBCLhs::OpFlux<SetTargetTemperature, 1, 1> |
Definition at line 541 of file thermoplastic.cpp.
| using OpSetTemperatureRhs = DomainNaturalBCRhs::OpFlux<SetTargetTemperature, 1, 1> |
[Essential boundary conditions (Least square approach)]
Definition at line 539 of file thermoplastic.cpp.
Definition at line 528 of file thermoplastic.cpp.
| using PostProcEle = PostProcBrokenMeshInMoab<DomainEle> |
Definition at line 71 of file thermoplastic.cpp.
| using ScalerFunThreeArgs = boost::function<double(const double, const double, const double)> |
Definition at line 79 of file thermoplastic.cpp.
| using ScalerFunTwoArgs = boost::function<double(const double, const double)> |
Definition at line 78 of file thermoplastic.cpp.
Definition at line 74 of file thermoplastic.cpp.
| using SideEle = ElementsAndOps<SPACE_DIM>::SideEle |
Definition at line 73 of file thermoplastic.cpp.
Definition at line 72 of file thermoplastic.cpp.
| enum ICType |
|
inline |
|
inline |
Definition at line 136 of file thermoplastic.cpp.
|
inline |
Definition at line 143 of file thermoplastic.cpp.
Definition at line 108 of file thermoplastic.cpp.
|
inline |
Kinematic hardening
Definition at line 161 of file thermoplastic.cpp.
|
inline |
Definition at line 175 of file thermoplastic.cpp.
| int main | ( | int | argc, |
| char * | argv[] | ||
| ) |
[Register MoFEM discrete manager in PETSc]
[Register MoFEM discrete manager in PETSc
[Create MoAB]
< mesh database
< mesh database interface
[Create MoAB]
[Create MoFEM]
< finite element database
< finite element database interface
[Create MoFEM]
[Load mesh]
[Load mesh]
[Example]
[Example]
Definition at line 5339 of file thermoplastic.cpp.
| PetscErrorCode MyTSResizeSetup | ( | TS | ts, |
| PetscInt | nstep, | ||
| PetscReal | time, | ||
| Vec | sol, | ||
| PetscBool * | resize, | ||
| void * | ctx | ||
| ) |
Definition at line 3858 of file thermoplastic.cpp.
| PetscErrorCode MyTSResizeTransfer | ( | TS | ts, |
| PetscInt | nv, | ||
| Vec | ts_vecsin[], | ||
| Vec | ts_vecsout[], | ||
| void * | ctx | ||
| ) |
Definition at line 3866 of file thermoplastic.cpp.
| auto postProcessHere | ( | MoFEM::Interface & | m_field, |
| SmartPetscObj< DM > & | dm, | ||
| std::string | output_name, | ||
| int & | counter = *(new int(0)) |
||
| ) |
Definition at line 331 of file thermoplastic.cpp.
| auto postProcessPETScHere | ( | MoFEM::Interface & | m_field, |
| SmartPetscObj< DM > & | dm, | ||
| Vec | sol, | ||
| std::string | output_name | ||
| ) |
Definition at line 413 of file thermoplastic.cpp.
| auto printOnAllCores | ( | MoFEM::Interface & | m_field, |
| const std::string & | out_put_string, | ||
| const auto & | out_put_quantity | ||
| ) |
Definition at line 483 of file thermoplastic.cpp.
Definition at line 99 of file thermoplastic.cpp.
| MoFEMErrorCode SNESIterationMonitor | ( | SNES | snes, |
| PetscInt | its, | ||
| PetscReal | norm, | ||
| void * | ctx | ||
| ) |
Definition at line 3850 of file thermoplastic.cpp.
Definition at line 115 of file thermoplastic.cpp.
| MoFEMErrorCode TSIterationPreStage | ( | TS | ts, |
| PetscReal | stagetime | ||
| ) |
Definition at line 3842 of file thermoplastic.cpp.
Definition at line 90 of file thermoplastic.cpp.
| double alpha_damping = 0 |
Definition at line 253 of file thermoplastic.cpp.
|
constexpr |
Definition at line 55 of file thermoplastic.cpp.
| int atom_test = 0 |
Definition at line 245 of file thermoplastic.cpp.
| double b_iso = 63.69 |
Saturation exponent.
Definition at line 210 of file thermoplastic.cpp.
| double C1_k = 0 |
Kinematic hardening.
Definition at line 211 of file thermoplastic.cpp.
| double cn0 = 1 |
Definition at line 213 of file thermoplastic.cpp.
| double cn1 = 1 |
Definition at line 214 of file thermoplastic.cpp.
|
constexpr |
Definition at line 63 of file thermoplastic.cpp.
| double default_coeff_expansion = 1e-5 |
Definition at line 225 of file thermoplastic.cpp.
| double default_heat_capacity = 2.332 |
Definition at line 229 of file thermoplastic.cpp.
| double default_heat_capacity_scale = 1. |
Definition at line 198 of file thermoplastic.cpp.
| double default_heat_conductivity |
Definition at line 226 of file thermoplastic.cpp.
| double default_ref_temp = 20.0 |
Definition at line 216 of file thermoplastic.cpp.
| double default_thermal_conductivity_scale = 1. |
Definition at line 197 of file thermoplastic.cpp.
| PetscBool do_eval_field = PETSC_FALSE |
Evaluate field.
Definition at line 189 of file thermoplastic.cpp.
| int ep_order = order - 1 |
Order of ep field.
Definition at line 240 of file thermoplastic.cpp.
| double exp_C = -6.284 |
Definition at line 112 of file thermoplastic.cpp.
| double exp_D = -1.024 |
Definition at line 113 of file thermoplastic.cpp.
| int flux_order = order |
| auto Gaussian_distribution |
Definition at line 258 of file thermoplastic.cpp.
| int geom_order = 2 |
| double H = 584.3 |
| ScalerFunTwoArgs heat_capacity_scaling |
Definition at line 200 of file thermoplastic.cpp.
|
static |
[Solve]
Definition at line 5337 of file thermoplastic.cpp.
| ICType ic_type = IC_UNIFORM |
Definition at line 221 of file thermoplastic.cpp.
| const char* const ICTypes[] |
Definition at line 218 of file thermoplastic.cpp.
| double inelastic_heat_fraction |
fraction of plastic dissipation converted to heat
Definition at line 234 of file thermoplastic.cpp.
| ScalerFunThreeArgs inelastic_heat_fraction_scaling |
Definition at line 201 of file thermoplastic.cpp.
| double init_dt = 0.05 |
Definition at line 254 of file thermoplastic.cpp.
| auto init_T |
Initialisation function for temperature field.
Definition at line 278 of file thermoplastic.cpp.
| double init_temp = 20.0 |
Definition at line 222 of file thermoplastic.cpp.
| PetscBool is_distributed_mesh = PETSC_TRUE |
Definition at line 194 of file thermoplastic.cpp.
|
constexpr |
Definition at line 52 of file thermoplastic.cpp.
| const bool is_large_strains |
Definition at line 186 of file thermoplastic.cpp.
| PetscBool is_quasi_static = PETSC_TRUE |
Definition at line 251 of file thermoplastic.cpp.
|
constexpr |
Definition at line 58 of file thermoplastic.cpp.
| auto linear_distribution |
Definition at line 267 of file thermoplastic.cpp.
| double min_dt = 1e-12 |
Definition at line 255 of file thermoplastic.cpp.
| double omega_0 = 2e-3 |
| double omega_h = 2e-3 |
| int order = 2 |
Order displacement.
Definition at line 238 of file thermoplastic.cpp.
| PetscBool order_edge = PETSC_FALSE |
Definition at line 247 of file thermoplastic.cpp.
| PetscBool order_face = PETSC_FALSE |
Definition at line 248 of file thermoplastic.cpp.
| PetscBool order_volume = PETSC_FALSE |
Definition at line 249 of file thermoplastic.cpp.
| double peak_temp = 1000.0 |
Definition at line 223 of file thermoplastic.cpp.
| double poisson_ratio = 0.31 |
Poisson ratio.
Definition at line 204 of file thermoplastic.cpp.
| int post_processing_counter = 0 |
Definition at line 329 of file thermoplastic.cpp.
| double Qinf = 174.2 |
Saturation yield stress.
Definition at line 209 of file thermoplastic.cpp.
| double qual_tol = 0 |
Definition at line 256 of file thermoplastic.cpp.
| char restart_file[255] |
Definition at line 190 of file thermoplastic.cpp.
| PetscBool restart_flg = PETSC_TRUE |
Definition at line 191 of file thermoplastic.cpp.
| int restart_step = 0 |
Definition at line 193 of file thermoplastic.cpp.
| double restart_time = 0 |
Definition at line 192 of file thermoplastic.cpp.
| double rho = 0.0 |
Definition at line 252 of file thermoplastic.cpp.
| auto save_range |
Definition at line 544 of file thermoplastic.cpp.
| double scale = 1. |
Definition at line 196 of file thermoplastic.cpp.
| PetscBool set_timer = PETSC_FALSE |
Set timer.
Definition at line 188 of file thermoplastic.cpp.
| double sigmaY = 936.2 |
Yield stress.
Definition at line 205 of file thermoplastic.cpp.
Definition at line 50 of file thermoplastic.cpp.
|
constexpr |
| int T_order = order - 1 |
| int tau_order = order - 2 |
Order of tau field.
Definition at line 239 of file thermoplastic.cpp.
| double temp_0 = 20 |
reference temperature for thermal softening
Definition at line 236 of file thermoplastic.cpp.
| ScalerFunTwoArgs thermal_conductivity_scaling |
Definition at line 199 of file thermoplastic.cpp.
| Example* thermoplastic_raw_ptr = nullptr |
Definition at line 4060 of file thermoplastic.cpp.
|
static |
Definition at line 3840 of file thermoplastic.cpp.
|
static |
Definition at line 613 of file thermoplastic.cpp.
|
static |
Definition at line 601 of file thermoplastic.cpp.
| auto uniform_distribution |
| double visH = 0 |
Viscous hardening.
Definition at line 207 of file thermoplastic.cpp.
| double width = 10.0 |
Width of Gaussian distribution.
Definition at line 224 of file thermoplastic.cpp.
| double young_modulus = 115000 |
Young modulus.
Definition at line 203 of file thermoplastic.cpp.
| double zeta = 5e-2 |
regularisation parameter
Definition at line 208 of file thermoplastic.cpp.