岩土工程、颗粒流计算软件PFC6.0疫情传播案例——生化危机、病毒传播感染、古尔丹大战霜狼氏族

该博客介绍了使用岩土工程软件PFC6.0模拟疫情传播的案例,以古尔丹与霜狼氏族为背景,描述了一个固定区域内的健康个体与感染源接触后被感染的过程。博主分享了代码和不同阶段的感染情况。
摘要由CSDN通过智能技术生成

颗粒流软件PFC6.0 案例——病毒感染、传播感染算例《古尔丹的黑魔法军团》

没人点赞这个博客就关啦!T_T

博客介绍

想了几个名字:①生化危机、②星火燎原、③古尔丹大战霜狼氏族!

在这里插入图片描述

  • 《古尔丹的黑魔法军团》

  • 最近有人咨询过这个,感觉挺有意思,昨天昨天抽空写了写,效果还行。哈哈哈,虽然被鸽了,但模型跑起来还蛮治愈的,写在这里记录一下吧。

  • 计算需求:一个固定区域内有一定数量的健康对象,一个感染源对象(暂且称为古尔丹吧),健康对象和感染源接触两次后被感染,模拟整个感染过程。

代码

model new
model large-strain on

设置基础参数

def canshu
     changdu=0.6
     kuandu=0.6
     lijing=0.0035
     tiaosushijian=0.00015
     num_p=600
     suduxishu=0.1
     fsfw=5
end
@canshu

生成对象,计算范围

domain extent [-changdu*1.5] [kuandu*1.5]  
cmat default model linear method deformability emod 10e6 kratio 1.5

ball generate id 1 radius [lijing] number 1  box [-changdu]  [kuandu]  group 'ganranyuan'

ball generate radius [lijing] number [num_p-1]  box [-changdu]  [kuandu]  group 'duixiang'

ball attribute density 1500 damp 0.1
wall generate box [-changdu] [kuandu] 

设置运单位速度

fish define brdongyidong
     global tnext,time_br_do
     local tcurrent = mech.time.total
     if tcurrent < tnext then
         exit
     endif
     tnext = tcurrent + time_br_do
     ;
     endloop
end
[time_br_do =2]
[time_start = mech.time.total]
[tnext = time_start]
@brdongyidong
fish callback add brdongyidong -11.0

根据碰撞进行判断

def pengzhuangfenzu(entry)
;
end
model solve

结果

出图的时候间隔取大了,速度有点快,间隔取小的话,效果会好很多
不同阶段的感染情况在这里插入图片描述




^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
最后贴上所有代码

;后续再更新
model solve

向各位大神、致敬!!!
先更一下占个坑,后边有时间了再来完善!!!

整理不易,如果您觉得文章有用的话,别忘了动动小手点个赞哦!!!

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

是要早起的钻钻

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值