fortran90相关内容
我在文件(number.txt)中存储了一个矩阵,如下所示: 123234565425431176534522 我如何在Fortran中读取此类矩阵,所以结果将是: 1 2 3 2 3 4 5 65 4 2 5 4 3 1 17 6 5 3 4 5 2 2 使用awk分隔这些列并在Fortran中读取它非常容易.但是,我想知道是否可以仅使用Fortran来完成所有这些工作.完成后,
..
我正在使用Fortran 90读取包含以下格式数据的文件 数字#125 var1 = 2 var2 = 1 var3:4....数字#234 var1 = 3 var2 = 5 var3:1 我尝试了以下命令,并且运行正常 读取(2,*)tempstr,my_param(1),tempstr,my_param(2),tempstr,my_param(3) 问题是当数字变大并且字符串和数
..
我不明白,因为逻辑类型仅具有两种情况: true 和 false ,因此为什么我们需要逻辑(1),逻辑(2),逻辑(4),逻辑(8)在Fortran中? 我们只需要 1位. 有人可以解释吗? 解决方案 首先,Fortran 不是说我们有逻辑类型,每个逻辑类型分别占用1、2、4和8个字节,它们当然不是 logical(1), logical(2), logical(4)和 log
..
Fortran中是否有一个内在函数生成一个包含从a到b的数字序列的数组,类似于python的 range() >>>范围(1,5)[1、2、3、4]>>>范围(6,10)[6、7、8、9] ? 解决方案 不,没有. 但是,您可以使用具有相同功能的构造函数初始化数组, 程序数组隐式无整数::我实数:: a(10)=(/(i,i = 2,20,2)/)打印*,一个结束程序arra
..
我想评估变量 myline 的第三个字母是否为'C'. 我尝试: 程序主要隐式无打字线整数::计数= 5字符(len = 48):: list ='ABCDE'终端类型类型(线):: myline字符(len = 1)::字母='C'写(*,*)myline%count,myline%listif(myline%list(3)== letter)然后write(*,*)'TRUE'别的wr
..
我写了 程序测试隐式无整数,参数:: N = 3real(8),参数::&A(N,N)= reshape((/1.5d0,1d0,1d0,1d0,1.5d0,2d0,1d0,1d0,3d0/),shape(A))&b(N)=(/5d0,-3d0,8d0/)打印*,A结束程序 保存为test.f,并使用 gfortran -ffree-form -Wall -Werror -ffree-lin
..
我正在将Fortran 90与gfortran编译器一起使用,作为cygwin的一部分.我想编写一个函数,该函数将在目录中创建一系列新文件夹,该目录也作为参数传递,该数字是新连续编号文件夹的最大数量.因为我必须声明字符(即字符串)的长度,而且还希望通用地能够传递不同的路径,所以我尝试将修剪后的字符串传递给函数. 程序主要隐式无字符(len = 6):: newdir字符(len = 27)::路
..
我有一个简单的Fortran 95程序 包括"sandboxlib.f95"程序沙箱隐式无write(*,*)'abc'结束程序 和一个包含函数的简单模块 模块sandboxlib整数,参数:: dp = kind(1.d0)包含函数cumsum(mat,m,n)result(c)隐式无real(dp),intent(in)::垫整数,意图(in):: m,n整数i,j实数(dp),维数(
..
我在Ubuntu 15.04系统上安装了gfortran.在编译Fortran代码时,DO循环要求仅采用整数参数,而不是实数值或变量.这包括循环变量和步骤表达式.为什么它也不能采用真实的价值? 以下是摘自此处的程序,该练习是本节的嵌套执行循环. 程序xytab隐式无!为x的值从1到2构造一个z = x/y的表,并且!y从1到4,步长为.5实数:: x,y,z打印*,'x y z'做x =
..
我正在尝试使用gfortran或g95编译器在Cygwin中编译建模程序.我已经安装了两个编译器,但是当我配置程序时,它会检查编译器,然后找不到(错误:Fortran编译器无法创建可执行文件).我是Cygwin的新手,我怀疑这与安装编译器的方式/位置有关……有什么想法吗? 谢谢 L. 解决方案 对我来说,使可执行代码通过此过程会更有用,因此我要介绍一些.这可以解决您的问题,
..
我想在现代的fortran(90或更高版本)中定义一个子例程,以打印矩阵(带整数或实数)或向量(带整数o数). SUBROUTINE print_matrix_vector(A)!我可以写什么类型?结束子程序 当然,我想调用一个子例程 CALL print_matrix_vector(A) 是独立的,如果A是实数或整数的矩阵,以及A是实数或整数的向量. 提前感谢您的评论.我认
..
我在linux上,正在编译以下内容: mpif90-共享源.F90 object1.o object2.o -L/some/path -Qoption,link,-rpath =/some/path -I/some/path -lhdf5 -lhdf5_fortran -fPIC -fpp-DDECDEC_ -DMSMS_ -cxxlib-gcc -o libhdfwrapper.so 我
..
以下代码可以编译,但我认为不应该.如您所见,输出是垃圾. 这是一个最小的失败示例,在我正在从事的一个大型项目中,这使我很难受. 我的问题是-为什么编译器不抱怨?这是编译器的限制,还是某种“预期的行为",而我错过了一些东西? 我正在使用gfortran 4.6.3. 模块dataModule整数:: datum1 = int(1)整数:: datum2 = int(2)终端模块d
..
我陷入了这个小问题.我想知道是否有可能将bash-shell脚本的变量传递给f90代码? 解决方案 我很确定之前已经在这里进行了讨论,但是我找不到确切的重复项. 您可以将参数直接作为参数传递给程序 ./程序arg1 arg2 您可以使用子例程 GET_COMMAND ARGUMENT 和 COMMAND_ARGUMENT_COUNT .单击链接以获取有用的示例. 在较早
..
我的问题是有关Fortran中的数组分配. 我有一个子程序,例如 readParams ,我想从文件中读取一些动态大小的数组.这些也可在子例程外部使用.处理此问题的最佳方法是什么? 在F95中,似乎不可能在子例程中进行分配,并将填充了值的数组传递回主程序.但是,如果我在主程序中分配它并在子例程中使用"intent(inout)",它也将被释放. (我在这里使用的是F90/95,但
..
我想掩盖一个Fortran数组.这是我目前的操作方式... where(my_array
..
文件说明:STL文件包含 solid小平面法线n1 n2 n3(三角形法线向量)外循环(我要阅读的标记之一)v1 x1 y1 z1v2 x2 y2 z2(三角形/小平面的三个顶点)v3 x3 y3 z3端环端面终固 想法是读取每一行中的信息.首先,我正在尝试!阅读第一行:固体 程序Leitura!use,固有的::修剪隐式无整数ilo,ierror,ihi,io
..
在我使用此命令时,我需要为Fortran代码中的不同文件定义一个变量名 open(unit=5,file="plot.sm") write(unit=zbin_str,fmt='(f5.2)') zbin plotname="LF_z"//zbin_str//".ps" write(5,"dev postencap" plotname) write(5,"toplabel LF fo
..
我要读取文件,例如: NE 32 0 IBZINT 2 NKTAB 936 XC-POT VWN ITER 29 MIX 2.00000000000000E-01 TOL 1.00000000000000E-05 我一直在寻找我正在寻找的ind
..
我在generation.f90 中具有以下子例程 SUBROUTINE generation(t, prob) IMPLICIT NONE INTEGER, INTENT(IN) :: t REAL(8), INTENT(OUT) :: prob INTEGER :: nT2, c Do some stuff with t, nT2 and c
..