Fortran Coder

查看: 9960|回复: 8
打印 上一主题 下一主题

[子程序] 子程序中数组定义问题

[复制链接]

12

帖子

3

主题

0

精华

入门

F 币
54 元
贡献
30 点
跳转到指定楼层
楼主
发表于 2014-5-13 11:20:59 | 显示全部楼层 回帖奖励 |倒序浏览 |阅读模式
错误可能在最后的子程序那块、、

new.f90

30.3 KB, 下载次数: 3

错误可能在最后的子程序那块、、

分享到:  微信微信
收藏收藏 点赞点赞 点踩点踩

12

帖子

3

主题

0

精华

入门

F 币
54 元
贡献
30 点
沙发
 楼主| 发表于 2014-5-13 14:25:28 | 显示全部楼层
定义过了,在这一小短子函数前几行、

12

帖子

3

主题

0

精华

入门

F 币
54 元
贡献
30 点
板凳
 楼主| 发表于 2014-5-13 14:51:49 | 显示全部楼层
红色的地方
subroutine sysparameter(n)
      use IMSL
          use sys_p
          use mat_p
          use inmatx

      implicit real(8) (a-h,o-z)
          integer n
      dimension tm_mt(n/2,n/2)

      pi=3.1415926d0
            yge=2.058d11                               !弹性模量
          pp=7.810d3                                 !材料密度
      cc=0.20d-3                                 !轴承间隙  0.3    0.25
      ee1=0.06d-3                                !圆盘偏心量    0.09    0.05
          ee2=0.08d-3
      rou1=ee1/cc                                !无量纲偏心率
      rou2=ee2/cc

!!!!  轴承参数
!      brmt=0.25                                  !轴承长径比
      brad=50.0d-3                               !轴承半径
      bl=15.0d-3                           !轴颈长度
      byt=18.16d-3                                !润滑油黏度系数
      sfdrr=78.3d-3                           !油膜半径

      f1=(byt*sfdrr*bl**3)/(cc**2)
!          f1=(byt*brad*bl*((brad/cc)**2)*((bl/(2*brad))**2))    !/bm1    !sommerfeld数/omega

!write(*,*) somm
!!!!  转子参数      
          rleg=1.5d0                     !转子长度
          ra=0.7                              !(1.0/3.0)
          rb=0.5
          rc=rleg-ra-rb
          sa=pi*brad**2

             ris=pi*brad**4.0/2.0                         !转轴的截面惯性矩

!!!!  圆盘参数
          drad1=brad+100.0d-3                               !圆盘1半径  50.0d-3
          dleg1=40.0d-3                               !圆盘1宽度  25.0d-3

          drad2=brad+100.0d-3                               !圆盘2半径  50.0d-3
          dleg2=40.0d-3                               !圆盘2宽度  25.0d-3

!!!!  叶片参数  
      bn1=8.0                                      !叶片数量   第一个圆盘上的
            bll1=500.0d-3                                !叶片长度
      bs1=60.0d-4        !(30.0d-3)*(30.0d-3)                      !叶片截面积
          bha1=20.0d-3                                 !叶片轴向宽度
      zrad1=1.5d-3                                 !拉筋截面半径

          bn2=8.0                                      !叶片数量   第二个圆盘上的
            bll2=500.0d-3                                !叶片长度
      bs2=60.0d-4           !(30.0d-3)*(30.0d-3)                      !叶片截面积
          bha2=20.0d-3                                 !叶片轴向宽度
      zrad2=1.5d-3                                 !拉筋截面半径

      call para_disk_blade_fn(n,drad1,dleg1,bn1,bll1,bs1,bha1,zrad1,   &           !输入变量
                  diskm1,btka1,btkp1,btca1,btcp1,bbeta1,delta1,gtp1,gm1)           !输出变量

      call para_disk_blade_fn(n,drad2,dleg2,bn2,bll2,bs2,bha2,zrad2,   &           !输入变量
                  diskm2,btka2,btkp2,btca2,btcp2,bbeta2,delta2,gtp2,gm2)           !输出变量

      call  invm_fn(n,sa,ra,rb,rc,ris,diskm1,diskm2,gtp1,gtp2,gm1,gm2,tm_mt)     !质量矩阵
                  

          call sysk_fn(n,ris,ra,rb,rc,btka1,btka2,btkp1,btkp2,btca1,btca2,btcp1,btcp2,tkk)   !刚度矩阵  
                  

      call sysc_fn(n,ris,ra,rb,rc,gtp1,gtp2,btca1,btca2,btcp1,btcp2,gm1,gm2,tcc)   !阻尼矩阵

      call syscr_fn(n,rleg,brad,ris,tm_mt)

12

帖子

3

主题

0

精华

入门

F 币
54 元
贡献
30 点
地板
 楼主| 发表于 2014-5-13 15:00:36 | 显示全部楼层
那这里应该怎么弄?、、这前面的程序应该是对的,是找人调试好的,我修改的是最后的那块的,换了个求积方法,,前面应该没有问题啊····

12

帖子

3

主题

0

精华

入门

F 币
54 元
贡献
30 点
5#
 楼主| 发表于 2014-5-13 15:07:22 | 显示全部楼层
我试试、、、谢谢你~~~
您需要登录后才可以回帖 登录 | 极速注册

本版积分规则

捐赠本站|Archiver|关于我们 About Us|小黑屋|Fcode ( 京ICP备18005632-2号 )

GMT+8, 2024-5-19 08:19

Powered by Tencent X3.4

© 2013-2024 Tencent

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