回 帖 发 新 帖 刷新版面

主题:开个贴回答Fotran 的问题

开个贴试着回答Fortran的问题。有问题的请跟贴。
有两种问题不想回答:
1. Fortran文件读取方面的问题。
2. Fortran程序调试或者找程序中的错误。

回复列表 (共83个回复)

61 楼

source.F90和().f90有何区别?如何联系?
就是我在使用IVF时候,从文件里新建项目,出现的步骤是定义项目的名称--最后到(main probelm sample cod)的窗口,进去之后是是编辑页面,假入新建项目名称为f1的话,其文件格式为f1.f90。假如我只要在同一个编辑页面再添加新的项目的话,出现的项目格式有(include,resource,souce等),但是格式变为:source.F90(默认名,也可以修改)。我的意思是在同一目录下的这两种格式怎么联系?我想编写外部函数调用之类的

62 楼

回61楼:建的工程已经自动建立了联系。所以你要写程序直接在source.F90写f1.f90中调用就行。

63 楼

Thank you so much!

64 楼

我不知道这个两个矩阵相乘的子程序有什么错误,请您指教!还有就是在调用子程序时候,在主程序中要读入一些数据什么的,比如下面的子程序里需要读入A,B,输出C,这些步骤放到主程序里去做是否得当?怎么样会方便些?谢谢!
subroutine mx(A,B,C,s)
integer i,j,k,m,n
real A(n,m),B(m,n),s,C(n,n)
write(*,*)'A='
read(*,*)A
write(*,*)'B='
read(*,*)B
s=0
do i=1,n
  do j=1,m
    do k=1,m
s=s+A(i,k)*B(k,j)
     enddo
  C(i,j)=s
  enddo
enddo

write(*,*)'C=A*B=',C(i,j)
return
end

65 楼

请教:以前的一个compaq visual fortran的工程包 包含工程文件及源码文件 可以成功编译,用intel visual fortran转化该工程文件 并完全转成intel visual fortran的项目文件,编译出错 主要是链接错误lnk 2001  说找不到子程序中的_flush@4符号 
我看了下帮助 flush是fortran内部函数 需要使用use ifport
但是我想能不能调用某个库 不使用use 呢 ?因为以前没有use ifport也曾经成功过

66 楼

回65楼:不知道你的程序是怎样的,刚才测试了一下,我的IVF 不需要use ifport 就能使用flush。
程序如下:
program main


CALL FLUSH (6);
WRITE(6,*)"hello";
end;

67 楼


fortran 中给二维数组赋值,具体就是一个12乘12的矩阵,其中每个元素都是多项式,例如,EK(12,12)
我可否这么写
  EK(1,1)=a**2+b
           EK(2,1)=a**3+2*b
。。。。。。。。。。。。。。。。。。。。。
我就是这么写的,单为什么会有这样的错误。
EK(1,1)=1/(5*a**5*b**5)*2*(a**8*(156-36*v)+12*b**8*(13-3*v)+30* 
     a   a**7*b*(-13+3*v)+30*a*b**7*(-13+3*v)-120*a**5*b**3*(2+3*v)-120*a**
     a   3*b**5*(2+3*v)+10*a**6*b**2*(39+4*v)+10*a**2*b**6*(39+4*v)+
     a   5*a**4*b**4*(39+106*v))*ET 
最前面的a为续行符


E:\ractangular\rec.f(34) : Error: The shapes of the array expressions do not conform.   [EK]
      EK(1,1)=1/(5*a**5*b**5)*2*(a**8*(156-36*v)+12*b**8*(13-3*v)+30*

68 楼


您好,能给在下简要介绍一下IMSL库函数中求特征值EIG命令是怎么计算的吗?

69 楼

谢谢大家这段时间的回帖,很多问题还是很直得研究的。
但是本人因为有其它事情,决定中止该贴。

70 楼

甚为感谢trimtrim 帮我解决了很多问题 衷心感谢你付出的劳动

我来回复

您尚未登录,请登录后再回复。点此登录或注册