包 pyhwm14 在导入语句中出错

问题描述 投票:0回答:1

我的学士论文需要水平风模型,为此我需要航天器的空气动力速度。我检查了多个提供高层大气风速的风模型,最好的确实是 hwm,其源代码是用 Fortran90 编写的。

幸运的是,有一个名为 pyhwm14 的 python 包装器包。使用 pip 安装一切顺利。但是当我如下使用该包时:

from pyhwm2014.pyhwm14 import HWM14, HWM14Plot

出现以下错误。

 File "C:\-\lib\site-packages\pyhwm2014\__init__.py", line 7, in <module>
    from . import hwm14
ImportError: DLL load failed while importing hwm14: The module could not be found. 

为了解决该错误,我尝试查看包文件夹目录并获得以下文件图片:

  1. .libs

  2. _pycache_

  3. _初始化_.py

  4. hwm14.cp310-win_amd64.pyd

我假设_init_.py中需要导入的文件hwm14只能是目录中存在的hwm14.cp310-win_amd64.pyd文件,但是为什么Python找不到它而不是跑步?

解决导入错误或查找其他没有此类问题的包。

当然,如果有人有包装器的经验,并且可以教我如何在 python 中使用源 f90 代码,这也很棒。

谢谢大家

python model fortran f2py
1个回答
0
投票

试试这个:

  1. 安装 mingw64 (x86_64-8.1.0-release-posix-seh-rt_v6-rev0 对我有用)
  2. 将mingw64的bin文件夹添加到PATH
  3. 进入项目根文件夹
  4. https://github.com/rilma/pyHWM14
  5. 的源代码运行安装

git clone https://github.com/rilma/pyHWM14.git

cd pyHWM14

pip -q install coveralls

pip install numpy

pip install -e . 

  1. 在\pyHWM14\pyhwm2014.libs中找到.dll文件,复制到上一级

  2. 将 \pyHWM14\data 的内容(应该有两个 .dat 和一个 .bin 文件)复制到 C:\ (或任何根目录)

  3. coverage run tests/test.py -v

© www.soinside.com 2019 - 2024. All rights reserved.