想要了解弹塑性UMAT子程序 关于不排水压缩时孔隙水压力及有效应力的代码编写
时间: 2024-02-20 12:01:10 浏览: 145
好的,弹塑性UMAT子程序是用来描述材料的本构关系的程序,其中包括了材料的应力应变关系、应力状态、应变率等信息。在不排水压缩情况下,孔隙水压力及有效应力的计算可以通过下列代码实现:
```
REAL p, q, dp, dq, pc, qc, sig, eps, eps_v, eps_s, sig_v, sig_s, sig_eff
REAL eps_eff, G, kappa, lambda, n, m, alpha, beta, gamma, d
REAL sig_e, sig_m, sig_p, eps_p, eps_m, eps_e, eps_s, eps_v, eps_v_tr, eps_s_tr
REAL xi, xi_tr, phi, phi_tr, eps_c, p_c, qc_tr
G = 2.0 * mu * (1.0 + nu)
kappa = G / 3.0 / (1.0 - 2.0 * nu)
lambda = 2.0 * nu * kappa / (1.0 - 2.0 * nu)
n = 0.5 * (1.0 - 2.0 * nu) / nu
m = 1.0 / (2.0 * n + 1.0)
alpha = 1.0 - m
beta = 2.0 * m * (1.0 - n)
gamma = m * (1.0 - n) ** 2
eps_v = (dtime * (c1 * de_v + c2 * dve_v)) / (1.0 + c1 * p_v)
eps_s = (dtime * (c1 * de_s + c2 * dve_s)) / (1.0 + c1 * p_s)
eps = eps_s + eps_v
sig_v = kappa * eps_v
sig_s = G * eps_s
sig_eff = sqrt(3.0 * sig_s ** 2 + sig_v ** 2)
eps_eff = sqrt(2.0 / 3.0) * eps
if (eps_eff .lt. 0.0) then
eps_eff = 0.0
end if
if (sig_eff .lt. 0.0) then
sig_eff = 0.0
end if
eps_p = eps_eff - alpha * eps_v
sig_e = sig_eff - alpha * sig_v
if (eps_p .lt. 0.0) then
eps_p = 0.0
end if
sig_m = beta * sig_v + n * sig_e
sig_p = sig_eff - sig_m
if (sig_p .lt. 0.0) then
sig_p = 0.0
end if
eps_m = beta * eps_v + n * eps_p
eps_e = eps_eff - eps_m
if (eps_e .lt. 0.0) then
eps_e = 0.0
end if
eps_s_tr = eps_s + eps_e
eps_v_tr = eps_v + eps_p
xi = eps_s_tr / eps_v_tr
if (xi .lt. 0.0) then
xi = 0.0
end if
phi = 0.0
do while (abs(phi - phi_tr) .gt. 1.0e-10)
phi = phi_tr
p = pc + qc * phi
sig = sig_p - p
eps_c = eps_p / (1.0 - xi * phi)
p_c = p / (1.0 - xi * phi)
dp = p_c - pc
dq = (sig - sig_m) / (3.0 * qc)
pc = pc + dp
qc = qc + dq
phi_tr = phi + dp / qc
end do
qc_tr = qc / (1.0 - xi_tr * phi_tr)
sig = sig_m + 3.0 * qc_tr * xi_tr * phi_tr
```
其中,p表示孔隙水压力,q表示有效应力,dp和dq表示p和q的增量,pc和qc表示p和q的当前值,sig、eps、eps_v、eps_s、sig_v、sig_s、sig_eff、eps_eff、G、kappa、lambda、n、m、alpha、beta、gamma、d、sig_e、sig_m、sig_p、eps_p、eps_m、eps_e、eps_s_tr、eps_v_tr、xi、xi_tr、phi、phi_tr、eps_c、p_c、qc_tr等都是中间变量。这些变量的计算需要根据不同的材料模型和具体的应变条件进行确定。
阅读全文