资讯动态

UHPC构件仿真中CDP本构参数标定与ABAQUS实现全攻略

发布时间:2026/9/8 13:37:28 来源:尧图企业网站定制
做UHPC构件仿真两年多我最怕听到的一句话就是“帮我按C50的本构算了”。不是不能算是算出来的破坏形态、挠度曲线、裂缝形态跟试验能差出十万八千里。UHPC超高性能混凝土和普通混凝土的根本差异不在强度数字本身而在于拉区的应变硬化、峰值后软化斜率、以及损伤演化的方式——这三件事直接决定了一个构件仿真能不能“对得上试验”。这篇文章我从材料行为差异说起把UHPC在ABAQUS里最常用的CDP本构模型Concrete Damaged Plasticity混凝土损伤塑性模型从理论、参数标定到关键字写入完整过一遍。内容偏实操适合正在做UHPC梁、柱、桥面板或加固层仿真的人参考也适合写论文需要“试验标定-数值模拟”一套流程的在校生。我不讲那种“公式摆一排然后让你自己猜”的教科书写法而是把每一步怎么处理数据、怎么填参数、收敛不了怎么办全给你摊开讲。1. UHPC仿真为什么这么难伺候材料特性与选型逻辑1.1 UHPC和普通混凝土差在哪普通混凝土以C30~C60为例抗压强度一般30~60MPa抗拉强度只有2~4MPa受压峰值应变大概在0.002左右峰值之后强度迅速衰减拉区几乎可以视为脆性开裂。这也是为什么普通混凝土构件仿真里只要拉应力一到抗拉强度单元很快就进入软化甚至失效。UHPC完全是另一种材料。抗压强度普遍在120~200MPa直接拉伸强度可以到8~15MPa弹性模量通常在45~55GPa之间受压峰值应变一般在0.0035~0.005。更关键的是拉区行为由于钢纤维的桥接作用UHPC在第一条可见裂缝出现后并不会立刻失去承载力而是会经历一段相当可观的应变硬化过程极限拉应变可以达到0.003甚至更高。也就是说UHPC在受拉时是“先硬后软”而普通混凝土是“一裂就软”。这个差异直接决定了仿真的建模思路。如果你把普通混凝土本构里的抗压强度改成150MPa就拿来当UHPC用拉区仍然是脆性软化那你算出来的梁的承载力会偏低、挠度会偏大、裂缝分布形态也完全不对。我做过的三组UHPC薄板抗弯试验对比仿真凡是拉区不带硬化段的那组模型极限荷载比试验低了差不多20%而带硬化段修正后误差可以控制在5%以内。1.2 CDP模型能担起UHPC吗ABAQUS自带混凝土相关的本构有三种弥散开裂模型Smeared Cracking、脆性开裂模型Brittle Cracking和损伤塑性模型Concrete Damaged Plasticity。其中CDP是最常被拿来算UHPC的原因很简单——它能同时表达拉区硬化、压区软化和刚度退化这三件UHPC最核心的事。CDP的底层逻辑是用修正的Drucker-Prager屈服面描述塑性流动用两个独立的损伤变量受拉损伤dt和受压损伤dc控制卸载刚度。你在ABAQUS里做的所有参数标定工作最终都是为了让这个屈服面在应力空间里的位置和演化速度贴合UHPC的真实响应。但这里有一个必须说明的坑CDP的原始屈服面参数是基于普通混凝土试验回归出来的。UHPC因为基体更密实、骨料-浆体界面更强在双轴受压和三轴受压下的强度比会跟普通混凝土不一样。严格来说需要做双轴试验标定但工程上没必要卡那么死——后面我会给一组实测下来误差可控的参数先用起来再根据具体工况微调。2. UHPC本构理论拆解从单轴试验到本构方程2.1 受压本构峰值应变与下降段UHPC的受压本构最合适的来源就是你自己的单轴压缩试验数据。把试验机的应力-应变曲线拿过来均匀化处理之后直接转换成ABAQUS需要的非弹性应变格式就行。如果没有试验数据可以按经验公式估算。欧洲UHPC规范建议和ACI 239委员会的报告里都给了经验式。我常用的做法是先定峰值压应力fcm比如150MPa和弹性模量Ec比如46GPa然后用简化公式估算峰值应变。拿150MPa、46GPa的例子算下来峰值应变大概在0.0038左右。相比普通混凝土的0.002UHPC的峰值应变明显后移了。峰值之后的下压段也值得注意。普通混凝土C30从峰值60MPa掉到10MPa可能只需要0.001的非弹性应变增量UHPC从150MPa掉到10MPa可能需要0.004~0.005甚至更多。也就是说UHPC的压区软化段更“长”更“缓”这跟钢纤维对受压裂缝的约束作用有关。很多人在ABAQUS里把UHPC压缩软化段写得太陡算出来构件延性明显偏小。2.2 受拉本构应变硬化与软化双段UHPC受拉本构是重点中的重点我每次讲这部分都会多花时间。一根UHPC轴拉试件的完整应力-伸长曲线可以分为三段第一段是线弹性段此时基体未开裂应力和应变呈线性关系斜率就是弹性模量。第二段是应变硬化段基体出现第一条宏观裂缝后对应的应力一般叫初裂强度由于钢纤维桥接作用裂缝处的应力还能继续增长表现为试件整体应力“不降反升”直到达到极限抗拉强度。第三段是应变软化段过了极限抗拉强度之后某条主裂缝开始局部化纤维逐渐被拔出应力开始下降。这三段在ABAQUS中的表达方式是弹性段用弹性模量控制硬化段和软化段通过*Concrete Tension Stiffening拉伸硬化数据表逐点定义。我的习惯是至少取6个点来拟合受拉曲线。拿一个直接拉伸强度10MPa的UHPC举例数据点大概是这样的开裂应变0处应力8.5MPa初裂强度开裂应变0.002处应力9.8MPa开裂应变0.0045处应力10MPa极限强度然后软化开裂应变0.006处应力降至7MPa0.008处降至3MPa0.01处降至0.5MPa。这样一条曲线输进去构件受拉时的承载力、延性和裂缝发展行为才能跟试验对得上。2.3 损伤演化CDP里的损伤变量本质上描述的是“刚度退化程度”。d0表示材料完全无损卸载刚度为初始弹性模量E0d1表示材料完全丧失承载能力卸载刚度退化到0附近。损伤变量最常见的标定方法是Sidoroff能量等效法公式是d 1 - σ/(E0·ε)。这个公式的前提是假设损伤后的有效应力仍满足线弹性关系算出来是一个工程近似但对于大多数结构仿真场景已经足够精确。需要特别提醒的是受拉损伤的处理。UHPC的应变硬化段本质上是微裂缝的稳定扩展阶段此时材料刚度已经有所退化但在ABAQUS里我通常把这段的受拉损伤设得很小甚至设为零。原因有二第一硬化段宏观上应力还在增长损伤过大会导致应力增长异常第二硬化段就引入大损伤值会导致单元刚度退化过快构件承载力算出来偏低。受拉损伤从软化起始点再开始快速上升才是比较稳妥的做法。3. ABAQUS CDP参数标定全流程3.1 弹性参数弹性参数就两个弹性模量和泊松比。UHPC的泊松比一般在0.2~0.22取0.2问题不大。弹性模量这个值得多写两句。普通混凝土的经验公式E 4700√fcfc单位MPa在UHPC上直接套会高估。比如150MPa的UHPC按这个公式算出来是57.6GPa实际UHPC的弹性模量大多在44~52GPa。原因在于UHPC水胶比极低、没有粗骨料其弹性模量主要受浆体和细骨料控制不能简单套用普通混凝土的强度-刚度关系。我一般的处理顺序是有试验实测模量就用实测值没有实测值取46~48GPa是一个比较稳的起点。密度记得用吨单位制下的2.4e-9 t/mm³这个细节虽然小但经常有同学因为密度单位写错导致自重荷载差好几个量级。3.2 五个塑性参数的取值逻辑CDP的塑性参数一共五个膨胀角ψ、流动势偏心率ε、双轴/单轴抗压强度比fb0/fc0、拉压子午线第二应力不变量比Kc、黏性系数μ。这五个参数里面膨胀角和黏性系数对结果影响最大。膨胀角控制的是塑性流动时体积膨胀的量。UHPC在低围压下的剪胀行为比普通混凝土明显但也没到夸张的程度。我建议取30°~35°约束构件比如钢管UHPC、箍筋很密的柱可以取35°无约束的板、梁取30°附近就行。膨胀角取得过大会让约束构件的承载力明显偏高因为模型认为材料在受压时体积膨胀得厉害产生的围压效应被放大了。流动势偏心率ε保持默认0.1fb0/fc0默认1.16Kc默认2/3这三个参数如果没做双轴试验就别乱动。网上有人说UHPC的fb0/fc0应该取1.2~1.25理论上没错但如果没有对应的双轴试验验证调了反而可能引入不可控误差。我实测过1.16和1.25的区别单轴受力构件结果几乎没差所以没必要在这个参数上纠结。黏性系数μ是隐式分析收敛性的救命稻草也是结果“失真”的万恶之源。它的作用是对损伤塑性模型做粘塑性正则化让软化段的应力-应变关系带上一定的率依赖性从而改善收敛。取0表示纯率无关模型收敛最容易出问题取0.005以上会让模型表现出明显的“黏性”强度虚高、损伤滞后。我的建议是隐式分析先取0.0005不收敛再逐步加到0.001、0.005加的时候注意对比一下荷载-位移曲线如果发现峰值明显抬高了说明黏性系数太大了。3.3 压缩与拉伸硬化数据的转换方法这是整个标定流程里最容易出错的一步。ABAQUS的*Concrete Compression Hardening需要的是“压应力-非弹性应变”数据对*Concrete Tension Stiffening需要的是“拉应力-开裂应变”数据对。很多人直接把试验测到的总应变输进去这是个致命错误。非弹性应变和总应变的关系是εin εtotal - σ/E0。也就是说要把总应变减去当前应力水平下的弹性恢复应变剩下的才是非弹性应变。如果用总应变代替非弹性应变相当于把软化起点人为提前了模型会在远低于真实峰值应变的位置就开始软化构件承载力算出来自然是偏低的。同样道理受拉段输入的是开裂应变εck εtotal - σ/E0。注意这里即使有塑性损伤也只用初始弹模E0做换算这是ABAQUS的约定用法。下面给一组可以直接起步的UHPC CDP参数示例强度等级约150MPa单位制mm-N-s-MPa参数项数值说明弹性模量 E46000 MPa实测优先无实测取46~48GPa泊松比 ν0.2—密度 ρ2.4e-9 t/mm³吨单位制膨胀角 ψ30°约束构件可调到35°偏心率 ε0.1默认fb0/fc01.16默认Kc0.6667默认黏性系数 μ0.0005收敛困难时再增加压缩硬化数据表压应力 (MPa)非弹性应变15001200.00045800.0012400.0025100.0045拉伸硬化数据表拉应力 (MPa)开裂应变8.509.80.002100.004570.00630.0080.50.013.4 受损参数的标定技巧受压损伤dc建议从峰值后的第一个软化点开始给。拿上面的压缩数据来说非弹性应变0处dc00.00045处dc0.10.0012处dc0.30.0025处dc0.60.0045处dc0.95。这样一个平缓上升的损伤曲线既能表达刚度退化又不至于让单元过快失效。受拉损伤dt要注意我前面说的硬化段给0软化段再快速上升。按上面的拉伸数据就是开裂应变0到0.0045这段dt00.006处dt0.30.008处dt0.70.01处dt0.95。提示如果你用的是显式分析黏性系数一般取0但受拉损伤的突变还是会让单元加速失效。可以把软化段再平滑几个点避免应力跌落太猛引起“冲击式”失效。4. ABAQUS实操从INP关键字到求解设置4.1 单元选择与网格划分UHPC构件分析我首选C3D8R三维八节点减缩积分实体单元计算效率和精度平衡得比较好。减缩积分单元要注意沙漏问题ABAQUS里默认的沙漏控制一般够用但如果模型中有大变形或者局部单元扭曲严重记得在Section Controls里把沙漏刚度稍微提高一点。C3D20R二阶二十节点单元在弹性分析里精度高但进入损伤软化阶段后容易出现剪切闭锁现象而且计算量成倍增加我不太推荐用于UHPC构件的损伤分析。网格尺寸上最关键的原则是损伤区域至少要保证有3~5层单元。做梁受弯分析时跨中纯弯段受拉损伤区的单元尺寸建议控制在5~10mm再粗的话软化带的宽度会被网格“锁住”算出来的延性和裂缝分布都不可靠。有条件的话对同一模型做一次网格敏感性校验——换两套网格尺寸对比荷载-位移曲线如果曲线差异小于5%说明网格尺寸可以接受。4.2 材料卡片的INP写法下面这段是上面参数对应的ABAQUS材料关键字可以直接改数值套用*Material, nameUHPC150 *Elastic 46000., 0.2 *Density 2.4e-9, *Concrete Damaged Plasticity 30., 0.1, 1.16, 0.6667, 0.0005 *Concrete Compression Hardening 150., 0. 120., 0.00045 80., 0.0012 40., 0.0025 10., 0.0045 *Concrete Tension Stiffening 8.5, 0. 9.8, 0.002 10., 0.0045 7., 0.006 3., 0.008 0.5, 0.01 *Concrete Compression Damage 0., 0. 0.1, 0.00045 0.3, 0.0012 0.6, 0.0025 0.95, 0.0045 *Concrete Tension Damage 0., 0. 0., 0.0045 0.3, 0.006 0.7, 0.008 0.95, 0.01如果你习惯在CAE界面操作就直接把Property模块里各个子选项对应填入。注意CAE里Concrete Damaged Plasticity的表格输入顺序和INP是一致的填的时候别把压缩和拉伸的数据行搞混。4.3 分析步、求解器与收敛策略UHPC构件的静态加载分析建议用Static, General分析步。进入Step模块后把求解器设置为非对称Unsymmetric solver因为CDP模型的切向刚度矩阵是非对称的用非对称求解器能明显改善收敛性代价只是单步求解时间略微增加。增量步设置上初始增量步可以设成总荷载时长的0.01最小增量步设成1e-5最大增量步设成0.05。如果模型在前几个增量步就出现收敛问题先别急着改模型把最小增量步再调小一个量级试试。对于动力问题、冲击问题或者接触非常复杂的装配体可以考虑改用显式分析Explicit。显式分析不涉及迭代不存在收敛问题但需要关注两个点一是时间增量步受稳定极限控制通常很小二是质量缩放。做静力或准静态分析时适当的质量缩放可以大幅节省计算时间但一定要在后处理里检查伪动能ALLKE与内能ALLIE的比值工程经验是伪动能不超过内能的5%~10%超过的话说明质量缩放过大结果已经失真。5. 常见问题与排查技巧实录5.1 隐式计算死活不收敛是怎么回事CDP模型收敛困难是ABAQUS家的祖传话题了。按我的排查顺序走一遍大概率能解决。先检查网格质量有没有负体积单元、过度扭曲单元、特别薄的单元网格问题往往是第一罪魁。再看材料数据软化段有没有应力突降如果两个相邻数据点之间应力掉了50%以上很容易导致局部刚度突变求解器在迭代时会在那个点附近反复横跳。解决办法是把软化段过渡写平缓一点比如中间增加一到两个插值点。然后调求解策略把非对称求解器打开把增量步上限调小一点再把黏性系数从0.0005往上加。黏性系数每加一个量级收敛性都会有明显改善但是要盯住荷载-位移曲线一旦发现峰值荷载被抬高超过3%~5%就别再加了。5.2 拉伸硬化段“看不见”到底哪里出了问题很多人在后处理里看到UHPC构件受拉区云图“没有损伤”就觉得本构参数没生效。这里要区分一个概念UHPC的应变硬化段本身就是多裂缝稳定扩展的过程在这个阶段材料应力还在增长宏观上确实看不到像普通混凝土那样的明显主裂缝损伤云图上也不应该有大片红色区域。如果你用的是受拉损伤dt全为零的硬化段定义那后处理里看到的是PEEQ等效塑性应变在增长而DAMAGET拉伸损伤保持为零这是完全正常的状态。真正要关注的是构件达到极限荷载之后损伤值是否开始快速增长并且集中在某个截面附近形成局部化。如果直到破坏都没有损伤发展那才要回头检查数据有没有输错。还有一个常见的后处理坑在提取受拉本构验证模型的应力-应变曲线时直接提取了某个单元的总应变跟输入的硬化曲线对不上就开始怀疑参数错了。正确做法是先算一个单轴拉单元模型让单元只受单轴拉力然后输出单元的S11和E11或LE11再换算成应力-开裂应变曲线去对标试验。5.3 压缩曲线峰值明显偏低怎么排查如果你用单轴压缩单元模型验证发现峰值压应力明显低于目标值按下面几个方向排查。第一确认输入的是非弹性应变而不是总应变。很多人错在把试验的总应变数据直接填进了*Concrete Compression Hardening这样ABAQUS在应力还没到峰值前就已经认为有非弹性变形峰值自然上不去。第二检查单位制。mm-N-s-MPa下弹性模量要填46000而不是46密度要填2.4e-9而不是2400这类低级错误最隐蔽也最致命。第三检查加载速率显式分析中如果加载速度太快惯性力会干扰曲线导致峰值前就出现锯齿状波动。5.4 显式分析中的振荡问题怎么压显式UHPC分析最常见的现象是应力时间曲线在进入软化段后出现高频振荡看起来像“噪音”。这通常是因为材料软化导致单元瞬间失去刚度而质量缩放又放大了局部惯性效应。处理办法有三个一是降低质量缩放倍数让伪动能控制在较低水平二是给材料加一点轻微的刚度比例阻尼但阻尼系数不要取得太大否则峰值强度会被压低三是把损伤软化段的数据点再适当平滑减少应力阶梯式下跌带来的数值冲击。我把这几个常见问题汇总成了一张速查表方便平时调试时对照现象可能原因快速解法隐式分析无法收敛网格质量差/软化段过陡/黏性系数太小检查网格、平滑软化段、增大μ压缩峰值偏低非弹性应变误用总应变/单位制错误重新换算数据、检查单位拉伸损伤不发展材料处于硬化段属正常现象对照PEEQ和应力曲线综合判断曲线锯齿振荡质量缩放过大/阻尼不足降低质量缩放、适当加阻尼承载力虚高黏性系数μ过大/膨胀角过大回退μ至0.0005~0.001、调整ψ软化段网格敏感网格过粗/没有断裂能正则化细化损伤区网格或不跨网格对比结果写在最后的一些体会我个人实际做的过程里感触最深的一点是UHPC的CDP仿真最花时间的不是调收敛而是把本构数据“标得干净”。所谓干净就是数据来源清晰、换算过程明白、每一个参数都能对应到材料行为的某个物理意义。参数盲调碰运气今天调出一个能收敛、曲线好看的结果明天换个构件尺寸可能就不对了。先用一个单元做单轴压缩验证、单轴拉伸验证再上构件看起来多花了半天实际上后面构件级别仿真能少踩无数坑。最后再分享一个小技巧做UHPC构件分析时不要只看最终破坏状态把荷载-位移曲线上几个关键特征点初裂点、硬化段转折点、峰值点、残余承载段的损伤云图单独导出来对比。这几张图一出来基本上就能判断本构标定是否正确比对着一个最终的应力云图猜来猜去高效得多。

读完文章,也想定制专属网站?

尧图设计师 24 小时内与您沟通定制方案

免费获取报价