fortran相关内容

从 Julia 调用 Fortran 函数,返回一个数组:未知函数,段错误?

我想从 Julia 调用我的 Fortran 库中的函数.在这种情况下,我有一个函数 eye,它接受一个整数,并返回一个二维整数数组. Fortran 模块被编译成一个共享库使用 $ gfortran -shared -fPIC -o matrix_routines.so matrix_routines.f90 然后我试图从交互式 Julia 解释器中调用它(名称从 nm 获得): 朱 ..
发布时间:2022-01-23 19:17:33 其他开发

显然无法将字符串附加到另一个

我有一个非常简单的问题,我还没有找到答案. 有什么方法可以将字符(特别是空格)附加到已经在 Fortran 中初始化的字符上? 显然 CHARACTER(2000):: 结果结果 = ''结果 = 结果//' ' 不工作. 解决方案 你想实现什么?当然可以,但是用处不大.尝试您在上一个问题中已经建议的方法.特别要注意的是,所有字符串在最后一个非空格字符后都用空格填充,这一点 ..
发布时间:2022-01-22 11:28:32 其他开发

Fortran 返回语句

我正在尝试在 gfortran 下编译一些在 g77 下编译良好的代码.问题似乎来自一个return语句: ffuncs.f:934.13: 返回 E1 错误:(1) 处的备用 RETURN 语句需要 SCALAR-INTEGER 返回说明符 在代码中,任何 E 都被指定为实数*8: 隐式实数*8 ( A - H , O -Z ) 然而,E 从来没有被赋予一个值或任何 ..
发布时间:2022-01-19 15:21:57 其他开发

函数结果中的 Fortran 类 (*)

我遇到了这篇文章中详述的函数的错误. 出现问题是因为我试图返回与输入类型.任何人都可以提出解决方案吗?我最初对每个都有一个功能类型,然后是通用接口将它们分组为相同的名称.现在我正在尝试使用多态性将所有内容放在一个函数中. 这是 gfortran 给我的错误. gfortran -o build/lib/foul.o -c -ffree-form -g -J./build/lib li ..
发布时间:2022-01-19 15:21:41 其他开发

Eclipse 与英特尔 Fortran 调试器

我的问题如下: 我想将 idb intel 调试器与 eclipse 一起使用,以便能够逐步完成我的代码,就像 idb -gui 一样.我已经尝试实现一个解决方案,我发现我用脚本替换了对 idb -gdb 的直接调用: #!/bin/bashexec/usr/local/soft/intel/fc/10.0.025/bin/ifort/idb -gdb "$@" 这实际上是有效的,因为它 ..
发布时间:2022-01-16 13:51:26 Java开发

是否可以确定哪个 Fortran 编译器生成了“.mod"?文件?

假设我的机器上已经安装了一个包,我想知道是否需要重新生成模块包含文件 (.mod) 以使它们与我的其余编译兼容.有没有办法做到这一点? 解决方案 我在库和模块文件的某些时候遇到了类似的问题,但没有源.因为在某些情况下,获得正确的编译器比获得重新编译的源代码更容易,或者只重新编译 OP 提到的少数东西,我发现在 SO 上的某个地方获得 gfortran 模块的版本控制很有用.不幸的是,信息不 ..
发布时间:2022-01-14 10:25:00 其他开发

不同等级的重载fortran接口

在 Fortran 模块中,我有一个函数,它接受一个数组及其名称,从数据库(实际上调用一个 C 函数)获取数组的形状,将数组复制到临时缓冲区并将缓冲区传递给另一个 C处理它的函数.此 Fortran 函数的名称为 fs_WriteData_i(用于整数数据)、fs_WriteData_f(用于实数)和 fs_WriteData_d(用于双精度).所有这些函数不仅接受一维数组,还接受 2D、3D 和 ..
发布时间:2022-01-14 10:24:50 其他开发

在 Ubuntu 上编译 Fortran netCDF 程序

好的,这里是新手问题. 我正在尝试编译 simple_xy_wr.f90 -- 一个 netCDF 示例程序 -- 在 Ubuntu 上使用 gfortran,我一定是在做一些非常愚蠢的事情;我没有太多编译 Fortran 的经验. 首先,我安装了 libnetcdf-dev 包,其中包括文件喜欢 /usr/lib/libnetcdf.a/usr/lib/libnetcdff.a/u ..
发布时间:2022-01-14 10:24:23 其他开发

如何编译lapack,以便在安装octave的过程中可以正确使用?

我正在尝试在运行 redhat+IBM LSF 的集群中从源代码安装最新的 octave 3.8.1.除了我自己的主目录之外,我没有其他任何地方的写访问权限,这就是为什么我必须从源代码安装 octave.集群提供的 blas 和 lapack 不起作用,所以我必须自己构建它们.我现在已经完成了blas和lapack的编译并通过了./configure,但是我运行make的时候报错如下: 这些 ..
发布时间:2022-01-14 10:24:13 其他开发

fortran 2003 中类型和类的区别

在攻读博士学位时,有人告诉我必须学习 fortran 2003 语言.我以前从未使用过 OOP 程序,也没有使用过 fortran.我试图了解类型和类之间的区别是什么.我知道类是用'TYPE'关键字声明的,但我也看到使用关键字'CLASS'的例子,所以我很困惑.希望这是有道理的. 解决方案 关键字type用来声明派生类型 -- 最好不要养成思考,也许是从外语导入的,type 用于声明称为 ..
发布时间:2022-01-14 10:23:54 其他开发

在 Fortran 中确定变量类型

在 Fortran 中,有没有办法确定变量的类型? 需要变量类型的可能用例如下.我们将变量的类型作为参数传递给函数,以便能够使用该函数调用特定于类型的代码,从而无需为每种数据类型使用单独的类似函数. 解决方案 如果你弄乱了 KIND 内在函数和指针,你也许可以做你想做的事,但如果你只关心函数的签名和子例程,留给 Fortran.如果你定义 函数 calc8(arg1)真实(8),意 ..
发布时间:2022-01-14 10:23:47 其他开发

“停止"和“停止"有什么区别?和“退出";在 Fortran 中?

Fortran中stop和exit有什么区别? 两者都可以通过一些错误信息立即终止程序. 解决方案 exit 在 Fortran 中是终止循环或完成其他构造执行的语句.然而,问题显然是关于非标准扩展,无论是作为函数还是子程序,由许多编译器提供,它与 stop 语句密切相关. 例如,gfortran 提供了这样的东西.p> 由于 exit 的这种使用是非标准的,您应该参考特定实 ..
发布时间:2022-01-14 10:23:37 其他开发

如何在fortran中阻止评论?

我见过 /* 块注释 */ 用于 C++ 中的块注释.我知道我可以使用 ! 或 c 进行行注释,但是在 Fortran 中是否有任何用于块注释的选项? 解决方案 不,块注释这个奇怪的概念对 Fortran 来说是陌生的.您的编辑器或开发环境可能会提供一种一次性注释一行代码的方法. ..
发布时间:2022-01-14 10:23:29 其他开发

用于 C、C++ 或 Fortran 的代码抛光器/重新格式化器

假设您有一堆由不同作者用 C、C++ 或 Fortran 编写的文件,在格式、如何注释等方面有不同的意见.我想很多人都知道这样的情况. 是否有任何免费工具可以达到以下目的: 统一的代码格式(缩进等) 创建标准评论正文 重命名变量 ? 解决方案 对于 Fortran,有 plusFORT,它可以做的比你要求的要多得多,比如重组代码和从 FORTRAN 77 翻译到 Fo ..
发布时间:2022-01-14 10:23:15 C/C++开发

如何确保我的 Fortran FORALL 构造被并行化?

我得到了一个代表金属板表面温度点的二维矩阵.矩阵(板)的边缘保持恒定在 20 摄氏度,并且在一个预定义的点有一个 100 摄氏度的恒定热源.所有其他网格点最初设置为 50 摄氏度. 我的目标是获取所有内部网格点并通过对周围四个网格点 (i+1, i-1, j+1, j-1) 进行迭代平均来计算其稳态温度,直到达到收敛 (迭代之间的变化小于 0.02 摄氏度). 据我所知,我遍历网格点的 ..
发布时间:2022-01-14 10:23:07 其他开发