Julia for MATLAB 用户/核心语言/数学
下面列出的核心 MATLAB 数学 文档中描述的大多数功能在 Julia 手册的 Base.Mathematics 部分都有等效的,通常是相同的,功能(通常语法相同)。下面标识了特定的等效项;通常这些与 Matlab 中的名称相同,否则将注明 Julia 等效项的名称。
参见 Julia 手册中的 算术运算符。请注意,在 Julia 中,运算符本身是方法,可以在任何可以使用方法的地方使用。例如,参见 Base.map 文档中的示例。
参见 Julia 手册中的 三角函数和双曲函数。
atan
弧度制反正切
[edit | edit source]atand
度数制反正切
[edit | edit source]atan2
四象限反正切
[edit | edit source]atan2d
度数制四象限反正切
[edit | edit source]tanh
双曲正切
[edit | edit source]atanh
双曲反正切
[edit | edit source]csc
弧度制余割
[edit | edit source]cscd
度数制余割
[edit | edit source]acsc
弧度制反余割
[edit | edit source]acscd
度数制反余割
[edit | edit source]csch
双曲余割
[edit | edit source]acsch
双曲反余割
[edit | edit source]sec
弧度制正割
[edit | edit source]secd
度数制正割
[edit | edit source]asec
弧度制反正割
[edit | edit source]asecd
度数制反正割
[edit | edit source]sech
双曲正割
[edit | edit source]asech
双曲反正割
[edit | edit source]cot
弧度制余切
[edit | edit source]cotd
度数制余切
[edit | edit source]acot
弧度制反余切
[edit | edit source]acotd
度数制反余切
[edit | edit source]coth
双曲余切
[edit | edit source]acoth
双曲余切的反函数
[edit | edit source]hypot
平方和的平方根 (斜边)
[edit | edit source]deg2rad
将角度从度数转换为弧度
[edit | edit source]rad2deg
将角度从弧度转换为度数
[edit | edit source]指数和对数
[edit | edit source]参见 Julia 手册中的 幂、对数和根。
exp
指数
[edit | edit source]expm1
计算 ,对于 x 的小值,该值非常精确
[edit | edit source]log
自然对数
[edit | edit source]log10
常用对数 (以 10 为底)
[edit | edit source]log1p
计算 log(1+x),对于 x 的小值,该值非常精确
[edit | edit source]log2
以 2 为底的对数和浮点数分解
[edit | edit source]nextpow2
下一个更高 2 的幂的指数
[edit | edit source]nthroot
实数的实 n 次根
[edit | edit source]pow2
以 2 为底的幂,并缩放浮点数
[edit | edit source]reallog
非负实数数组的自然对数
[edit | edit source]realpow
用于仅实数输出的数组幂
[edit | edit source]realsqrt
非负实数数组的平方根
[edit | edit source]sqrt
平方根
[edit | edit source]复数
[edit | edit source]参见 Julia 手册中的 复数。
abs
绝对值和复数模
[edit | edit source]angle
相位角
[edit | edit source]complex
创建复数数组
[edit | edit source]conj
复共轭
[edit | edit source]cplxpair
将复数排序为复共轭对
[edit | edit source]i
虚数单位
[edit | edit source]imag
复数的虚部
[edit | edit source]isreal
确定数组是否为实数
[edit | edit source]j
虚数单位
[edit | edit source]real
复数的实部
[edit | edit source]sign
符号函数(符号函数)
[edit | edit source]unwrap
校正相位角以生成更平滑的相位图
[edit | edit source]离散数学
[edit | edit source]Julia 中的等效项 Base
[edit | edit source]factorial
输入的阶乘
[edit | edit source]gcd
最大公约数
[edit | edit source]lcm
最小公倍数
[edit | edit source]JuliaMath/Primes.jl 中的等效项 JuliaMath/Primes.jl
[edit | edit source]factor
素因子
[edit | edit source]primes
小于或等于输入值的素数
[edit | edit source]isprime
确定哪些数组元素是素数
[edit | edit source]nchoosek
二项式系数或所有组合 (Julia: binomial
)
[edit | edit source]其他
[edit | edit source]perms
所有可能的排列
[edit | edit source]Julia 的 Permutations.permutations(a)
函数(Permutations.jl 包)返回一个迭代器对象(因为排列的数量可能非常大),并且以字典序而不是逆字典序排列。因此,可以构建一个直接等效项,如下所示
julia> perms(a) = reverse(collect(permutations(a))) perms (generic function with 1 method) julia> perms([2,4,6]) 6-element Array{Array{Int64,1},1}: [6, 4, 2] [6, 2, 4] [4, 6, 2] [4, 2, 6] [2, 6, 4] [2, 4, 6]
rat
有理分式逼近,rats
有理输出
[edit | edit source]这些似乎没有直接的 Julia 等效项,但请注意,与 Matlab 不同,Julia 具有本地的 有理数类型。
多项式
[edit | edit source]请参阅 Polynomials.jl 包。请注意,此包为多项式提供了一个适当的类型,Polynomials.Poly
,而在 Matlab 中,度数为 的多项式由长度为 的向量表示,该向量的元素是多项式中按降序排列的系数。
poly
带有指定根或特征多项式的多项式
[edit | edit source]polyeig
多项式特征值问题
[edit | edit source]polyfit
多项式曲线拟合
[edit | edit source]Polynomials.polyfit
提供了类似的基本功能 - Matlab 函数的单个输出参数形式,但它缺少额外的误差估计和居中/缩放功能。
residue
部分分式展开(部分分式分解)
[edit | edit source]roots
多项式根
[edit | edit source]Polynomials.roots
提供了具有重数的根。
polyval
多项式求值
[edit | edit source]请参阅 Julia 手册中的 Base.Math.@evalpoly
。
polyvalm
矩阵多项式求值
[edit | edit source]conv
卷积和多项式乘法
[edit | edit source]deconv
解卷积和多项式除法
[edit | edit source]polyint
多项式积分
[edit | edit source]polyder
多项式微分
[edit | edit source]特殊函数
[edit | edit source]airy
Airy 函数
[edit | edit source]besselh
第三类 Bessel 函数(Hankel 函数)
[edit | edit source]besseli
第一类修正 Bessel 函数
[edit | edit source]besselj
第一类 Bessel 函数
[edit | edit source]besselk
第二类修正 Bessel 函数
[edit | edit source]betaincinv
Beta 逆累积分布函数
[编辑 | 编辑源代码]gammaincinv
不完全伽马函数的逆函数
[编辑 | 编辑源代码]参见 Julia 手册中的 通用数字函数和常量。
在 Julia 中,im
等效;这允许 i
和 j
用作例如循环索引而不会冲突。
在 Julia 中也可用作 pi
以及 \pi
Tab ↹ →
参见 MatrixDepot.jl 包;gallery
中的大多数矩阵以及下面列出的所有其他矩阵都可以在该包中使用,此外还提供了一些额外的矩阵。
参见 Julia 手册中的 线性代数。
decomposition
用于求解线性系统的矩阵分解
[编辑 | 编辑源代码]lsqminnorm
线性方程的最小范数最小二乘解
[编辑 | 编辑源代码]eigs
特征值和特征向量的子集
[edit | edit source]balance
对角缩放以提高特征值精度
[edit | edit source]svd
奇异值分解
[edit | edit source]svds
奇异值和向量子集
[edit | edit source]gsvd
广义奇异值分解
[edit | edit source]ordeig
拟三角矩阵的特征值
[edit | edit source]ordqz
重新排列 QZ 分解中的特征值
[edit | edit source]ordschur
重新排列 Schur 分解中的特征值
[edit | edit source]polyeig
多项式特征值问题
[edit | edit source]qz
用于广义特征值的 QZ 分解
[edit | edit source]hess
矩阵的 Hessenberg 形式
[edit | edit source]schur
Schur 分解
[edit | edit source]rsf2csf
将实 Schur 形式转换为复 Schur 形式
[edit | edit source]cdf2rdf
将复对角形式转换为实块对角形式
[edit | edit source]lu
LU 矩阵分解
[edit | edit source]ldl
用于 Hermitian 不定矩阵的块 LDL' 分解
[edit | edit source]chol
Cholesky 分解
[edit | edit source]cholupdate
对 Cholesky 分解进行秩 1 更新
[edit | edit source]qr
正交-三角分解
[edit | edit source]qrdelete
从 QR 分解中删除列或行
[edit | edit source]qrinsert
将列或行插入 QR 分解
[edit | edit source]qrupdate
对 QR 分解进行秩 1 更新
[edit | edit source]planerot
Givens 平面旋转
[edit | edit source]ctranspose
复共轭转置
[编辑 | 编辑源代码]ishermitian
判断矩阵是否为厄米特矩阵或反对称厄米特矩阵
[编辑 | 编辑源代码]issymmetric
判断矩阵是否为对称矩阵或反对称矩阵
[编辑 | 编辑源代码]randStream
随机数流
[编辑 | 编辑源代码]gRiddedinterpolant
网格数据插值
[编辑 | 编辑源代码]scaTteredinterpolant
插值二维或三维散点数据
[编辑 | 编辑源代码]fminsearch
使用无导数方法查找无约束多变量函数的最小值
[编辑 | 编辑源代码]见 DifferentialEquations.jl。尤其见 MATLAB/Python/R 翻译 部分。
treelayout
布置树或森林
[编辑 | 编辑源代码]reordernodes
重新排序图节点
[编辑 | 编辑源代码]centrality
衡量节点重要性
[编辑 | 编辑源代码]conncomp
连通图组件
[edit | edit source]biconncomp
双连通图组件
[edit | edit source]condensation
图的凝缩
[edit | edit source]bctree
块-割点树图
[edit | edit source]minspantree
图的最小生成树
[edit | edit source]toposort
有向无环图的拓扑排序
[edit | edit source]isdag
判断图是否为无环图
[edit | edit source]transclosure
闭包
[edit | edit source]transreduction
约简
[edit | edit source]isisomorphic
判断两个图是否同构
[edit | edit source]isomorphism
计算两个图之间的同构
[edit | edit source]ismultigraph
判断图是否具有多重边
[edit | edit source]simplify
将多重图简化为简单图
[edit | edit source]shortestpath
两个单节点之间的最短路径
[edit | edit source]shortestpathtree
从节点开始的最短路径树
[edit | edit source]distances
所有节点对之间的最短路径距离
[edit | edit source]adjacency
图的邻接矩阵
[edit | edit source]incidence
图的关联矩阵
[edit | edit source]laplacian
图的拉普拉斯矩阵
[edit | edit source]degree
图节点的度数
[edit | edit source]neighbors
图节点的邻居
[edit | edit source]nearest
半径内的最近邻居
[edit | edit source]indegree
节点的入度
[edit | edit source]outdegree
节点的出度
[edit | edit source]predecessors
节点的先行节点
[edit | edit source]successors
节点的后续节点
[edit | edit source]inedges
指向节点的入边
[edit | edit source]outedges
从节点出发的出边
[edit | edit source]plot
绘制图的节点和边
[edit | edit source]labeledge
标注图的边
[edit | edit source]labelnode
标注图的节点
[edit | edit source]layout
更改图的布局
[edit | edit source]highlight
突出显示绘制图中的节点和边
[edit | edit source]graphPlot
有向图和无向图的图绘制
[edit | edit source]计算几何
[edit | edit source]参见 JuliaGeometry GitHub 组织。
三角剖分表示
[edit | edit source]triangulation
2-D 或 3-D 三角剖分
[edit | edit source]tetramesh
四面体网格图
[edit | edit source]trimesh
三角网格图
[edit | edit source]triplot
2-D 三角形图
[edit | edit source]trisurf
三角表面图
[edit | edit source]Delaunay 三角剖分
[edit | edit source]deLaunaytriangulation
2-D 和 3-D Delaunay 三角剖分
[edit | edit source]delaunay
Delaunay 三角剖分
[edit | edit source]delaunayn
N-D Delaunay 三角剖分
[edit | edit source]tetramesh
四面体网格图
[edit | edit source]trimesh
三角网格图
[edit | edit source]triplot
2-D 三角形图
[edit | edit source]trisurf
三角表面图
[edit | edit source]空间搜索
[edit | edit source]triangulation
2-D 或 3-D 三角剖分
[编辑 | 编辑源代码]deLaunaytriangulation
2-D 和 3-D Delaunay 三角剖分
[编辑 | 编辑源代码]alphaShape
从 2-D 和 3-D 中的点生成多边形和多面体
[编辑 | 编辑源代码]Julia 包 GeometricalPredicates.jl 提供了一些类似的功能。