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

[二次开发] 请问大侠们:umat子程序可以用fortran90写吗?

[复制链接]
发表于 2011-2-14 08:37:36 | 显示全部楼层 |阅读模式 来自 北京海淀
网上有人说是可以的,只要编译器能编译,还有就是要进行一个什么链接设置,请高手指点一下具体怎么设置。万分感激!
发表于 2011-2-14 16:40:56 | 显示全部楼层 来自 湖北武汉
Simdroid开发平台
77和90都可以吧
回复 不支持

使用道具 举报

发表于 2011-2-14 20:22:18 | 显示全部楼层 来自 江苏南京
看你的版本,版本高的可以,印象中6.7以上的都可以。主要根据你安装的fotran编译器,6.7以上就配的是fortran9.0了。
回复 不支持

使用道具 举报

 楼主| 发表于 2011-2-14 22:29:03 | 显示全部楼层 来自 北京海淀
我装的是6.10,编译器装的是VC++ 2008和IVF11.1,直接可以用fortran90写子程序吗?需要另外设置一下以让ABAQUS能识别f90格式的子程序吗?好像ABAQUS默认的只识别for格式的子程序,帮助文件好像也只有for格式的子程序,请高手指点啊。 3# dwang
回复 不支持

使用道具 举报

发表于 2011-2-15 12:14:11 | 显示全部楼层 来自 安徽合肥
C:\SIMULIA\Abaqus\6.10-1\site\abaqus_v6

修改
compile_fortran=['ifort', '/c', '/Gm', '/recursive', '/nologo', '/heap-arrays:1', '/include:%I']

compile_fortran=['ifort','-free', '/c', '/Gm', '/recursive', '/nologo', '/heap-arrays:1', '/include:%I']
自由格式
回复 不支持

使用道具 举报

 楼主| 发表于 2011-2-15 18:11:54 | 显示全部楼层 来自 北京
谢谢aboux,我试试 5# ahoux
回复 不支持

使用道具 举报

 楼主| 发表于 2011-2-16 20:05:25 | 显示全部楼层 来自 北京海淀
在ABAQUS环境文件中
compile_fortran=['ifort', '/c', '/Gm', '/recursive', '/nologo', '/heap-arrays:1', '/include:%I']中
添加'-free'后原来的for格式的子程序就会出现编译错误,而且也还不识别f90的子程序啊。
有的人说是添加'f90-c-free',加了之后for格式的子程序编译没问题了,但仍不识别f90子程序。
是不是还要修改环境文件中的link_sl 啊?
请高手指点啊,万分感激!
回复 不支持

使用道具 举报

 楼主| 发表于 2011-2-18 22:05:01 | 显示全部楼层 来自 北京海淀
要沉了,求救啊!!
回复 不支持

使用道具 举报

发表于 2011-2-19 10:00:08 | 显示全部楼层 来自 安徽合肥
我把整个subroutine都按照f90改了(自由格式)
subroutine vumat(&
nblock, ndir, nshr, nstatev, nfieldv, nprops, lanneal, stepTime, totalTime, dt, cmname, &
coordMp, charLength, props, density, strainInc, relSpinInc, &
tempOld, stretchOld, defgradOld, fieldOld, stressOld, stateOld, enerInternOld, enerInelasOld, &
tempNew, stretchNew, defgradNew, fieldNew, stressNew, stateNew, enerInternNew, enerInelasNew )
implicit none
integer,parameter::precision = 4   !精度
integer i
!只读
character(len=80)::cmname
integer::nblock,ndir,nshr,nstatev,nfieldv, nprops,lanneal
real(kind=precision)::stepTime ,totalTime ,dt
real(kind=precision)::props(nprops) ,density(nblock) ,strainInc(nblock,ndir+nshr)  ,relSpinInc(nblock,nshr) ,coordMp(nblock,2) ,charLength(nblock)
real(kind=precision)::tempOld(nblock) ,stretchOld(nblock,ndir+nshr) ,defgradOld(nblock,ndir+nshr+nshr) ,fieldOld(nblock,nfieldv)
real(kind=precision)::tempNew(nblock) ,stretchNew(nblock,ndir+nshr) ,defgradNew(nblock,ndir+nshr+nshr) ,fieldNew(nblock,nfieldv)
real(kind=precision)::stressOld(nblock,ndir+nshr) ,stateOld(nblock,nstatev), enerInternOld(nblock) ,enerInelasOld(nblock)
!只写
real(kind=precision)::stressNew(nblock,ndir+nshr) ,stateNew(nblock,nstatev) ,enerInternNew(nblock) ,enerInelasNew(nblock)
!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!
do  i = 1,nblock
end do
return
end
回复 不支持

使用道具 举报

 楼主| 发表于 2011-2-22 14:14:29 | 显示全部楼层 来自 北京
楼上的在ABAQUS里运行成功了吗?需要别的设置吗? 9# ahoux
回复 不支持

使用道具 举报

发表于 2011-4-5 22:09:00 | 显示全部楼层 来自 北京
关注中!!!希望有人能来解答一下
回复 不支持

使用道具 举报

发表于 2011-4-9 20:32:04 | 显示全部楼层 来自 武汉大学
5楼的方法行得通。
回复 不支持

使用道具 举报

发表于 2012-11-29 23:00:01 | 显示全部楼层 来自 江苏南京
五楼的方法是不是应该改-free为free啊!!!望指正啊
回复 不支持

使用道具 举报

发表于 2015-6-2 18:01:15 | 显示全部楼层 来自 天津
5#的办法,我没行通呀!
回复 不支持

使用道具 举报

发表于 2015-6-2 18:52:28 | 显示全部楼层 来自 北京
ynn201314 发表于 2015-6-2 18:01
5#的办法,我没行通呀!

abaqus_v6.env文件中,compile_fortran的参数加一个'/free'。

如下:
  1. compile_fortran=['ifort',
  2.                  '/c','/DABQ_WIN86_64', '/extend-source',
  3.                  '/iface:cref', '/recursive', '/Qauto-scalar',
  4.                  '/QxSSE3', '/QaxAVX',
  5.                  '/heap-arrays:1',
  6.                   '/Od', '/Ob0',   # <-- Optimization
  7.                   #'/Zi',          # <-- Debugging
  8.                  '/include:%I',
  9.                  '/free'
  10.                  ]
复制代码



回复 不支持

使用道具 举报

发表于 2020-12-8 20:42:24 | 显示全部楼层 来自 黑龙江
先占个位置,之后再来看
回复 不支持

使用道具 举报

发表于 2021-7-26 19:40:33 | 显示全部楼层 来自 浙江杭州
关注中,啦啦啦啦啦啦
回复 不支持

使用道具 举报

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

本版积分规则

Simapps系列直播

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

GMT+8, 2024-9-30 23:59 , Processed in 0.053475 second(s), 14 queries , Gzip On, MemCache On.

Powered by Discuz! X3.5 Licensed

© 2001-2024 Discuz! Team.

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