ADINA二次开发中遇到的问题,希望版主能帮忙
问题陈述:现在正在做ADINA二次开发,首先我把“亚得科技”中线弹性模型的例子采用Compaq Visual Fortran6.6 编译形成adusr.dll 后,将adusr.dll COPY到BIN/ 目录下覆盖原来的adusr.dll文件,采用ADINA8.3.1运行后屏幕提示“ADINA data input file E:\*.dat successfully updated.”然后就不运行了(我在Data File/Solution 出现的画面中已经点选了Run Adina),只有采用原安装文件下的adusr.dll才会出现Adina 计算过程中的运行窗口,不知道是什么原因啊,请大家帮忙分析一下。为便于大家分析,我把我的二次开发步骤叙述如下:
1、源程序见附件:Linear elastic 3D.f;
2、将Linear elastic 3D.f 文件名修改为ovl40u_le3D.f(按照亚得科技的步骤进行);
3、编辑Makefile.adusr文件,修改其中的参数:MAT3D_OBJ = ovl40u_le3D.obj;
4、在DOS下运行“C:\Program Files\Microsoft Visual Studio\DF98\BIN>dfvars
”显示“Setting environment for using Visual Fortran tools”
5、在DOS下运行“C:\Program Files\ADINA\ADINA System 8.3\usrdll>nmake /f makefile.adusr
”显示如下:
Microsoft (R) Program Maintenance Utility Version 6.00.8168.0
Copyright (C) Microsoft Corp 1988-1998. All rights reserved.
df.exe /compile_only /dll /nologo /warn:nofileopt ovl20u.f
ovl20u.f
df.exe /compile_only /dll /nologo /warn:nofileopt ovl30u.f
ovl30u.f
df.exe /compile_only /dll /nologo /warn:nofileopt ovl40u.f
ovl40u.f
df.exe /compile_only /dll /nologo /warn:nofileopt ovl50u.f
ovl50u.f
df.exe /compile_only /dll /nologo /warn:nofileopt ovl60u.f
ovl60u.f
df.exe /compile_only /dll /nologo /warn:nofileopt ovl100u.f
ovl100u.f
df.exe /compile_only /dll /nologo /warn:nofileopt ovl110u.f
ovl110u.f
df.exe /compile_only /dll /nologo /warn:nofileopt ovl160u.f
ovl160u.f
df.exe /compile_only /dll /nologo /warn:nofileopt ovl170u.f
ovl170u.f
df.exe /compile_only /dll /nologo /warn:nofileopt ovl30u_vp1.f
ovl30u_vp1.f
df.exe /compile_only /dll /nologo /warn:nofileopt ovl40u_le3D.f
ovl40u_le3D.f
df.exe /compile_only /dll /nologo /warn:nofileopt ovlusr.f
ovlusr.f
link.exe /nologo /subsystem:windows /dll /incremental:no /pdb:"adusr.pdb
" /machine:I386 /out:"adusr.dll" /implib:"adusr.lib" ovl20u.obj ovl30u.obj ovl40
u.obj ovl50u.obj ovl60u.objovl100u.obj ovl110u.obj ovl160u.obj ovl170u.objov
l30u_vp1.obj ovl40u_le3D.obj ovlusr.obj
Creating library adusr.lib and object adusr.exp
6、将“C:\Program Files\ADINA\ADINA System 8.3\usrdll\”目录下生成的adusr.dll文件COPY到“C:\Program Files\ADINA\ADINA System 8.3\bin\”目录下。
7、采用ADINA进行任意一个算例的计算,就仅出现LOG WINDOW 窗口,显示“ADINA data input file E:\*.dat successfully updated.”,不再进行下一步的计算了。
请帮忙分析一下是何原因。
源文件及编译好的adusr.dll见附件。下载后请将ovl40u_le3D.zip改为“ovl40u_le3D.f”,adusr.zip改为“adusr.dll‘
[ 本帖最后由 alert_man 于 2007-4-25 19:30 编辑 ] 要分两步
cd C:\Program Files\Microsoft Visual Studio\DF98\BIN
C:\Program Files\Microsoft Visual Studio\DF98\BIN dfvars
就在windouw操作系统下,在运行里面输入CMD进入简易的dos系统,在里面利用简单的dos语句cd 就逐步进入下一级子菜单了,设定一次就可以了,(fortran6.6a的安装路径没有变化)下次编译不需要重复进行。
这么冷清阿
自己顶一下。ADINA论坛这么冷清阿。希望大家能积极参与进来,一起探讨。 我最近也出现了楼主说的这个问题
用ADINA8.3.1运行后屏幕提示“ADINA data input file E:\*.dat successfully updated.”然后就不运行了(我在Data File/Solution 出现的画面中已经点选了Run Adina)
后来没办法把ADINA重装了一次就好了,比较诡异。。。
回复 1# alert_man 的帖子
这个问题我已经解决,因为你ovl40u_le3D.f中的参数比adina8.3.1源程序默认的参数少,少了一个数组DCA,增加一个定义数组就行了。有时间你仔细对照adina8.3中的源程序和你ovl40u_le3D.f中的参数,就会知道了,你可以试试。 学习了,顶起来 弱弱地问一下:怎样“在DOS下运行“C:\Program Files\Microsoft Visual Studio\DF98\BIN>dfvars
”呢?
页:
[1]