关键词不能为空

当前您在: 主页 > 英语 >

FLAC3D学习笔记(自己总结版)

作者:高考题库网
来源:https://www.bjmy2z.cn/gaokao
2021-02-06 05:54
tags:

-

2021年2月6日发(作者:普通英语)


一、建立模型笔记



1


键盘上的键的功能


:X,Y,Z


分别控制所建立的模型围绕


X,Y,Z


三个轴做逆时针旋转


.


如果打开大小写锁定键


,


分边按


XYZ


时建立的模型会做顺时针旋转


.+


号的功能是加大模型旋转的角度,


-


号的功能是减小 模型旋转


的角度。



2


键盘上的上下左右四个键可以实现图形的向上向下


,


向 左和向右的移动


.


3


当在一个区域建 立多个模型的时候


,


有时候为了镜像单个模块儿


,


需要预先编组


,


编组的方法 如下


:


gen zon tunint p0 0 0 0 p1 0 10 0 p2 5 5 0 p3 0 0 -5 p4 5 10 0 &


p5 5 5 -5 p6 0 10 -5 p7 5 10 -5 dim sq2 sq2 1 sq2 1 1 1


group(


编组


) z1(


组名为


:z1)


&


fill group tunnel


4

镜像


整个


模型的方法


:

< p>
首先判断即将镜像的模型在原模型的哪个方向


(


即 三个轴的方向


)


,


然后在轴所在的方< /p>


向上去两个点


.


其中一个是


原点


(origin(xyz)


).


5


镜像


部分


模型的方法


: gen zone reflect normal (x,y,z) origin (x,y,z)


range group z1


就可以了


.


6

< br>特别要注意的一点


:


交叉巷道的巷道充填和巷道的网格是 两个组


,


所以在镜像的时候不要忘了给充填部分


镜像


.


7 group radcyl range group cylint not





(


编组的时候不包括


cylint)


7


快捷键总结



Ctrl+Z


局部缩放的功能。


Ct rl+R


的功能是恢复到初始状态。



8


模型建立的方法


:


方法


1:


利用默认值生成网格


,


各个默认值


:(1)p0


的默认值 是


(0,0,0),


网格的每边的单元格数

size


默认值是


10,


网格每边 的长度默认值为


size


的值


.


方法


2:


利用


4< /p>


个点的坐标来生成矩形网格


.p0~p3



size


方法

3:


利用


edge


来确定边长生成 矩形网格


.


方法


4:


利用参数


ratio


来确定单元体几何边画边生成矩形 网格


.


方法


5:

利用参数


add(


相对坐标


)


来生成矩形网格


.


方法

< br>6:


利用八个点的左边来生成矩形网格


.


9


、用户自定义模型的方法



我来贡献一点自己的成果:



FLAC 3D


的二次开发环境提供了开放的用户接口,在软件安装文件中包含了软件自带所有本构 模型的源代


码,且给出了


Mohr-Coulomb

< p>
模型和应变软化模型的编译示例,因此可以方便地进行本构模型的修改与开


发。为了方便起见,下面的说明以建立


UserModel


模型 为例。



(1)


在模型头文件


(usermodel.h)


中进行新的本构模型派生类的声明,


修改模型的


ID(


为避免与已有模型冲突,


一般要求大于


100)


、名称和版本, 修改派生类的私有成员,主要包括模型的基本参数及程序执行过程中主


要的中间变量。< /p>


( ? p6 u' J5 Q3 y( a


(2)


在程序


C++


文件


()


中修改模型结构


(UserModel::UserModel (bool


bRegister):


Constit


-utive


Model)


的定义, 这是一个空函数,主要功能是给


(1)


中定义的所有私有成员赋 初值,一般均赋值为


0.0




(3)


修改


const char **UserModel: roperties()


函数,该函数包含了给定模型的参 数名称字符串,在


FLAC3D



计算 命令中需要用到这些字符串进行模型参数赋值。



(4) const char **UserModel::States()


函数是单元在计 算过程中的状态指示器,可以按照需要进行修改指示器的


内容。



(5)


按照派生类中定义的模型参数变量修改


double


UserModel::GetProperty()



void


UserModel::


SetProp erty()


函数,这两个函数共同完成模型参数的赋值功能。


' U; e G' W


(6) const char * UserModel:: Initialize()


函数在执行


CYCLE


命令或大应变模式下对于每个模型单元


(zone)


调用一


次,主要执行参数和状态指示器的初始化,并对派生类声明中定义的私有变量进行 赋值。值得注意的是,


Initialize()


函数调用时没 有定义应变分量,但可以调用应力分量,但不能对应力进行修改。


9 n# e8 |' c- B/ q,


B B5 m


(7) const char * UserModel::Run()


是整个模型编制过程中最主要的函数 ,


它对每一个字单元


(sub-zone)

在每次循


环时均进行调用,由应变增量计算得到应力增量,从而获得新的应力。在计 算过程中,要根据单元应力情


况对单元状态指示器进行赋值。当进行塑性模型编制时,需 对达到塑性的应力状态进行修正。


2 [/ ~. U( A


G. b3 @6 ]. `


(8)


修改


const char * UserModel::Sa veRestore()


中的变量,修改方法同


(2)



(5)


,该函数的主要功能是对计算结


果进行保存。



(9)

程序的调试有两种方法。


①在


VC++

的工程设置中将


FLAC3D


软件中的

EXE


文件路径加入到程序的调


试范围中,并将

< p>
FLAC3D


自带的


DLL


文件加入到附加动态链接库


(Additional DLLs)

中,然后在


Initialize()


< br>Run()


函数中设置断点,进行调试;②在程序文件中加入

return()


语句,这样可以将希望得到的变量值以错


误提示的形式在


FLAC3D


窗口中得到。


10


、网格剖面的画法



方法:首先在命令行里输入


edit


11


、想知道有多少单元体和节点?



方法:用命令




print



info


12


、绘制塑形区域命令是什么?



方法:



Plot block state shear


获得剪切屈服的单元,包括


she ar-n



shear-p


Plot block state tension-p ;


获得过去拉伸屈服的单元



Plot block state now ;


获得当前处于塑性状态的单元,包括


shear-n



tension-n


Plot block state past ;


获得过去处于塑性状态的单元,包括


shear-p



tension-p


13



step


后面的数字是怎么确定的?



答:



14


、开挖模型的命令



Model null range group


组名



Model null range group x x


1,


x


2





画圈的正负号是啥意思?




:


正号表示


10


的正的 几次方


.


而负号表示负的几次方


.


11


、关于


ratio


ratio


代表单元体尺寸变化率,关于只需要记住一点:不同模型的两个尺 寸相等的面,采用相同的集合变化


率,网格才会重合,


rati o


对于减少单元的数目有很好的效果。



12


、地震波的模拟命令流



set dyn on


set dyn multi on


set large


free x y z range z -35.1 -34.9


去掉模型底部原有的静力条件



apply nquiet squiet dquiet ran z -35.1 -34.9


静态边界条件



table 1 read


apply szz -1.524293e7 hist table 1 ran z -35.1 -34.9 ;


加动力载荷



apply syz -1.26984e7 hist table 1 ran z -35.1 -34.9


apply ff



;


设置阻尼



set dyn damp rayleigh 0.05 7.14


set dyn time=0


/




/




参考资料




二、材料参数、边界条件,初始条件



1


要特别注意


fix x y z range z <


范围


>



fix z range z <


范围


>


之间的差别,前者是


x


y



z


三方向的位移全被


限制,后者只限制了


z


方向的位移。

< p>


[fix



x range (


范围


)


命令的功能是保 持网格节点在


x


轴方向制定的参数


(< /p>


速度、压力和温度


)


不变,


range


为指


定的范围


]


Fix x y z range x -0.1 0.1



表示


x=0


是一个平面,且是固定的< /p>



Fix x range




x -0.1 0.1



表示


x=0


是一个平面,只是

< br>x


的方向不能发生运动。



2



plot hist m vs n



其中


m


代表


y


轴,


n


代表


x


轴。



3



sxx sxy syy


这都是指那个方向


:


SXX< /p>



x


方向的正应力,

SYY



y


方向的正应力


, SXY


是指法向指向


x

轴方向平面(也就是


yz


面)上的


y


方向剪应力。



4

< br>、


history


命令






Hist unbal














监测不平衡力

,


并保留记录






Hist gp zdisp 4,4,8








监测网 格坐标点


(4,4,8)



z


轴方向的记录


,


并保留记录

.





Plot his -2 -3 vs 1








其中的符号表示图形的方向及位置的不同

,1


代表


hist


代码中的第一条 记录


,2




hist


代码中的第二条记录


,3


代表


hist


代码中的第三条记录


.


一次类推


.


补充:


在记录历史记录的时候可以自己定义记录的编号:如



his id 12 gp zdisp 4,4,4










































绘制图形


:





plot his 12



5


、在


fish


函数中



如:


(1)p_gp=gp_head




(


意思是指向节点表


)


那么后面肯定有一个:







p_gp=gp_next(p_gp) (


意思是查找下一个 节点的


ID



)






(2)



pnt=zone_head



;zone_head


指向单元体表







pnt=z_next(pnt)





;


查找下一个单元体表






6



sel del link range id 23


sel link id=23 23 target node


tgt_num



代表目标 节点的


ID





1,



7


、想知道一个节点的


x y z


三个分量则用它


:


;


已知


ID


def getgpxyz







gp1=find_gp(1)







gp1x=gp_xpos(gp1)







gp1y=gp_ypos(gp1)







gp1z=gp_zpos(gp1)




end


getgpxyz


print gp1x gp1y gp1z




8



交集就 是


range group a group b


指的是


a



b


的公共部分; 并集就是


range group a any group b any


指的是


a



b


两个部分;


Not


指的是出了什么什么之外。


-


-


-


-


-


-


-


-



本文更新与2021-02-06 05:54,由作者提供,不代表本网站立场,转载请注明出处:https://www.bjmy2z.cn/gaokao/606019.html

FLAC3D学习笔记(自己总结版)的相关文章

  • 爱心与尊严的高中作文题库

    1.关于爱心和尊严的作文八百字 我们不必怀疑富翁的捐助,毕竟普施爱心,善莫大焉,它是一 种美;我们也不必指责苛求受捐者的冷漠的拒绝,因为人总是有尊 严的,这也是一种美。

    小学作文
  • 爱心与尊严高中作文题库

    1.关于爱心和尊严的作文八百字 我们不必怀疑富翁的捐助,毕竟普施爱心,善莫大焉,它是一 种美;我们也不必指责苛求受捐者的冷漠的拒绝,因为人总是有尊 严的,这也是一种美。

    小学作文
  • 爱心与尊重的作文题库

    1.作文关爱与尊重议论文 如果说没有爱就没有教育的话,那么离开了尊重同样也谈不上教育。 因为每一位孩子都渴望得到他人的尊重,尤其是教师的尊重。可是在现实生活中,不时会有

    小学作文
  • 爱心责任100字作文题库

    1.有关爱心,坚持,责任的作文题库各三个 一则150字左右 (要事例) “胜不骄,败不馁”这句话我常听外婆说起。 这句名言的意思是说胜利了抄不骄傲,失败了不气馁。我真正体会到它

    小学作文
  • 爱心责任心的作文题库

    1.有关爱心,坚持,责任的作文题库各三个 一则150字左右 (要事例) “胜不骄,败不馁”这句话我常听外婆说起。 这句名言的意思是说胜利了抄不骄傲,失败了不气馁。我真正体会到它

    小学作文
  • 爱心责任作文题库

    1.有关爱心,坚持,责任的作文题库各三个 一则150字左右 (要事例) “胜不骄,败不馁”这句话我常听外婆说起。 这句名言的意思是说胜利了抄不骄傲,失败了不气馁。我真正体会到它

    小学作文