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

[子程序/二次开发] 子程序调试必读!大家多多支持,第一次发技术贴

[复制链接]
发表于 2012-3-5 16:44:40 | 显示全部楼层 |阅读模式 来自 黑龙江哈尔滨
学习marc很长时间了,子程序的学习用了我大部分时间,经过长时间的时间,我发现了一个代码非常好用,在调试子程序时这两句话可以使你的效率大大提高,很快定为到问题处,今天分享给大家,多多支持!!!代码如下:
      OPEN(UNIT=10,FILE='text.txt')
      WRITE(10,*) N(2)
虽然非常简单,但是非常有用!
下面介绍一下如何使用这两个代码。我想大家一看便知,这两句话的意思无非是建立一个文件,然后写入一些东西,对,就这么简单,但是在调试子程序时作用很大的~~
下面这是我做激光焊接模拟时的子程序代码,激光焊接热源模型是用高斯柱状热源和高斯面热源复合来完成的,不做解释,主要介绍那两句代码的用处。
      subroutine flux(f,temflu,N,time)
      implicit real*8 (a-h,o-z)
      dimension N(3),temflu(6)
      REAL rb,h,b,z0,r0,k,p,v,pi,ka,kb,c,ib,d
c      OPEN(UNIT=10,FILE='text.txt')
c      WRITE(10,*) N(2)
        r=sqrt((temflu(4)-v*time)**2
     &    +temflu(5)**2)
        c=abs(temflu(6))
        if((N(2).eq.3).and.r.le.r0) then
            IF(c.le.z) THEN
         ib=kb+b
                f=ib*exp(-2*r*r/(rb*rb))*exp(-h*c)
             ELSE f=0
             END IF
        else if((N(2).ne.3).and.r.lt.10*rb) then
             rb=10*rb
             f=0.7*2*p*(1-k)/(pi*rb*rb)*exp(-2*r*r/(rb*rb))
        else f=0
        end if  
      RETURN
      END
如果把代码加在开头,那么通过看当前文件夹里有没有生成text.txt的文件就可以确定子程序是否编译成功。
当你想知道子程序里某个变量的数值时,就可以把N(2)换成相应的变量,这样就会在该文件里输出变量的数值。
小弟菜鸟一个,忘大侠们多多关照,第一次发技术贴,希望大家多多支持,谢谢了!!!

评分

1

查看全部评分

发表于 2014-6-14 21:25:14 | 显示全部楼层 来自 湖北武汉
Simdroid开发平台
yanghongyu 发表于 2012-4-7 10:53
楼主 你能不能告诉我怎样在vs2005中调试fortran子程序啊?万分感谢

看log 文件,他会提示subroutine 哪里有问题。
回复 1 不支持 0

使用道具 举报

 楼主| 发表于 2012-3-5 19:13:24 | 显示全部楼层 来自 黑龙江哈尔滨
伤心呀!没人看!
回复 不支持

使用道具 举报

发表于 2012-3-5 22:59:27 | 显示全部楼层 来自 福建三明
这么好技术贴 一定要收藏 感谢LZ分享!
回复 不支持

使用道具 举报

 楼主| 发表于 2012-3-6 13:57:22 | 显示全部楼层 来自 黑龙江哈尔滨
为什么没有人看呢!!!难道大家都知道这个方法了!!!好失望……
回复 不支持

使用道具 举报

发表于 2012-3-7 23:00:34 | 显示全部楼层 来自 天津
楼主,你的东西还是很有用的,我最近也想把数据输出出来,不过就是不行,包括你的方法,是不是子程序有问题啊?
不过.log里面说
         This is a successful completion to an MSC.Marc
             analysis, indicating that no additional incremental data was
             found and that the analysis is complete.
那是哪里有问题呢?
回复 不支持

使用道具 举报

发表于 2012-3-7 23:10:36 | 显示全部楼层 来自 天津
是我程序有问题,谢谢楼主了,这个东西对初学者还是挺有用的
回复 不支持

使用道具 举报

发表于 2012-3-9 17:43:57 | 显示全部楼层 来自 陕西西安
说的不错。。有启发。
回复 不支持

使用道具 举报

发表于 2012-3-12 21:46:40 | 显示全部楼层 来自 广东广州
LINK : fatal error LNK1181: 无法打开输入文件ws2_32.lib

楼主能帮忙解决这个问题么~?
回复 不支持

使用道具 举报

发表于 2012-3-13 16:37:54 | 显示全部楼层 来自 四川成都
我的是这样的问题,请楼主施以援手:fatal error LNK1112: 模块计算机类型“X86”与目标计算机类型“x64”冲突
回复 不支持

使用道具 举报

发表于 2012-3-24 17:05:08 | 显示全部楼层 来自 江苏南京
支持楼主的东西 对于我们新手来说 很有用
回复 不支持

使用道具 举报

发表于 2012-4-7 10:51:35 | 显示全部楼层 来自 吉林大学前卫南区
楼主 请教您一个问题 我的子程序在调用时出现如下错误:: error #5149: Illegal character in statement label field  [?]

                                                                              : error #5149: Illegal character in statement label field  [?
怎么解决啊,退出号3.
我不会在vs2005中编译程序,找不到这个选项。写出字程序后直接调用的,我都是一个一个代码检查的,不知道错误在哪里。
回复 不支持

使用道具 举报

发表于 2012-4-7 10:53:23 | 显示全部楼层 来自 吉林大学前卫南区
楼主 你能不能告诉我怎样在vs2005中调试fortran子程序啊?万分感谢
回复 不支持

使用道具 举报

发表于 2012-4-12 13:40:09 | 显示全部楼层 来自 浙江湖州
楼主要是真的热心的话,将在vs2005中调试fortran子程序的详细过程图,截图截下来,让我们这些菜鸟学习下!
回复 不支持

使用道具 举报

发表于 2012-4-12 14:44:42 | 显示全部楼层 来自 大连理工大学
楼主,问个问题,你用的Fortran95的还是77的?有没有什么推荐的书?我是个新手,周围没有人开发子程序,我没有头绪啊!希望能指导一下?
回复 不支持

使用道具 举报

发表于 2012-4-30 20:40:29 | 显示全部楼层 来自 湖南长沙
你好,我也在做激光焊接的模拟,我想问一下,你的材料是哪种材料?
回复 不支持

使用道具 举报

发表于 2012-4-30 20:49:52 | 显示全部楼层 来自 湖南长沙
还有就是,楼主的子程序subroutine dflux(f,temflux,n,time),为什么论坛里的都是subroutine dflux(flux,sol,kstep,kinc,time,noel,npt,coords,jltyp,temp,press,sname),有什么区别?还有就是可否推荐一下你当初学习的相关资料
回复 不支持

使用道具 举报

发表于 2012-11-13 22:16:03 | 显示全部楼层 来自 福建泉州
546823810 发表于 2012-4-30 20:49
还有就是,楼主的子程序subroutine dflux(f,temflux,n,time),为什么论坛里的都是subroutine dflux(flux,sol ...

希望交流!
回复 不支持

使用道具 举报

发表于 2012-11-13 22:14:09 | 显示全部楼层 来自 福建泉州
王兆喜 发表于 2012-4-12 14:44
楼主,问个问题,你用的Fortran95的还是77的?有没有什么推荐的书?我是个新手,周围没有人开发子程序,我 ...

去看谭浩强的RORTRAN77吧简单易懂,图书馆都有的  
回复 不支持

使用道具 举报

发表于 2013-1-4 15:24:42 | 显示全部楼层 来自 清华大学
谢谢楼主!
回复 不支持

使用道具 举报

发表于 2013-1-11 15:04:31 | 显示全部楼层 来自 江苏南京
子程序还没研究,先收藏了,谢谢
回复 不支持

使用道具 举报

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

本版积分规则

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

GMT+8, 2024-4-25 19:34 , Processed in 0.074564 second(s), 16 queries , Gzip On, MemCache On.

Powered by Discuz! X3.5 Licensed

© 2001-2024 Discuz! Team.

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