论坛首页    职业区    学术与写作    工程技术区    软件区    资料区    商务合作区    社区办公室
 您好! 欢迎 登录注册 最新帖子 邀请注册 活动聚焦 统计排行 社区服务 帮助
 
  • 帖子
  • 日志
  • 用户
  • 版块
  • 群组
帖子
  • 2324阅读
  • 2回复

matlab2016b调用flac3d3.0 [复制链接]

上一主题 下一主题
离线龙biscuit
 

发帖
323
土币
2510
威望
55
原创币
0
只看楼主 倒序阅读 使用道具 楼主  发表于: 2020-08-25
有时候需要批量处理,或者进行参数反演(比如用matlab的遗传算法调用flac3d进行计算,根据位移反演出各地层参数),就需要用到matlab调用flac3d。
过程如下:
1. 在flac3d主程序f3300.exe同目录(比如我的是E:\manualDownload\flac3D\flac3d300)下找到或新建一个FLAC3D.INI,内容写为flac3d要执行的代码:
  1. new
  2. call E:\manualDownload\flac3D\flac3d300\duncanEB\test\0-duncanEB-oneZoneTest.dat
new根据自己想需要添加或去掉。
2. 在同目录下新建一个bat文档:flac3dload.bat,内容为:
  1. start E:\manualDownload\flac3D\flac3d300\f3300.exe

当然,名字也可以根据自己喜欢的改动,新建bat其实就是新建一个txt文本文档,写好上面的命令后保存,把后缀名改为bat即可。此时双击flac3dload.bat就应该可以执行flac3d并计算0-duncanEB-oneZoneTest.dat命令了。
3.打开matlab,将f3300.exe的路径 E:\manualDownload\flac3D\flac3d300设为matlab的当前路径,并执行下面代码:
  1. clear
  2. clc
  3. [s,e]=dos('E:\manualDownload\flac3D\flac3d300\flac3dload.bat')

如下图所示,将路径粘贴到箭头所指位置,回车后即切换了matlab当前路径:

插图就大于字数限制了,不太好用啊。
或者在E:\manualDownload\flac3D\flac3d300路径下新建matlabCallFlac3d300.m,输入上述命令,直接运行,都可以成功调用flac3d300。
注意matlabCallFlac3d300.m一定与f3300.exe在同一目录下。

这儿没法直接放视频,在知乎放一个吧:[url]https://zhuanlan.zhihu.com/p/197809798[/url]
原创,转载请注明出处。
邮箱:blzhu@buaa.edu.cn ,欢迎交流!
离线王中豪

发帖
51
土币
2
威望
0
原创币
0
只看该作者 1楼 发表于: 2020-08-28
相互探讨,互相学习。
离线王中豪

发帖
51
土币
2
威望
0
原创币
0
只看该作者 2楼 发表于: 2021-04-10
楼主,求教。在上述的MATLAB-FLAC3D联合参数反演中,如何将MATLAB中优化算法更新的参数写入FLAC3D,调用FLAC3D计算后,又如何将计算结果调出到MATLAB中参与反演效果的比选?
相互探讨,互相学习。
快速回复
限100 字节
温馨提示:欢迎交流讨论,请勿纯表情、纯引用!
 
上一个 下一个

      浙公网安备 33010602003799号 浙ICP备14021682号-1

      工业和信息化部备案管理系统网站