gfortran

    0热度

    1回答

    我试图在Fortran中执行一个命令,因为我们的集群使用旧的编译器,所以我不能使用execute_command_line。所以我想切换到系统: succ = system("zip -0q " // zipfile & // " " // npy_name) if(succ /= 0) then write (*,*) "Can't execute z

    0热度

    1回答

    我有以下代码。 PROGRAM CTS implicit none !C driver for routine fourn INTEGER NDAT,NDIM PARAMETER(NDIM=1,NDAT=1024) INTEGER i,idum,isign,j,k,l,nn(NDIM) REAL data1(NDAT),data2(

    4热度

    1回答

    我想写一个bash脚本来自动安装(我知道,我知道,我应该使用make),它的目的是通用的:支持不同的编译器和编译标志。 举例来说,我有这些行: $FORTRAN_COMPILER $LINKERFLAGS lagrit_main.o lagrit_main.f $FORTRAN_COMPILER $LINKERFLAGS lagrit_fdate.o lagrit_fdate.f make $

    0热度

    1回答

    我有一个项目,需要使用常规gfortran编译器编译一些f90文件,有些需要使用mpifort包装器进行编译。我不知道如何正确编写CMake文件来适应这种情况。另外,我从来没有使用过CMake,也不熟悉它,但我试图从文档和(大部分是过时的)教程中了解。 我的项目目录如下所示: ├── CMakeLists.txt ├── README.md ├── bin ├── build ├── co

    2热度

    2回答

    我的代码中的一行将一个数组分配给一个未分配的数组。我认为这是一个错误,但令我惊讶的是它工作得很好。 program test implicit none real, allocatable :: x(:,:) real :: y(2,2) y = 1. x = y print*, x end program test 如何在内存方面工作

    1热度

    1回答

    我是Fortran的新手,一般编码,所以如果我的术语不正确,我很抱歉。 我正在使用gfortran编译器的Linux机器。 我在做这个夏天的研究,这涉及到我得到一个写于1980年左右的程序再次工作。它是用Fortran 77编写的。我拥有所有的代码以及一些关于它的文档。 以目前的形式,我收到“IEEE_UNDERFLOW_FLAG IEEE_DENORMAL”错误。我的第一个想法是,这个代码是为了

    2热度

    1回答

    我正在尝试编写一个类新过程,它为字符数组添加一个新字符,但不断在“数组构造函数中的不同字符长度”错误(使用GFortran编译),即使字符长度在我看到的情况下也是如此。 这里是我的功能: subroutine addToArray(this, newElement) class(MyClass), intent(inout) :: this character(len=*),

    1热度

    1回答

    我想重载一个我想用于多态指针的类型的赋值。我不知道指针在运行时持有的实际子类型。 但下面的示例代码重新奇怪编译器错误,我得到: module example type :: base_class real(4) :: some_garbage contains end type type, extends(base_class) :: sub_class real

    1热度

    1回答

    在C++库中的语法,如果我想要做一个自定义编译(意为连接额外的库),我通常做到以下几点: g++ filename -o outputname -I/include_libraries_here -L/link_libraries_here -rpath=path_for_dynamic_linking_here 我会如何做类似的事情使用gfortran。我试过了: gfortran file

    1热度

    1回答

    我的主代码存在一些问题,所以我试图找出问题所在。 因此,我有这样的小码: MODULE Param IMPLICIT NONE integer, parameter :: dr = SELECTED_REAL_KIND(15, 307) integer :: D =3 integer :: Q=10 integer ::