卞培良, 顾鑫, 刘兆玮
河海大学 工程力学系
P.-L. Bian, X. Gu, Z. Liu
Department of Engineering Mechanics, Hohai University
本笔记本介绍了有限元方法的基本概念及有限元方法的编程部分。程序使用 Julia 语言编写,并在此使用了 IJulia 环境。
Julia 为高性能计算而设计。Julia 程序通过 LLVM 自动编译为高效的原生代码,并支持多平台运行。
IJulia 是一个与 Jupyter 交互式环境(也被 IPython 使用)结合的 Julia 语言后端。通过此结合,您可以使用 Jupyter/IPython 强大的图形化笔记本与 Julia 语言进行交互,该笔记本将代码、格式化文本、数学公式和多媒体整合在单个文档中。IJulia 是一个 Jupyter 语言内核,可与多种笔记本用户界面协同工作。
首先,我们需要确保 Julia 和 IJulia 被正确安装。
Julia 的二进制包可以从官方网站下载。
整个软件包可以通过 git 命令从 Github 下载:
git clone https://github.com/bplcn/FiniteElementMethodProgramming现在安装Julia可以参考国内镜像网站。
在Windows Powershell下,环境变量可以通过如下方式设置:
$env:JULIAUP_SERVER= "https://mirrors.tuna.tsinghua.edu.cn/julia-releases"
$env:JULIAUP_SERVER为确保没有服务器错误,我们需要将 Julia 包服务器设置为 CERN 镜像。
ENV["JULIA_PKG_SERVER"] = "https://mirrors.cernet.edu.cn/julia"接下来,我们需要激活工作环境:
] active .之后,虚拟环境即可被激活以进行安装。
然后,我们可以安装所需的包。这可以通过以下命令完成:
] instantiate或者逐个安装它们:
using Pkg
Pkg.add("IJulia")
Pkg.add("Plots")
Pkg.add("LaTeXStrings")
Pkg.add("GaussQuadrature")
Pkg.add("ForwardDiff")
Pkg.add("FEMSparse")
Pkg.add("AbaqusReader")
Pkg.add("AlgebraicMultigrid")
Pkg.add("IterativeSolvers")
Pkg.add("Preconditioners")
Pkg.add("WriteVTK")
Pkg.add("BenchmarkTools")
Pkg.add("SymRCM")
Pkg.add("UnicodePlots")