找回密码
 注册
Simdroid-非首页
查看: 174|回复: 11

[基础概念] 如何用DOS命令来让mmtc执行某个文件中的所有命令?

[复制链接]
发表于 2010-7-24 20:05:35 | 显示全部楼层 |阅读模式 来自 黑龙江哈尔滨
悬赏50仿真币未解决
本帖最后由 TBE_Legend 于 2010-7-25 14:04 编辑

不是闲着没事折腾,是要用一个优化软件modeFRONTIER联合mmtc和有限元软件ansoft来做一个优化,其中有一个关键步骤是:

如何用DOS命令来让mmtc执行某个文件中的所有命令?

即: 我有一个文件: pro.txt,其内容为mmtc的命令,比如为:

a=1
b=2
c= a+b*Sin[a*x]
Quit[];

要求一个dos命令或一个bat文件来让mmtc执行 pro.txt 中的所有命令,并所有的echo(就 Out[1]:= .... 的那些内容)放到一个文件中,如pro_log.txt中。

发表于 2010-7-25 01:54:17 | 显示全部楼层 来自 美国
Simdroid开发平台
版主自己做吧,还是挺容易的,就是文件操作。
回复

使用道具 举报

发表于 2010-7-25 12:55:15 | 显示全部楼层 来自 北京
对,方法很多,但基本上就是smarten的思路。比如:
  1. ToExpression[ReadList["test", String]]
复制代码
回复

使用道具 举报

发表于 2010-7-25 13:02:02 | 显示全部楼层 来自 北京
明白了,TBE_Legend 的问题 有一个地方比较棘手,就是向 math 传命令的问题
回复

使用道具 举报

发表于 2010-7-25 13:05:22 | 显示全部楼层 来自 北京
math -run 可以搞定
回复

使用道具 举报

 楼主| 发表于 2010-7-25 14:06:28 | 显示全部楼层 来自 黑龙江哈尔滨
多谢 smarten 和 Wayne 的关注:

这个问题来源于下面的这个很奇怪的程序。

本帖子中包含更多资源

您需要 登录 才可以下载或查看,没有账号?注册

×
回复

使用道具 举报

发表于 2010-7-25 14:45:20 | 显示全部楼层 来自 北京
本帖最后由 waynebuaa 于 2010-7-25 15:17 编辑
  1. math -run "Export["out.txt",ToExpression[Import["in.txt","Lines"]]]"
复制代码
要是在linux下好了,linux对命令行支持的很好的
回复

使用道具 举报

发表于 2010-7-25 14:50:01 | 显示全部楼层 来自 北京
最好自己用C写一个调用mathlink的程序。
回复

使用道具 举报

 楼主| 发表于 2010-7-27 14:31:32 | 显示全部楼层 来自 黑龙江哈尔滨
最好自己用C写一个调用mathlink的程序。
waynebuaa 发表于 2010-7-25 14:50


不用那么麻烦:一句话就行。

写个bat文件,然后里面写上:"C:\Program Files\Wolfram Research\Mathematica\7.0\math.exe"  < inp.txt > out.txt

双击bat文件即可。

我验证过了是可行的。
回复

使用道具 举报

发表于 2010-7-28 08:59:54 | 显示全部楼层 来自 北京
9# TBE_Legend Good!!!
回复

使用道具 举报

发表于 2010-7-31 15:51:39 | 显示全部楼层 来自 香港
9# TBE_Legend
inp.txt 这个文件应该放什么目录下呢?
放mmtc工作目录下面就可以了吗
回复

使用道具 举报

发表于 2010-9-5 17:29:24 | 显示全部楼层 来自 大连理工大学
版主救命,我也有一个类似的问题,就是怎样才能实现先打开并运行notebook1,然后关闭mathematica(或者kernel),重新打开并运行notebook2,以此类推到notebook40。
谢谢
回复

使用道具 举报

您需要登录后才可以回帖 登录 | 注册

本版积分规则

Archiver|小黑屋|联系我们|仿真互动网 ( 京ICP备15048925号-7 )

GMT+8, 2024-5-3 22:27 , Processed in 0.062152 second(s), 11 queries , Gzip On, MemCache On.

Powered by Discuz! X3.5 Licensed

© 2001-2024 Discuz! Team.

快速回复 返回顶部 返回列表