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

[子程序] 为什么abaqus不支持fortran的自由格式:xxx.f90.只支持xxx.for

[复制链接]
发表于 2012-11-16 11:41:50 | 显示全部楼层 |阅读模式 来自 美国
写了一个creep的子程序,后缀名creep.f或者creep.f90, abaqus总是说找不到文件。然后把后缀名换成for了,文件找到了,可编译错误。自由格式比fixed form方便多了,为什么abaqus不支持呢?怎么把自由格式的程序换成fortran的固定格式呢?
发表于 2016-7-25 17:29:39 | 显示全部楼层 来自 湖北武汉
Simdroid开发平台
在abaqus_v6 fortran编译命令中加入 /free就可以了,然后fortran文嘉后缀是for
回复 1 不支持 0

使用道具 举报

发表于 2016-7-25 17:04:43 | 显示全部楼层 来自 江苏苏州
lsh_kai 发表于 2013-11-10 20:00
for  和 f 是一样的,关于 f90 理论上他是支持的,因为他是调用intel fortran 编译器,但是我没发现很简单 ...

请问怎么编译f90子程序? 直接用intel fortran编译的话,ABAQUS 不认; 而用ABAQUS编译的话,它找不到。能否说得具体点,给个简单示例? 谢谢!
回复 0 不支持 1

使用道具 举报

发表于 2012-11-16 12:12:29 来自手机 | 显示全部楼层 来自 四川成都
是支持自由格式的,你可以参考帮助文档的说明,也可以搜索本版,这个问题早已讨论过了。
回复 不支持

使用道具 举报

发表于 2012-11-16 18:48:11 | 显示全部楼层 来自 新加坡
这个abaqus编写程序的时候就太限制了,我也发现只能用 .for,如果用.f就报错....
回复 不支持

使用道具 举报

发表于 2012-11-16 19:18:49 | 显示全部楼层 来自 江苏苏州
tianjian 发表于 2012-11-16 18:48
这个abaqus编写程序的时候就太限制了,我也发现只能用 .for,如果用.f就报错.... ...

linux系统下的子程序就用.f可以的
回复 不支持

使用道具 举报

发表于 2012-11-16 23:53:21 | 显示全部楼层 来自 新加坡
JingheSu 发表于 2012-11-16 19:18
linux系统下的子程序就用.f可以的

原来如此,多谢版主。
回复 不支持

使用道具 举报

发表于 2012-11-18 17:58:43 | 显示全部楼层 来自 北京
.for和.f都是固定格式
win和linux确实不一样,我的机器上用.for而不能用.f,单位高性能计算上用.f而不能用.for。
自由格式没用过,不知道。
回复 不支持

使用道具 举报

发表于 2013-3-1 11:25:59 | 显示全部楼层 来自 湖南长沙
JingheSu 发表于 2012-11-16 19:18
linux系统下的子程序就用.f可以的

windows32系统下,CAE界面只支持for格式,请教总版主,怎么才能支持用F90格式呢?谢谢!

点评

版内搜索,好像有人提到过。  发表于 2013-3-1 14:10
回复 不支持

使用道具 举报

发表于 2013-11-10 20:00:53 | 显示全部楼层 来自 山东泰安
for  和 f 是一样的,关于 f90 理论上他是支持的,因为他是调用intel fortran 编译器,但是我没发现很简单的识别方法,我习惯了用f90 ,都是使用编译后的obj 文件来做子程序。很好用。。。缺点就是多了一步。。。
回复 不支持

使用道具 举报

发表于 2013-11-10 23:12:43 | 显示全部楼层 来自 北京
是支持自由格式的,个人认为.for并不代表固定格式,它只是一种后缀名。windows中,abaqus子程序调用时搜索的是.for后缀名或者.obj后缀名的文件。
我在编写的时候,把.for设成了自由格式的,这个在vs中修改就可以了,它默认.f90是自由,.for是固定的,我把所有的.for也加到了自由格式中。
然后需要改abaqus的环境文件abaqus_v6.env使之支持自由格式的代码(并不是说支持f90或者for,这两种现在的代码都是用自由格式写的)。
回复 不支持

使用道具 举报

发表于 2013-11-19 13:05:10 | 显示全部楼层 来自 澳大利亚
wufan3924 发表于 2013-11-10 23:12
是支持自由格式的,个人认为.for并不代表固定格式,它只是一种后缀名。windows中,abaqus子程序调用时搜索 ...

请问能否告诉一下详细的环境文件修改方法,谢谢。
回复 不支持

使用道具 举报

发表于 2013-11-19 19:33:17 | 显示全部楼层 来自 美国
wufan3924 发表于 2013-11-10 23:12
是支持自由格式的,个人认为.for并不代表固定格式,它只是一种后缀名。windows中,abaqus子程序调用时搜索 ...

约定后缀是for是固定格式,f90, f95, f2k, f2003是自由格式。应该是行业惯例了。编译器方面一般默认是这个实现。可以加选项调节,具体看文档,里面有强制使用自由格式或者固定格式编译的选项。
回复 不支持

使用道具 举报

发表于 2015-11-12 17:02:24 | 显示全部楼层 来自 湖南长沙
JingheSu 发表于 2012-11-16 19:18
linux系统下的子程序就用.f可以的

版主,请问一下,abaqus二次开发umat,学习哪个版本的Fortran啊,77、90、还是95?

点评

默认是77的,据说90也可以,我没试过。  发表于 2016-1-4 23:39
回复 不支持

使用道具 举报

发表于 2016-9-3 22:28:56 | 显示全部楼层 来自 陕西西安
在for文件中加条支持自由格式的命令就可以用自由格式了,百度下吧,指令忘记了。
回复 不支持

使用道具 举报

发表于 2017-11-13 16:11:00 | 显示全部楼层 来自 湖北武汉
wufan3924 发表于 2013-11-10 23:12
是支持自由格式的,个人认为.for并不代表固定格式,它只是一种后缀名。windows中,abaqus子程序调用时搜索 ...

请问你具体是怎么修改的呀,这样可以让abaqus调用自由格式的代码吗
回复 不支持

使用道具 举报

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

本版积分规则

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

GMT+8, 2024-4-19 21:58 , Processed in 0.063188 second(s), 17 queries , Gzip On, MemCache On.

Powered by Discuz! X3.5 Licensed

© 2001-2024 Discuz! Team.

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