所以我尝试按照此处的说明安装 FEniCS。我做了
pip3 install fenics-ffc --upgrade
在我的 virtualenv 中它可以工作,但是当我尝试导入 dolfin 时,我收到 ModuleNotFound 错误。我不知道如何安装dolfin。我做到了
pip install pybind11
安装 pybind11 然后将 dolfin 安装的代码复制到我的 cmd 中
FENICS_VERSION=$(python3 -c"import ffc; print(ffc.__version__)")
git clone --branch=$FENICS_VERSION https://bitbucket.org/fenics-project/dolfin
git clone --branch=$FENICS_VERSION https://bitbucket.org/fenics-project/mshr
mkdir dolfin/build && cd dolfin/build && cmake .. && make install && cd ../..
mkdir mshr/build && cd mshr/build && cmake .. && make install && cd ../..
cd dolfin/python && pip3 install . && cd ../..
cd mshr/python && pip3 install . && cd ../..
但它只是吐出了几十个错误,例如:
FENICS_VERSION=$(python3 -c"import ffc; print(ffc.version)") 'FENICS_VERSION' 不被识别为内部或外部命令、可操作程序或批处理文件。
git clone --branch=$FENICS_VERSION https://bitbucket.org/fenics-project/dolfin 克隆到“dolfin”...
致命:在上游源中找不到远程分支 $FENICS_VERSION
git clone --branch=$FENICS_VERSION https://bitbucket.org/fenics-project/mshr 克隆到“mshr”...
致命:在上游源中找不到远程分支 $FENICS_VERSION
之后还有更多错误。我不应该将dolfin代码粘贴到cmd中吗?我对这个东西不太了解,所以不确定如何获取 dolfin 模块。我以前只使用 pip 来获取我的包,但这对 dolfin 不起作用,因为它似乎不在 PyPI 上。
以下是使用 conda (miniconda) 安装 fenics 2019.1 的方法:
安装Conda:
首先前往https://docs.conda.io/projects/conda/en/latest/user-guide/install/linux.html
并按照安装说明进行操作。
为fenics创建conda环境:
conda 创建-n fenics
conda 激活 fenics
如果您希望每次打开新终端时自动激活 fenics 环境,请打开 .bashrc 文件(应位于 /home/username/.bashrc 下)并在“>>”下方添加“source activate fenics”行> conda 初始化 >>>" 块。
安装fenics:
输入所有这些命令:
第二个命令需要一段时间。我添加了一些不错的程序,例如 gmsh 和 paraview,它们将帮助您创建网格并查看您的解决方案。
你有cmake吗?它在文档中说你需要它。它还说要安装 pybind11 而不是
pip install pybind11
为了构建 DOLFIN 和 mshr 的可选 Python 接口,从 2018.1.0 版本开始需要 pybind11。安装方法:
wget -nc --quiet https://github.com/pybind/pybind11/archive/v${PYBIND11_VERSION}.tar.gz
tar -xf v${PYBIND11_VERSION}.tar.gz && cd pybind11-${PYBIND11_VERSION}
mkdir build && cd build && cmake -DPYBIND11_TEST=off .. && make install
你的操作系统是什么?