CDP
Concrete Damage Plasticity Model
References
Outline
The CDP model supports stiffness degradation. The backbone envelops are defined as exponential functions in terms of plastic strain [4]. Apart from the listed references, readers can also refer to the corresponding section in Constitutive Modelling Cookbook.
Syntax
material CDP (1) (2) (3) (4) (5) (6) (7) (8) (9) (10) (11) (12) (13) (14) [15]
# (1) int, unique tag
# (2) double, elastic modulus
# (3) double, poissons ratio
# (4) double, crack stress f_t
# (5) double, crush stress f_c
# (6) double, normalized crack energy g_t
# (7) double, normalized crush energy g_c
# (8) double, initial tension hardening a_t<1
# (9) double, initial compression hardening a_c>1
# (10) double, damage factor at half crack stress d_t
# (11) double, damage factor at peak crush stress d_c
# (12) double, dilatancy parameter
# (13) double, biaxial compression ratio
# (14) double, initial stiffness recovery factor
# [15] double, density, default: 2400E-12
Remarks
Poisson's ratio shall be smaller than , a typical value for concrete is around .
Crack stress shall be greater than zero while crush stress shall be smaller than zero. But the program automatically set the signs for both stresses.
Normalized crack energy equals the first mode crack energy over the characteristic length. For SI (millimeter) unit system, typical values are of order . The compression conjugate is typically greater than by the order of .
Hardening parameters controls tension degradation slope and compression hardening shape. Values and to give good results.
Dilatancy parameter can be set to . Comparisons can be seen in Lee's doctoral dissertation.
Biaxial compression ratio is defined as the ratio between biaxial and uniaxial compression strengths. According to Kupfer et al. (1969), a value of is recommended.
Initial stiffness recovery factor controls the amount of stiffness recovery when loading direction changes.
Theoretically, and shall be scaled according to the size of mesh grid. Practically, they cannot be arbitrarily small due to numerical stability issues, meaning that the mesh grid cannot be arbitrarily large.
History Layout
initial_history(0)
initial_history(1)
initial_history(2)
initial_history(3)
initial_history(4-9)
plastic strain
Recording
This model supports the following additional history variables to be recorded.
DT
tensile damage
DC
compressive damage
Iso-error Map
The following example iso-error maps are obtained via the following script.
from plugins import ErrorMap
# note: the dependency `ErrorMap` can be found in the following link
# https://github.com/TLCFEM/suanPan-manual/blob/dev/plugins/scripts/ErrorMap.py
young_modulus = 3e4
yield_stress = 30
with ErrorMap(
f"material CDP 1 {young_modulus} .18 {0.1 * yield_stress} {yield_stress} 1E-2 1E-1 .4 3. .6 .8 .23 1.16 .4",
ref_strain=yield_stress / young_modulus,
ref_stress=yield_stress,
contour_samples=20,
) as error_map:
error_map.contour("cdp.uniaxial", center=(-2, 0), size=1)
error_map.contour("cdp.biaxial", center=(-2, -2), size=1)
Last updated