vs2019+ivf2020+abauqs2021关联验证,子程序Error,'ifort' 不是内部或外部命令,也不是
背景
某宝顾客找到我,说abauqs关联验证不会整。我一看,好家伙,又一个送钱来的,心中一阵窃喜!
折腾之路——遇见
一阵忙活之后,远程过去,顾客自己动手能力挺强的!
VS2019已经装好,IVF装的是2020 update3版,abaqus是2021版。
注意,本文说的是上述环境,如果你装个的是旧版的,比如vs2013+ivf2013等,不能按照这个代码来。
关联验证之前显示国际惯例,都分别运行一下,看看能不能跑起来。
搞了个Fortran的hello world示例,刷刷刷一下子就出结果了,毛病没有!
单独运行abaqus(ACE)这次刷刷刷两下子才出来,稍微慢了点。
眼看着没啥问题啊,难道今天又捡漏!
根据ACE快捷方式找到lancher.bat文件,刷刷刷这次很快啊,加了两行代码进去
保存,显示打开ACE瞅瞅能不能打开,好的,没有问题!

然后又找到abaqus的command目录,在abaqus.bat文件里面也加上两行一模一样的代码。
那还等啥,试试验证吧。
哥们我有经验啊,不像小白一样,直接开abaqus Verification做完整的验证,而是以管理员身份打开了cmd,直接输入
按回车键!
如图所示,能找到VS编译器,能找到Fortran的编译器!

那就试试单独验证子程序,同样的,以管理员身份再打开一个cmd(新开一个cmd噢),直接输入
按回车键!
正准备起身去泡杯茶等它出结果呢!
它刷刷刷地就出了结果,而且还显示Error,你说气不气人!

根据它的指示,需要去看 std_user.log文件,里面记录这详细信息。

emmmmmmm...
这是重点↓
这好像是一个比较经典的问题啊!
折腾之路——瞎折腾
无非就是来回折腾环境变量(顾客之前自己改过),返回关联验证,详细过程略过,反正就是搞不成。
折腾之路——喜从天降
正在郁闷的时候,顾客那边传来好消息!
他找另外一家,弄好了!
瞬间血压上升,看来我要落伍了,干不过同行!
偷师的好机会,跟顾客要了远程信息,远程过去。
同时让顾客回想高手同行都做了啥,顾客就轻描淡写的说了一句,就改了一个文件,然后就好了。
我去!这。。。这。。。这么简单, 这就是经验啊!给同行点个赞!

再一次cmd运行
过来,此时已经是PASS!!!
子程序验证能过,其他的应该问题不大。


解释下:
图片中第一行选中的就是解决问题的重点
这行代码的意思是给名为Path的环境变量添加一个新值(后面那一串路径),有兴趣的朋友可以去这个路径看下,这个路径下确实是有一个ifort.exe程序。
细心的朋友可能还会发现,另外一个叫ia32_intel64的文件夹下也有一个ifort.exe程序,那为啥不指定为ia32_intel64这个文件夹呢?!
因为第二行代码决定了要这样写!
-arch intel64 前面是一个参数,应该表示指定架构,后面就是这个参数的值,整一起的意思猜测为指定架构为Intel64,如果你上面想用ia32_intel64文件夹下的ifort.exe,那么你这里可以设置为 -arch ia32_intel64
第三方代码是配置mkl库,这是代替imsl的数学库
写在最后
电脑软维修。
祖传技术,百年传承,专业!
电脑郎中,妙手回春,神奇!
有需者请某宝搜索鄙人ID,有偿。
