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 ::