cost 427 ms
Fortran 2008 中方括号初始化数组的等级是多少? - What is the rank of a square bracket initialized array in Fortran 2008?

我想了解以下 fortran 代码是否符合 Fortran-2008 标准。 上面的代码适用于gfortran-9.4.0并生成预期的 output。 由于我是 Fortran 的初学者,我对方括号表达式(在代码中标记)感到困惑。 在 function tt内部, a和b都是t类型的数组。 在这个 ...

我可以只使用 ALLOCATABLE 变量而不是指针在 Fortran 中创建链表吗? - Can I create a Linked list in Fortran only using ALLOCATABLE variables and not pointers?

我可以通过这种方式创建没有指针的 Fortran 链表吗: 列表: 链接列表: 这个列表在用于创建链接列表时会起作用吗? 可能会出现什么问题,有什么缺点吗? 指针相对于可分配对象有哪些优势? ...

如何对接口定义在子模块中的函数进行单元测试 - How to unit test functions whose interfaces are defined within submodules

在我看来,子模块的一个不错的特性是您可以在子模块中创建一个帮助程序 function,而程序员的成本非常低; 您不会触发编译级联,不会弄乱命名空间或文档,并且可以立即清楚 function 可以在哪里使用和不能在哪里使用。 它们就像private函数的更好版本。 但是,子模块中的函数不能use d. ...

“gfortran -Wconversion”的奇怪行为 - Strange behavior of “gfortran -Wconversion”

考虑以下代码。 用gfortran编译时如下: 我收到以下警告: 请注意, gfortran对前两次转换感到满意,但对最后一次不满意。 问题:上面说明的警告是gfortran的预期行为吗? 我认为在这三种情况中的任何一种情况下都不应该产生警告,因为转换是由REAL( , INT64)明 ...

指向 arrays 的指针作为 Fortran 派生类型中的成员变量 - Pointers to arrays as member variables in Fortran derived type

Fortran 无法将派生类型的成员变量作为目标。 (我想这与未指定派生类型如何存储在 memory 中的标准有关?)但是,我可以将指针作为成员变量并将指针与指针相关联。 就像我在下面的例子中所做的那样。 在 set 例程中,我使用一个 if 语句来设置一个指针,以决定它是否应该将传入的矩阵转储 ...

在创建单独的模块过程时,您会在什么情况下在子模块中使用“模块过程”? - In what situation would you use “module procedure” in a submodule when creating separate module procedures?

我了解 Fortran 2008+ 中子模块的一般好处,但我无法理解其中一种语法选项的好处。 如果我想创建单独的模块过程(过程主体在子模块中),我需要在父模块中创建一个接口。 该接口必须包含子例程或 function 标识符以及参数列表和意图。 这一切都说得通。 然后子模块包含过程的实现,但可以选 ...

Fortran 构造函数返回指向已分配对象的指针 - Fortran constructor returning pointer to allocated object

在这个问题中: Fortran Functions with a pointer result in a normal assignment ,声明不推荐函数返回指针。 我的问题涉及用户定义类型的构造函数。 考虑下面的代码: 在代码中,我定义了一个带有构造函数的类型,该构造函数分配对象,然后 ...

Fortran中嵌套模块和子模块的使用有什么区别? - What is the difference between use of nested modules and submodules in Fortran?

我有一个名为“mainmodule.f08”的模块和两个模块“module1.f08”和“module2.f08”。 在“mainmodule.f08”中,我有: 我可以使用“module1”和“module2”中的程序,只说明在我的程序中use mainmodule 。 使用子模块可以做同样的事 ...

如何在Fortran中将多态数据类型用作另一个数据类型的属性 - How to use polymorphic data type as attribute of another data type in Fortran

我创建了一个名为“ element”的类,它具有多个属性和类型绑定过程。 属性之一是抽象类类型“ kin”,它具有两个继承的类型“ kin1”和“ kin2”。 我希望能够在运行时使用构造函数根据输入将'kin1'或'kin2'作为属性分配给对象'element'。 目的是要有一个元素列表 ...

使用定义的输入过程从Fortran中的二进制文件读取错误值 - Reading bad values from binary file in Fortran with a defined input procedure

我正在尝试编写一个简单的代码,该代码将具有相同父级抽象类的某些对象带入一个二进制文件中,然后将它们读回。 我的代码如下所示: 问题是,在读取o1 ,它的类型为b ,即该对象具有两个组件num和num2 。 我存储了它,我自然希望读取的值与写入的值相同。 但是我得到了与在Fo ...

在Fortran数组中删除变量? - Variables being deleted in Fortran Arrays?

我有以下代码,具有抽象类型,继承的类型和简短的程序,在其中创建对象并将其存储在数组中。 问题是,输出看起来像这样: 可以看出,存储在数组中的相同变量使第二个变量无效。 为什么会这样呢? 是否因为数组的类型为a ,而该数组仅包含第一个变量? 我正在使用ifort vers ...

Fortran 2008 - 用户定义的CLASS I / O过程(*) - Fortran 2008 - user defined I/O procedure for CLASS(*)

我正在尝试创建一个类型,它可以作为任意其他类型的包装器,因此我可以创建一个异构数组,因为它建议在Fortran类的异构数组和Fortran中 创建异构数组 。 所以,我试图像这样实现它: 现在我收到了错误 所以我尝试像这样实现I / O: 但即使在我的新方法中也会出 ...

Fortran 类的异构数组 - Heterogeneous array of Fortran classes

我有一个抽象类型和几个继承自他的类型。 现在我需要制作这些继承类型的实例数组,但我不确定,在 Fortran 中是否可能。 我尝试制作一些包装器类型,例如在 Fortran中创建异构数组。 但我收到此错误: 我究竟做错了什么? 或者有没有其他正确的方法来做到这一点? 尝试 2 我根据 ...


 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM