目录

clump的基本使用

geometry的四种生成方式

常用的geometry的fish

生成clump模板

批量生成clump


clump的基本使用


A clump is a rigid collection of  rigid spherical pebbles. (clump以pebble为基本单元


geometry的四种生成方式


geometry:

几何系统允许用户创建、导入和导出几何数据。这些数据可以用各种方式与模型互动。这些数据可以用范围逻辑作为过滤器,也可以用绘图作为可视化的辅助工具。FISH的额外变量和组名可以分配给几何数据。FISH可以用来创建和操作数据。几何数据被组织成几何集,它是节点、边和多边形的命名集合。

几何对象的创建不需要一个域,因为它们不是模型组件。几何导入命令用于从文件中导入几何数据,该文件可以是.stl、.dxf或Itasca几何格式。(可以用ai矢量绘图软件绘制,可以输出为stl或者dxf)

生成多边形:geometry polygon

①edge 边

②node 点

③输入位置矢量

④外部导入

在plot中的geometry中查看

new;geometry node id 1 -1 -1
;geometry node id 2 1 -1
;geometry node id 3 2 0
;geometry node id 4 1 1
;geometry node id 5 -1 1
;geometry node id 6 -2 0
;;geometry polygon nodes 1 2 3 4 5 6
;geometry edge id 1 node 1 node 2
;geometry edge id 2 node 2 node 3
;geometry edge id 3 node 3 node 4
;geometry edge id 4 node 4 node 5
;geometry edge id 5 node 5 node 6
;geometry edge id 6 node 6 node 1
;
;geometry polygon edges 1 2 3 4 5 6;geometry polygon positions -1 -1 ...
;                           1 -1 ...
;                           2 0 ...
;                           1 1 ...
;                           -1 1 ...
;                           -2 0 ;导入在ai中绘制的矢量图片
geometry import geo.dxfsave addgeo

常用的geometry的fish


 基本的fish用法:

loop foreach nd geom.node.list(g) 

restore addgeodef geo_setg = geom.set.find("geo") x_min=1e100x_max=-1e100y_min=1e100y_max=-1e100loop foreach nd geom.node.list(g) local x_pos_local_node=geom.node.pos.x(nd)if x_pos_local_node>x_max thenx_max=x_pos_local_nodeendifif x_pos_local_node<x_min thenx_min=x_pos_local_nodeendiflocal y_pos_local_node=geom.node.pos.y(nd)if y_pos_local_node>y_max theny_max=y_pos_local_nodeendifif y_pos_local_node<y_min theny_min=y_pos_local_nodeendifendloop;global的变量在右侧状态栏可以看到,如果不想看到可以添加local关键字
end
@geo_set
;首先查找几何体尺寸[scale=1/(x_max-x_min)]def scale_geog = geom.set.find("geo") loop foreach nd geom.node.list(g) geom.node.pos.x(nd)=  geom.node.pos.x(nd)*scale geom.node.pos.y(nd)=  geom.node.pos.y(nd)*scale endloop
end
@scale_geo
@geo_setdef move_geo_toOriging = geom.set.find("geo")loop foreach nd geom.node.list(g)geom.node.pos.x(nd)=  geom.node.pos.x(nd)-(x_max+x_min)*0.5geom.node.pos.y(nd)=  geom.node.pos.y(nd)-(y_max+y_min)*0.5endloop
end
@move_geo_toOrigin
@geo_set
;把几何体移动到原点

生成clump模板


template模板

Create a clump template. The inertial attributes must be specified upon creation. One can either specify them directly (i.e., specify the volume, inertia, and position) or specify their calculation from the pebble distribution (with the pebcalculate keyword) or from the surface description (with the surfcalculate keyword). The pebbles may be specified directly or automatically via the Bubble Pack algorithm of Taghavi (2011). The clump, and all pebbles, are translated so that the clump centroid coincides with the origin. The original clump position is also retained and can be used for replication.

Clump templates are assumed to have unit density, and the inertia must reflect this condition.块状模板被假定为具有单位密度,而惯性必须反映这一条件。

surfcalculate 表面计算
假设密度均匀,从面的描述中计算出惯性属性。这个关键字不能与惯性、pebcalculate、位置、体积、x、y或z关键字一起给出。

;通过模板生成单个clump
restore addgeodomain extent -2 2
clump template  create geometry geo ...bubble pack distance 160 ratio 0.1 surfcalculate
geometry delete
clump replicate angle 0 diameter 1 position 0 0 name geo
;distance 160 数字越大,粘聚性越好,数目越多。clump是用圆形/球体生成的
;ratio为比例,指块状模板中保留的最小和最大卵石的比率。ratio越小越好,越小边界越好
;删掉之前的geometrysave create_clump

批量生成clump


①clump generate

产生不重叠的块状物。当创建了目标数量的块状物或达到了尝试放置块状物而不重叠的次数时,这个过程就会停止。默认情况下,团块的位置和大小是从整个模型域的均匀分布中提取的。

clump distribute

不建议用,clump内部的基本单元pebble和墙体有接触,会有较大阻力,溢出墙体。

解决办法

 wall generate box -0.6 0.6 expand 2 ;添加expand
wall attribute xvel 1 range id 4  ;对墙体施加一定速度
wall attribute xvel -1 range id 2
wall attribute yvel 1 range id 1
wall attribute yvel -1 range id 3cycle 2000 calm 50solve time 0.1
wall attribute vel 0 0
solve
save create_clump
;将墙体进行放大再压缩

diameter直径
指定用于缩放团块的线性尺寸是{二维的磁盘;三维的球体}的体积等效直径

restore create_clump
domain extent -10 10
;clump generate number 500 size 0.1 box -2 2 diameter 方法一wall generate box -0.6 0.6 expand 2clump distribute porosity 0.2 numbin 1 ...bin 1 size  0.1 volumefraction  1 diameter ...box -0.5 0.5
clump attribute density 3e3 damp 0.7  ;clump需要赋值密度和阻尼
cmat default model linear property kn 1e8  ks 1e8 fric 0.5  ;设置为线性模型wall attribute xvel 1 range id 4
wall attribute xvel -1 range id 2
wall attribute yvel 1 range id 1
wall attribute yvel -1 range id 3cycle 2000 calm 50solve time 0.1
wall attribute vel 0 0
solve
save create_clump

clump的基本使用相关推荐

  1. PFC2D学习笔记——刚性簇(clump)生成

    刚性簇(clump)是相对于柔性簇(cluster)而言,每个clump由多个ball构成,刚性簇间的ball没有相对变形,因此不会破坏. 1.利用clump create 命令生成刚性簇 关键词ca ...

  2. 如何在RenderWare中复制Clump

    RenderWare中RpClumpClone可以Clone一个模型,但是这个Clone出来的Clump仍然会引用原来的Geometry,我们现在要做的就是复制一份出来,Copy而不是Clone,这样 ...

  3. clump的时候,报错:The query to MR-Base exceeded 300 seconds ,尝试做本地clump

    clump的时候,报错:The query to MR-Base exceeded 300 seconds ,尝试做本地clump ​ 参考了一下前人的经验,这里是参考的原文的链接 TwoSample ...

  4. 全部用clump作为墙体的三维循环三轴的一点不足

    1.应力应变曲线很突兀,没有二维的贴合实际 2.加围压只有上下加载板在动,不贴合实验室条件,实验室应该是上下不动而四周的加载板往土体移动 3.加载过程中也不贴合实际,实际上不只是上下加载板在动,四周的 ...

  5. 机器学习(16)ROC曲线与AUC指标(癌症分类的模型检测--AUC指标)

    目录 一.基础理论 0.引言 1.TPR与FPR 1.TPR(召回率) 2.FPR 2.ROC曲线 3.AUC指标 二.癌症分类的模型检测(AUC指标) 1.正反例转1.0 2.计算AUC指标 总代码 ...

  6. 机器学习(15)精确率召回率F1-score(查看癌症预测结果的精确率、召回率)

    目录 一.基础理论 1.混淆矩阵 2.精确率 3.召回率 4.F1-score 二.查看癌症预测结果的精确率.召回率 API 查看癌症预测结果的精确率.召回率 总代码 一.基础理论 1.混淆矩阵 预测 ...

  7. 机器学习(14)逻辑回归(实战) -- 癌症分析

    目录 试错 一.读取数据 二.划分数据集 三.对训练集和测试集标准化 四.创建逻辑回归预估器,训练得到模型 五.模型评估 总代码 试错 这里必须要做对缺失数据的处理,否则会报错: ValueError ...

  8. Python 打印行列控制(API:pandas.set_option())

    目录 pandas.set_option():控制打印的行列 使用方式 实战 1.读取数据,发现问题 2.显示行列 总代码 参考资料: pandas.set_option():控制打印的行列 参数介绍 ...

  9. 逻辑回归之案例:癌症分类预测-良/恶性乳腺癌肿瘤预测

    逻辑回归之案例:癌症分类预测-良/恶性乳腺癌肿瘤预测 数据介绍 原始数据的下载地址:https://archive.ics.uci.edu/ml/machine-learning-databases/ ...

最新文章

  1. LeetCode 1271. 十六进制魔术数字(进制转换)
  2. 算法训练 P1101(java)
  3. SpringBoot | 第十四章:基于Docker的简单部署
  4. UI设计灵感|996打工人必备,日程计划网页设计
  5. 精选素材模板丨极简风简历模板
  6. HDU 1010 深搜+奇偶剪枝
  7. mysql 大事物commit慢造成全库堵塞问题
  8. easyswoole验证码的使用
  9. MySQL garbled code
  10. 如何看误差累积分布图
  11. BUUCTF [WUSTCTF2020]alison_likes_jojo
  12. dns配置异常怎么修复_dns异常怎么修复【详细介绍】
  13. Docker安装与镜像的使用
  14. 别人家的公司年终奖52个月工资-互联网企业年终裁员脸在哪
  15. 遭遇盗取网络游戏帐号木马等
  16. bios显示计算机故障,笔记本电脑BIOS出现故障怎么办 三种常见BIOS故障解决方案...
  17. Pr 视频效果:扭曲
  18. 如何精准实现OCR文字识别?
  19. 压在心底慢慢体会__珍藏的句子
  20. 帝国搜索模板不支持php,解决帝国CMS搜索模板不支持灵动标签的方法

热门文章

  1. 基于ISO 21448和STPA方法的自动驾驶安全性和可靠性设计
  2. Ubuntu20.4下x264、x265、fdk-aac和FFmpeg4.3源码编译安装
  3. 页游服务器需要什么系统,知名页游服务器被攻击,系统发送辱骂邮件,玩家却乐得不行...
  4. Linux下禁用T440s,X240的一体化触摸板(touchpad)
  5. 仿头条视频控件JzVideoPlayerStandard
  6. Scratch3.0 教学经验
  7. jxl对某一列设置单元格格式
  8. 女性茶友可以喝普洱熟茶吗?
  9. python 均方误差_python如何实现均方误差和均方根误差?
  10. 2020最新的新浪短网址(T.CN短链接)API接口分享