fortran

    1熱度

    1回答

    在模塊中聲明的整數變量被用作一個全局變量以限定在節目相關的陣列的大小。程序的大小不同,所以數組的大小是一個變量,但不是一個參數。這是在節目開始時確定的。 在下面的代碼段中,n是全球大小可變。它在模塊中聲明並在主函數/程序的開始處定義。主程序中n的相似用法和主程序中包含的子程序分別初始化一個數組。但是,主程序中的初始化錯誤:模塊或主程序數組必須具有恆定的形狀誤差,但子程序中的初始化工作。在不同位置使

    1熱度

    1回答

    我試圖訪問一個數據塊時,它被定義的方式是如下 DATA NAME /'X1','X2','X3','X4','X5','X6','X7','X8','X9','10','11',00028650 1'12','13','14','15','16','17','18','19','20','21','22','23','24'/ 00028660 的代碼是在紙面上。請注意這是一箇舊代

    1熱度

    1回答

    我想Pythonize FORTRAN77代碼。有一段代碼,我似乎無法理解它的意圖。 ZM只是0和1之間的一個標量.Z是一個0到1之間的一維數組,其中包含NJ元素。 J,J1和J1M是INTEGER類型。 PDFZ是另一個帶有NJ元素的一維數組。我無法映射出執行流程。 DO 18 J=2,NJ IF(ZM.GT.Z(J)) GOTO 18 J1=J J1M=J-1

    1熱度

    1回答

    我在運行gfortran版本5.4.0的Linux機器上使用帶有Fortran的ieee_arithmetic。 當試圖初始化Inf和NaN的值時,我得到除零的錯誤。 ieee_arithmetic似乎沒有問題,因爲在文件的其他地方,我可以成功地調用ieee_is_finite()沒有問題。 我認爲ieee_arithmetic允許除以零被用於這些具體情況,但我必須失去一些東西。下面是一個代碼示例

    1熱度

    2回答

    據我所知,用戶派生類型的定義不能包含target屬性。例如,這是不允許的: type TestType integer, target :: t end type 然而,它的罰款對他們來說是一個指針: type TestType2 integer, pointer :: p end type 我的問題是,那麼,一個人如何可以用一個指針在對象的指向類型變量?例如,如果

    1熱度

    1回答

    如何操作命令行參數? 例如 te.f90 program print_ integer :: i character(len = 32) :: arg i = 1 Do call get_command_argument(i, arg) if (len_trim(arg) == 0) exit write(*,*) tr

    1熱度

    1回答

    我需要全局優化matlab中Fortran程序的參數輸入。該函數接受以如下方式輸入: z= fort_fun(X,str) 當X是十進制數和STR的向量是一個字符串。我需要爲1020個str中的每一個識別對應於最優X的最小z值。我可以通過將str聲明爲全局變量,並在父腳本結尾處使用本地定義的函數來執行此過程。然而,爲了更及時地執行我的代碼(< 1個月),我想爲平行PARFOR如下運行這個程序:

    1熱度

    1回答

    據this source,我會解釋該指定狀態=「老」應該是默認附加: OLD,如果文件被打開,但沒有更換 但是,這不是我的代碼中正在發生的事情。下面是一個例子: program openstat_test implicit none integer :: mystat mystat=0 print*,"Im trying to open a new fil

    1熱度

    1回答

    對於靜態陣列的一個可以顯式地定義的約束這樣的下: real, dimension(2:6) :: numbers 據我所知,動態陣列被聲明如下: real, dimension(:), allocatable :: numbers allocate(numbers(6)) 是否可以聲明具有下限和/或上限的動態數組?如果是,如何?如果不是,那麼這是不是還是不能實施?

    1熱度

    1回答

    我試圖使用gfortran在GNU平臺上編譯一些專有的Fortran代碼。有誰知道例程sortqq(Intel)或qsort_up(IBM)是否有開放源代碼的對應項?