ABAQUS与FORTRAN问题小结_第1页
ABAQUS与FORTRAN问题小结_第2页
ABAQUS与FORTRAN问题小结_第3页
全文预览已结束

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

1、ABAQUS与FORTRAN论坛问题小结Q:索了一下论坛发现以前的问题都是不同类型的子程序,如UEL, UMAT.这样把它们放在一个.for文件里不会有误会,但是如果都是UEL的话,该怎么识别呢?A:subroutine Umat()IF (CMNAME(1:4) .EQ. MAT1) THENCALL UMAT_MAT1(argument_list)ELSE IF(CMNAME(1:4) .EQ. MAT2) THENCALL UMAT_MAT2(argument_list)END IF上面是区分不同umat的方法,区分uel应该类似吧Q:行abaqus的时候出现这样的提示Problem d

2、uring compilation - df.exe not found in PATH.请问这是什么原因.A: 就是说找不到用于编译的df.exe文件(好像是Fortran的编译运行文件),在Windows控制面板的“系统”里,打开高级属性,将系统的PATH添加上Fortran的路径,最好也一并把INCLUDE和LIB也都添加上对应的FORTRAN的路径。Q: 如何在ABAQUS中调用用户子程序UMAT A:abaqus job=* user=*.for or *.objA: 装好fortran编译器的前提下,有两种方式:1、命令行:abaqus job=*.inp user=*.for或

3、abaqus job=*.inp user=*.obj (可以由*.f90编译后得到)2、菜单格式:先运行CAE,在general设置中可以指定Umat用户子程序A: job=jobname user=yourfortran.for(其它类型子程序)A:如果是本构的二次开发:*material, userQ: abaqus job=job-name user=source-file | object-filesource-file和object-file各是什么?A: fortran的源文件(.for)或者目标文件(.o)在command下面输入以上命令行就可以正常运行. 用户子程序再调用别的

4、fortran程序时,要加入abaqus 子程序中的include ABA_PARAM.INC。Q: 自己编写子程序需要哪些工作步骤A: 1.建立工作目录2.将abaqus安装目录6.4-pr11site下的aba_param_dp.inc 或 aba_param_sp.inc拷贝到工作目录,并改名为aba_param.inc ;3.将编好的fortran程序拷贝到工作目录;4.编译fortran程序,将.obj文件拷贝到工作目录;5.建立好输入文件.inp;6.运行abaqus job=inp file name user=fortan name即可。我的要运行abq64pr11 job=i

5、np file name user=fortan name我也学了没多久,按照这个过程成功了一个!你们试一下吧!Q: 想用FORTRAN实现:.result = SYSTEMQQ(abq job=e:abaqu*amplesbeam interactive).出错提示:ABAQUS ERROR:Unable to create a temporary directory C:DOCUME1ADMINI1LOCALS1TEMPAdministrato_ e:abaqu*amplesbeam_3628 to be used for scratch files.ABAQUS/Analysis exi

6、ted with errors.但如果是 result = SYSTEMQQ(abq job=beam interactive),但需要在FORTRAN弹出的DOS窗口里手工输入文件的绝对路径则计算正常。但我的目的是实现Fortran程序对ABAQUS的计算程序的自动调用。A: 说个投机的花招,有没有试过在前面加上result = SYSTEMQQ(path=e:/abaqu*amples)这样的命令方法简单,不过能解决问题最好A:把要算的工况都集中在一个文件夹下,fortran生成.exe文件,放在该文件夹下,然后双击运行。计算结束之后再把各种工况分类。笨招,但好用。A: 我想,或者把sys

7、temQQ改一下,先cd e:. ,然后再systemQQ(abaqus job=jobname interactive)。Q: 偶想在FORTRAN里设定一个计时器,其功能就是每隔一段时间(如10s)就去读一次ABAQUS的(.fil)文件。哪个函数可以实现这个功能?怎么实现?A: 通过一个while循环和下面的语句:call sleepqq(时间间隔)就可以了。Q: 本人尝试使用ABAQUS的子程序SUBROUTINE,根据帮助文件需要编译通过生成*.for和*.lib文件,可是编译的时候出现错误:Error: Cannot open include file ABA_PARAM.INC不

8、知道是什么原因,怎么解决?A: 1.确认Visual Fortran及VC+正确安装,并在安装ABAQUS之前安装。2.首先将用户子程序*.f文件后缀名改为*.for。3.到控制面板系统高级环境变量中的 Administrator用户变量:修改 变量名:lib变量值:C:Program FilesMicrosoft Visual StudioDF98LIB;C:Program FilesMicrosoft Visual StudioVC98LIB (我的问题就是因为只加了一个LIB,必须两个都加!)完成以上步骤以后,就可以运行了。Q: 怎样把自己编写的子程序倒入到*.INP文件中。A: Usi

9、ng the following command : abaqus job=job-id As can be seen this is no different from running a standard abaqus job. The user subroutine itself can be embedded in the abaqus input file. Here it is illustrated with the umat subroutine. .*END STEP*USER SUBROUTINES SUBROUTINE UMAT(.) . END .Alternative

10、ly the user subroutine can be in a separate file (say my_material.f) and the INPUT parameter is set to that file name. .*USER SUBROUTINES, INPUT=my_material.f . Q: 用Fortran SYSTEMQQ函数作批处理遇到问题,在fortran中使用result = systemqq(abaqus job=job1 interactive)作批处理,总是在计算两个job之后就不继续往下算了,cmd明令行提示:run time error:f

11、loating-point.请问这是怎么回事?A: 个方法就是做一个批处理文件,abaqus job=beam interactiveabaqus job=beam1 interactiveabaqus job=beam2 interactiveabaqus job=beam n? interactive存为.bat文件即可。python好像一般是做CAE前后处理界面的。A:前面加call.call abaqus job=1 interactivecall abaqus job=2 interactivecall abaqus job=3 interactiveQ:FORTRAN如何调用ABA

12、QUS?A: use the function system or systemqq USE DFLIB LOGICAL(4) result result = SYSTEMQQ(abaqus job=xx)QA: 首先我用ABAQUS的VARIFY命令对系统进行修正和检测,这个命令会自动运行,对ABAQUS进行调试等操作,其中涉及到对用户子程序的模拟计算,如果计算失败,就会在VARIFY.LOG文件中说明,确实发现USER SUBROUTINE.和SINGLE.和DOUBLE.失败,说明用户子程序安装不成功,肯定与VISUAL FORTRAN6.5有关!然后,找到FORTRAN_MAKE文本文

13、件,发现错误,可能是与FORTRAN安装有关!于是卸载FORTRAN,重新安装在C盘!安装完毕后,改变环境变量如下: INCLUDE C:Program FilesMicrosoft Visual StudioDF98IMSLINCLUDE;C:Program FilesMicrosoft Visual StudioVC98INCLUDE;D:程序文件VC98INCLUDE;LIB C:Program FilesMicrosoft Visual StudioDF98IMSLLIB;C:Program FilesMicrosoft Visual StudioDF98LIB;C:Program F

14、ilesMicrosoft Visual StudioVC98LIB;D:程序文件VC98LIB;PATH C:Program FilesMicrosoft Visual StudioCommonTools;D:程序文件VC98BIN;%SystemRoot%system32;%SystemRoot%;%SystemRoot%System32Wbem;C:KAV6;D:程序文件KV6;c:program filesmicrosoft visual studiodf98bin;c:program filesmicrosoft visual studiovc98bin;c:program filesmicrosoft visual studiocommonmsdev98bin;D:ABAQUSCommands;C:Program FilesMicrosoft Visual StudioDF98BIN我们只需要关注MICROSOFT VISUAL STUDIO文件夹!最后,再次执行VARIFY命令,等运行完毕后,检查VARIFY文本文件,发现: ABAQUS/Standard with User Subroutines.PASSContinuing.ABAQUS/Explicit with User Su

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论