[Fenics有限元安装] 虚拟机Linux下,在ubuntu20.04上通过anaconda安装FEniCS有限元框架指南(适合新手小白,超详细)

我是个计算机小白本白+超级菜鸟,由于我的电脑系统是win10,网上很多对Fenics有限元框架的文章可能不是非常适合我。一开始在老师的指导下,想要在windows下通过下载Docker来安装,但没有成功。后面开始安装虚拟机,最近才在linux环境下搭建Fenics有限元框架,很幸运看到了一篇类似的博客,并与作者进行了讨论,于是想要记录一下,给有需要的同学们一点帮助,希望大家都能成功安装,也欢迎指教~

本文转载整理自:

https://blog.csdn.net/qq_40492373/article/details/105207726?utm_medium=distribute.pc_relevant.none-task-blog-baidujs_title-0&spm=1001.2101.3001.4242

我的软件下载版本:

VMwareWorkstation 16 Pro, ubuntu 20.04

我的电脑版本:

windows 10家庭版

具体步骤:

第一步:创建root账户,在终端输入:

sudo passwd root

该命令是ubuntu首次为root账户设置密码,先输入当前账户的密码,再创建root账户的密码,并确认。(补充:root账户和登陆ubuntu开机时的账号不一样。Ubuntu装好后只有一个用户,这个用户是有管理员权限的普通用户,不能访问根目录,如果ubuntu访问根目录,可以把自己整个删除,所以需要一个可以访问根目录的超级管理员账号,这就是root账号,所以root账号需要另外创建。)

[Fenics有限元安装] 虚拟机Linux下,在ubuntu20.04上通过anaconda安装FEniCS有限元框架指南(适合新手小白,超详细)

 

第二步:Ubuntu更换国内镜像站的源,推荐阿里源或者中科大源。

先输入以下命令用来备份/etc/apt/sources.list文件:

su

会让你输入密码,然后再输入

mv /etc/apt/sources.list /etc/apt/sources.list.backup

这时,sources.list文件已经变为空白,

再输入以下命令,修改sources.list文件

sudo gedit /etc/apt/sources.list

[Fenics有限元安装] 虚拟机Linux下,在ubuntu20.04上通过anaconda安装FEniCS有限元框架指南(适合新手小白,超详细)

 此时,会自动弹出空白的sources.list文件,

[Fenics有限元安装] 虚拟机Linux下,在ubuntu20.04上通过anaconda安装FEniCS有限元框架指南(适合新手小白,超详细)

 选择下面三个中的一个源,黏贴进入sources.list中保存后关掉(我选择的是中科大源)。

#南科大源

deb https://mirrors.sustech.edu.cn/ubuntu/ bionic main restricted universe multiverse

deb https://mirrors.sustech.edu.cn/ubuntu/ bionic-updates main restricted universe multiverse

deb https://mirrors.sustech.edu.cn/ubuntu/ bionic-backports main restricted universe multiverse

deb https://mirrors.sustech.edu.cn/ubuntu/ bionic-security main restricted universe multiverse

deb https://mirrors.sustech.edu.cn/ubuntu/ bionic-proposed main restricted universe multiverse

deb-src https://mirrors.sustech.edu.cn/ubuntu/ bionic main restricted universe multiverse

deb-src https://mirrors.sustech.edu.cn/ubuntu/ bionic-security main restricted universe multiverse

deb-src https://mirrors.sustech.edu.cn/ubuntu/ bionic-proposed main restricted universe multiverse

deb-src https://mirrors.sustech.edu.cn/ubuntu/ bionic-updates main restricted universe multiverse

deb-src https://mirrors.sustech.edu.cn/ubuntu/ bionic-backports main restricted universe multiverse

#中科大源

deb https://mirrors.ustc.edu.cn/ubuntu/ bionic main restricted universe multiverse

deb https://mirrors.ustc.edu.cn/ubuntu/ bionic-updates main restricted universe multiverse

deb https://mirrors.ustc.edu.cn/ubuntu/ bionic-backports main restricted universe multiverse

deb https://mirrors.ustc.edu.cn/ubuntu/ bionic-security main restricted universe multiverse

deb https://mirrors.ustc.edu.cn/ubuntu/ bionic-proposed main restricted universe multiverse

deb-src https://mirrors.ustc.edu.cn/ubuntu/ bionic main restricted universe multiverse

deb-src https://mirrors.ustc.edu.cn/ubuntu/ bionic-updates main restricted universe multiverse

deb-src https://mirrors.ustc.edu.cn/ubuntu/ bionic-backports main restricted universe multiverse

deb-src https://mirrors.ustc.edu.cn/ubuntu/ bionic-security main restricted universe multiverse

deb-src https://mirrors.ustc.edu.cn/ubuntu/ bionic-proposed main restricted universe multiverse

#阿里云源

deb http://mirrors.aliyun.com/ubuntu/ bionic main restricted universe multiverse

deb http://mirrors.aliyun.com/ubuntu/ bionic-security main restricted universe multiverse

deb http://mirrors.aliyun.com/ubuntu/ bionic-updates main restricted universe multiverse

deb http://mirrors.aliyun.com/ubuntu/ bionic-proposed main restricted universe multiverse

deb http://mirrors.aliyun.com/ubuntu/ bionic-backports main restricted universe multiverse

deb-src http://mirrors.aliyun.com/ubuntu/ bionic main restricted universe multiverse

deb-src http://mirrors.aliyun.com/ubuntu/ bionic-security main restricted universe multiverse

deb-src http://mirrors.aliyun.com/ubuntu/ bionic-updates main restricted universe multiverse

deb-src http://mirrors.aliyun.com/ubuntu/ bionic-proposed main restricted universe multiverse

deb-src http://mirrors.aliyun.com/ubuntu/ bionic-backports main restricted universe multiverse

[Fenics有限元安装] 虚拟机Linux下,在ubuntu20.04上通过anaconda安装FEniCS有限元框架指南(适合新手小白,超详细)

这时终端出现了警告,先不要管。

[Fenics有限元安装] 虚拟机Linux下,在ubuntu20.04上通过anaconda安装FEniCS有限元框架指南(适合新手小白,超详细)

 如果遇到:无法锁定管理目录(/var/lib/dpkg/),是否有其他进程正占用它?尝试如下命令:

sudo rm /var/cache/apt/archives/lock
sudo rm /var/lib/dpkg/lock

这时,已经换源成功。

第三步:安装anaconda,

通过ubuntu里的Firefox浏览器去到anaconda官网下载界面https://www.anaconda.com/distribution/, 下载最新版本的anaconda安装文件,Linux对应的文件后缀名是.sh

[Fenics有限元安装] 虚拟机Linux下,在ubuntu20.04上通过anaconda安装FEniCS有限元框架指南(适合新手小白,超详细)

 在界面的右边选择点击Get Additional Install,再选择Linux下面的第一个64-Bit(x86)Installer(554MB)。

[Fenics有限元安装] 虚拟机Linux下,在ubuntu20.04上通过anaconda安装FEniCS有限元框架指南(适合新手小白,超详细)

[Fenics有限元安装] 虚拟机Linux下,在ubuntu20.04上通过anaconda安装FEniCS有限元框架指南(适合新手小白,超详细)

点击确定。

[Fenics有限元安装] 虚拟机Linux下,在ubuntu20.04上通过anaconda安装FEniCS有限元框架指南(适合新手小白,超详细)

 默认的是保存在/home/hjl/下载里面,可以把下载的Anaconda3-2021.05-Linux-x86_64.sh复制到自己账户的根目录下(~/home/hjl/)

[Fenics有限元安装] 虚拟机Linux下,在ubuntu20.04上通过anaconda安装FEniCS有限元框架指南(适合新手小白,超详细)

打开终端,输入命令:

bash Anaconda3-2021.05-Linux-x86_64.sh

[Fenics有限元安装] 虚拟机Linux下,在ubuntu20.04上通过anaconda安装FEniCS有限元框架指南(适合新手小白,超详细)

 按Enter继续,直到出现问你

Do you accept the license terms?[yes|no],输入yes

然后又问你是否安装在根目录下,输入yes

接着又问你是否愿意用conda init来初始化anaconda3,输入yes

 然后会出现

[Fenics有限元安装] 虚拟机Linux下,在ubuntu20.04上通过anaconda安装FEniCS有限元框架指南(适合新手小白,超详细)

安装完成后再终端输入:

sudo gedit ~/.bashrc

[Fenics有限元安装] 虚拟机Linux下,在ubuntu20.04上通过anaconda安装FEniCS有限元框架指南(适合新手小白,超详细)

 并输入自己的密码

在弹出的文件最后添加

export PATH="/home/hjl/anaconda3/bin:$PATH"

保存文件并关闭。

[Fenics有限元安装] 虚拟机Linux下,在ubuntu20.04上通过anaconda安装FEniCS有限元框架指南(适合新手小白,超详细)

 关闭文件后,在终端输入

source ~/.bashrc

这时,重启终端后,用户名前面会出现(base)字样,这是因为anaconda的base环境自动启动了,可以通过以下命令关闭base环境自启动。该命令表示只关闭本次启动的base环境(事实上,可以关闭任何已经进入的环境)

conda deactivate

[Fenics有限元安装] 虚拟机Linux下,在ubuntu20.04上通过anaconda安装FEniCS有限元框架指南(适合新手小白,超详细)

 再输入python检查是否安装成功,如果出现以下所示的anaconda字样,则说明安装成功。

第四步:安装FEniCS有限元框架,先输入以下命令

conda create -n fenicsproject -c conda-forge fenics

[Fenics有限元安装] 虚拟机Linux下,在ubuntu20.04上通过anaconda安装FEniCS有限元框架指南(适合新手小白,超详细)

 直到出现Proceed([y]/n)?输入y

[Fenics有限元安装] 虚拟机Linux下,在ubuntu20.04上通过anaconda安装FEniCS有限元框架指南(适合新手小白,超详细)

 等待继续安装。等待安装完成后,可以尝试启动该环境,输入

source activate fenicsproject
或
conda activate fenicsproject

[Fenics有限元安装] 虚拟机Linux下,在ubuntu20.04上通过anaconda安装FEniCS有限元框架指南(适合新手小白,超详细)

 每次当你需要调用fenics时,都需要执行conda activate fenicsproject命令。

第五步:在fenicsproject环境下,安装fenics所需要的库函数,输入命令:

conda install numpy

安装过程中出现Proceed([y]/n),输入y,在输入命令

conda install matplotlib
conda install pandas

安装过程中出现Proceed([y]/n),输入y

 

[Fenics有限元安装] 虚拟机Linux下,在ubuntu20.04上通过anaconda安装FEniCS有限元框架指南(适合新手小白,超详细)

[Fenics有限元安装] 虚拟机Linux下,在ubuntu20.04上通过anaconda安装FEniCS有限元框架指南(适合新手小白,超详细)

再输入命令查看fenicsproject环境中模块

conda list

 

[Fenics有限元安装] 虚拟机Linux下,在ubuntu20.04上通过anaconda安装FEniCS有限元框架指南(适合新手小白,超详细)

 

第六步:安装paraview后处理工具,输入

sudo apt install paraview

出现错误:无法定位软件包paraview

解决方法:更新一些软件源,输入命令

sudo apt-get update

[Fenics有限元安装] 虚拟机Linux下,在ubuntu20.04上通过anaconda安装FEniCS有限元框架指南(适合新手小白,超详细)

 再继续输入命令重新安装paraview

sudo apt install paraview

[Fenics有限元安装] 虚拟机Linux下,在ubuntu20.04上通过anaconda安装FEniCS有限元框架指南(适合新手小白,超详细)

 看到 您希望继续执行吗?[Y/n]输入Y

[Fenics有限元安装] 虚拟机Linux下,在ubuntu20.04上通过anaconda安装FEniCS有限元框架指南(适合新手小白,超详细)

 

第七步:安装mshr包,注意一定要在自己创建的fenicsproject环境中,输入:

cd anaconda3
git clone http://bitbucket.org/fenics-project/mshr

出现git没有找到,需要先安装git,输入

sudo apt install git

[Fenics有限元安装] 虚拟机Linux下,在ubuntu20.04上通过anaconda安装FEniCS有限元框架指南(适合新手小白,超详细)

 然后再输入

git clone http://bitbucket.org/fenics-project/mshr

[Fenics有限元安装] 虚拟机Linux下,在ubuntu20.04上通过anaconda安装FEniCS有限元框架指南(适合新手小白,超详细)

 

第八步:安装Python IDE:jupyterLab ,安装IDE时需要在激活的fenics环境中安装,否则即使安装成功也没有办法调用fenics。

先进入fenics环境,输入:

conda activate fenicsproject

安装jupyterLab,输入:

conda install jupyterLab

如果conda报错,可以用

pip install jupyterLab

[Fenics有限元安装] 虚拟机Linux下,在ubuntu20.04上通过anaconda安装FEniCS有限元框架指南(适合新手小白,超详细)

 看到Proceed([y/n]),输入y

[Fenics有限元安装] 虚拟机Linux下,在ubuntu20.04上通过anaconda安装FEniCS有限元框架指南(适合新手小白,超详细)

 安装完成后,输入

jupyter lab

[Fenics有限元安装] 虚拟机Linux下,在ubuntu20.04上通过anaconda安装FEniCS有限元框架指南(适合新手小白,超详细)

 如果浏览器可以正常打开并且弹出jupyterlab的页面的话,说明安装成功。

[Fenics有限元安装] 虚拟机Linux下,在ubuntu20.04上通过anaconda安装FEniCS有限元框架指南(适合新手小白,超详细)

有任何问题欢迎留言或者通过邮箱(1135762269@qq.com)与我交流哟~

最后,特别谢谢李姣老师和刘亚卓同学对我的帮助,也希望看到本文的同学们能顺利完成Fenics框架的安装,加油!

上一篇:Linux解决集锦


下一篇:ubuntu 20.04版本更新软件源为国内源(清华、网易、阿里云等等)