当前位置: 首页 > news >正文

颗粒流环形剪切实验:用代码扒开土体的秘密

PFC3D5.0颗粒流『颗粒材料/土体材料环形剪切实验』完整代码 该代码包括: (1)完整代码及适量注释,可以参考学习,也可直接使用,无需调试; (2)环形剪切实验的建模全过程,剪切应力,法向应力,样品体积变化,能量等完整fish函数。 附图:模型侧视图,俯视图,加载过程中图像,表观摩擦系数曲线(剪切应力除以法向应力),法向应力曲线(恒压加载),样品体积变化曲线。

玩过堆沙子没?颗粒材料在剪切力作用下的反应就跟沙堆塌了似的。环形剪切实验就是专门研究这个的,今天咱们用PFC3D5.0整一套能直接拿来用的代码,手把手教你搓出颗粒材料的剪切特性曲线。

先看看怎么搭模型

建模核心就三板斧:造墙、撒颗粒、加约束。这里用圆柱形剪切盒,下盘固定上盘转。初始化时记得把颗粒的摩擦系数设小点,方便后续压实。

;=======造墙======= wall generate id 1 cylinder ... ;底下那个固定墙 wall generate id 2 cylinder ... ;上面要转的墙 wall attr damp 0.7 ;墙的阻尼别太小 ;=======撒芝麻======= ball distribute ... ball attr density 2650 ;石英砂密度

颗粒生成后要压实到目标孔隙比,这步用伺服控制最稳。注意伺服过程中要实时监测接触力,别压爆了。压实完成后把摩擦系数调回正常值,毕竟实验时要模拟真实摩擦状态。

这些参数你肯定得调

剪切速率千万别设太高,颗粒流最怕数值不稳定。建议用准静态条件,剪切速率控制在1e-5到1e-4这个量级。法向应力加载用应力控制模式,比位移控制更贴近实际工况。

;=======加载控制======= def apply_confining_stress loop local i (1,wall.num) if wall.id(i) == 2 wall.force.app = -target_stress * area ;压力换算成力 endif endloop end

灵魂Fish函数大揭秘

剪切过程中要实时记录五个关键指标:剪切应力、法向位移、体积变化、动能变化、摩擦系数。这里有个取巧的方法——用墙的旋转角度换算剪切应变。

;=======数据记录======= def calc_shear_stress shear_force = 0.0 loop foreach cnt wall.contact.list if wall.isin(cnt.end1) ;只统计和活动墙的接触 shear_force += cnt.force.shear endif endloop current_shear = shear_force / area ;换算成应力 end

体积变化计算要注意排除墙位移的影响,建议用颗粒的 centroid 坐标统计有效区域内的体积。动能监控能帮我们发现何时系统达到稳定状态,这对确定数据采集时机至关重要。

结果怎么看才专业

当表观摩擦系数曲线(剪切应力/法向应力)出现稳定平台时,说明材料进入临界状态。这时体积变化曲线应该趋于平稳,要特别注意剪胀现象——密砂会膨胀,松砂可能收缩。

PFC3D5.0颗粒流『颗粒材料/土体材料环形剪切实验』完整代码 该代码包括: (1)完整代码及适量注释,可以参考学习,也可直接使用,无需调试; (2)环形剪切实验的建模全过程,剪切应力,法向应力,样品体积变化,能量等完整fish函数。 附图:模型侧视图,俯视图,加载过程中图像,表观摩擦系数曲线(剪切应力除以法向应力),法向应力曲线(恒压加载),样品体积变化曲线。

!

法向应力保持恒定是检验伺服控制是否达标的关键。如果出现应力波动超过5%,建议检查墙的刚度和阻尼参数设置。能量曲线里,动能占比应该始终小于1%,否则要怀疑是不是加载太快了。

拿去就能用的骚操作

代码包里已经预置了三组典型工况:密砂/松砂/过渡状态。改这三个参数就能切换:

  1. 初始孔隙比(0.5-0.8)
  2. 颗粒级配系数(0.1-0.3)
  3. 围压大小(50kPa-1MPa)

跑完自动生成四个数据文件:

  • 应力应变曲线.dat
  • 体积变化.dat
  • 能量记录.dat
  • 实时参数.log

遇到颗粒飞溅别慌,八成是阻尼设小了。建议剪切阶段把局部阻尼调到0.3左右,既能保证收敛速度,又不影响力学响应。记住,颗粒流仿真就像熬汤——火候(时步)到了自然出结果。

http://www.jsqmd.com/news/532333/

相关文章:

  • OSS存储空间(bucket)命名踩坑实录:为什么我的创建总失败?
  • Servlet 过滤器(Filter)
  • 从subprocess.CalledProcessError到Git仓库状态:解析Python子进程调用中的Git依赖陷阱
  • 突破QQ音乐格式限制:QMCDecode四步实现音乐跨设备自由
  • Windows计算器开源版:5个颠覆性功能重塑你的数字计算体验
  • PDF补丁丁完全指南:轻松掌握PDF编辑、合并与书签管理的终极解决方案
  • 告别Excel安装烦恼:AI智能操作Excel的终极解决方案
  • 2026年靠谱的环保设备/智能环保设备/资源化处理环保设备/污水环保设备厂家推荐及选择参考 - 行业平台推荐
  • 2026年全面预算管理软件推荐:多业态集团资源优化配置与智能分析热门选择 - 十大品牌推荐
  • java+vue+SpringBoot计算机学院校友网(程序+数据库+报告+部署教程+答辩指导)
  • Qwen3智能字幕对齐系统C语言文件读写实战:处理SRT、ASS等字幕格式
  • 3分钟实现手机号查QQ号:无需登录的Python实用工具
  • 3 大核心优势!抖音网红平台,KOL/KOC 一键匹配 - 博客湾
  • 2026年全面预算管理软件推荐:上市公司合规与战略落地智能预算分析与监控工具 - 十大品牌推荐
  • s2-pro效果展示:中英混读、数字朗读、标点停顿自然度实测
  • 算法刷题必备:链式前向星存图从入门到精通(附完整代码示例)
  • 合并报表软件如何选择更靠谱?2026年推荐聚焦数据治理与附注自动化工具 - 品牌推荐
  • Windows 11/10系统下SAS9.4逻辑库报错与增强编辑器丢失的终极排查手册
  • 给Raspberry Pi Pico换个“游戏机皮肤”:从零适配ST7789屏与按键的InfoNES配置指南
  • ChatTTS-究极拟真语音合成效果展示:相声式节奏与幽默感表达
  • 工业Python网关性能断崖式下跌?实测对比:asyncio+uvloop vs. Rust-Python FFI,在10万点/秒采集场景下延迟相差47ms(附压测报告PDF)
  • 深析倍思充电宝其技术优势与安全标准
  • 2026年评价高的cnc数控车床/数控车床/斜轨数控车床/精密数控车床厂家推荐及采购参考 - 行业平台推荐
  • 离网风电制氢:当风机遇见质子交换膜
  • 告别CentOS后,我在VMware上折腾Anolis OS的踩坑实录(附网络配置解决方案)
  • 鸽姆智库:“五维认知+五元资本”驱动文明级操作系统
  • Bigemap Pro必备技能:经纬度点位地址批量赋值
  • 大语言模型到底在算什么?一文搞懂 ChatGPT/DeepSeek 的工作原理
  • frp内网穿透部署详细教程
  • 2026年比较好的旱厕型移动厕所/最新款移动厕所/高品质移动厕所/道路施工移动厕所高口碑厂家推荐(评价高) - 行业平台推荐