Julia
米饭的白色
这个作者很懒,什么都没留下…
展开
-
Julia 的一个错误:Revspec 'HEAD' not found
GitError(Code:ENOTFOUND, Class:Reference, Revspec ‘HEAD’ not found.) First of all you should be sure it’s the actual error. To me it looks like, if Pkg.status is complaining about a missing...原创 2018-07-17 22:36:30 · 1129 阅读 · 0 评论 -
Julia 中矩阵 `按列` 存储, 以及 for 循环指标变化次序
Julia 的矩阵,例如 A[i,j,k] 是按照 column 存储的,最内层的指标 i 变化最快,所以如果要 for 循环矩阵,一定要使得 i 指标变化最快,才是最优的,例如 (这里补充下,对于 for a = A, b = B, ... end 这种循环,b 是变化最快的,即 b 是循环的最内层):A = zeros(5,6,7);I = 1:5; J = 1:6; K = 1:7;...原创 2018-12-09 14:41:15 · 1073 阅读 · 0 评论 -
Julia 中 Type 类型
Julia 中还有一个基本的类型:Type,其实我们知道 Julia 文档中 已声明的类型 这一节中提到了 DataType 这一基本数据类型,但是还有一个 Type 类型,这两个类型之间的差别可以参见 Julia: Diffrence between Type and DataType这里我们只举出 Type 类型的一种常见用法: Type{T} (引用来自 Julia: Diffrenc...原创 2018-12-16 10:31:27 · 872 阅读 · 0 评论 -
Julia Tensors.jl
Julia 中 Tensors.jl 有个很好玩的运算符 ⊗(\otimes [tab])julia> A = rand(SymmetricTensor{2, 2});julia> B = rand(SymmetricTensor{2, 2});julia> A ⊗ B2×2×2×2 SymmetricTensor{4,2,Float64,9}:[:, :, 1,...原创 2018-12-16 12:45:49 · 318 阅读 · 0 评论 -
Julia enumerate
参见 Base.Iterators.enumeratejulia> a = ["a", "b", "c"];julia> for (index, value) in enumerate(a) println("$index $value") end1 a2 b原创 2018-12-16 16:34:17 · 465 阅读 · 0 评论 -
记录 JuAFEM 6 -- 调用 `interpolations.jl` 中的 `value(...)` 函数
cell_values.jl 会调用 interpolations.jl 中的 value(...) 函数,value(...) 函数是用来计算参考单元在积分点处的值: for (qp, ξ) in enumerate(quad_rule.points) for i in 1:n_func_basefuncs dNdξ[i, qp], N[i, qp...原创 2018-12-16 17:20:39 · 175 阅读 · 0 评论 -
Julia 中得到操作系统的信息
Julia 的关于操作系统的信息可以通过 Sys 命令来得到,如help?> Syssearch: Sys SystemError systemerror displaysize subtypes Provide methods for retrieving information about hardware and the operating system.输入 Sys...原创 2018-12-12 09:01:10 · 348 阅读 · 0 评论 -
Julia 中给定值来初始化Vector
Julia 中初始化一个 Vector (Array) 一个给定的值,最简单的就是julia> cc = [5,6]2-element Array{Int64,1}: 5 6我想对比的是 Tensors.jl 中初始化一个给定的值julia> aa = Vec{2,Int}((2,3))2-element Tensor{1,2,Int64,2}:23...原创 2018-12-18 16:57:55 · 1000 阅读 · 0 评论 -
Julia 使用如何使用相对路径的一个例子
1.首先可以看下如下的解释help?> @__DIR__ @__DIR__ -> AbstractString Expand to a string with the absolute path to the directory of the file containing the macrocall. Return the current working direc...原创 2018-12-19 09:05:04 · 1643 阅读 · 0 评论 -
Finalizing Your Julia Package: Documentation, Testing, Coverage, and Publishing
转载,原文地址:Finalizing Your Julia Package: Documentation, Testing, Coverage, and Publishing.转载 2018-12-19 09:09:22 · 132 阅读 · 0 评论 -
Julia 中 |> 运算符
Julia 中 |> 运算符如何使用,首先看下解释:help?> |>search: |> |>(x, f) Applies a function to the preceding argument. This allows for easy function chaining. Examples ≡≡≡≡≡≡≡≡≡≡ julia&原创 2018-12-19 09:20:51 · 744 阅读 · 0 评论 -
Julia Tensors.jl Vec
Julia 中 Tensors.jl 掉用 Vec 有个很奇怪的事情:julia> using Tensorsjulia> Vec{2}([1,3])2-element Tensor{1,2,Int64,2}: 1 3julia> Vec{2,Int}([1,3])ERROR: MethodError: no method matching Tensor{1,2...原创 2018-12-19 12:37:50 · 236 阅读 · 0 评论 -
Julia collect()
Julia 可以用 collect() 将 tuple 转换为 arrayjulia> collect((1,2,3))3-element Array{Int64,1}: 1 2 3更详细的可以 helphelp?> collectsearch: collect collect(element_type, collection) Return an Arr...原创 2018-12-26 01:51:00 · 1414 阅读 · 0 评论 -
[Julia] Is there a tool for 3D Delaunay and Voronoi tessellations?
Is there a tool for 3D Delaunay and Voronoi tessellations?这是论坛中的一个问题,回答中提到了最终可以用 PyCall 调用 Python 的包,先记下来,以备后面用。转载 2019-03-01 14:15:48 · 194 阅读 · 0 评论 -
Julia 中符号计算
Julia 符号计算 SymEngine.jl给一个自己有用的例子julia> using SymEnginejulia> W = [symbols("W_$i$j") for i in 1:3, j in 1:4]3×4 Array{Basic,2}: W_11 W_12 W_13 W_14 W_21 W_22 W_23 W_24 W_31 W_32 ...原创 2018-12-14 10:19:35 · 2390 阅读 · 0 评论 -
Julia eltype
eltype 自己理解就是 每个元素的类型julia> 1f01.0f0julia> typeof(1f0)Float32julia> fill(1f0, (2,2))2×2 Array{Float32,2}: 1.0 1.0 1.0 1.0 julia> eltype(fill(1f0, (2,2)))Float32help?> e...原创 2018-12-09 09:45:54 · 526 阅读 · 0 评论 -
安装Julia以及后续
从官网下载:https://julialang.org/downloads/ 下载好后,我自己解压到了 Documents 目录下,然后建立一个绝对路径的软连接到 /bin 目录下:sudo ln -s /home/username/Documents/julia-v0.6.4/bin/julia /bin/julia; 然后就可以在终端输入 julia 启动 julia 进入 julia...原创 2018-07-18 00:16:50 · 11061 阅读 · 1 评论 -
记录 JuAFEM 1
文章目录概览一些函数的解释cell_values.jl概览注意 src/ 文件夹下面的 JuAFEM.jl 和 exports.jl,其中 exports.jl 中 export 了一些可以外部调用的函数. 有一点疑问的地方是,没被 export 的函数居然也可以被一些函数调用,例如 **cell_values.jl ** 中@assert getdim(func_interpol) == ...原创 2018-09-30 21:38:53 · 188 阅读 · 0 评论 -
记录 JuAFEM 2 -- `Base.ht_keyindex2!` 与 `Base._setindex!`
文章目录JuAFEM 中 `Base.ht_keyindex2!` 与 `Base._setindex!`JuAFEM 中 Base.ht_keyindex2! 与 Base._setindex!Base.ht_keyindex2! 与 setindex!(Base._setindex!) 出现在 DofHander.jl 中,两个函数配合使用,在 Julia中文论坛 的一个提问 Base....原创 2018-10-03 20:34:54 · 191 阅读 · 0 评论 -
记录 JuAFEM 3 -- close!()
文章目录`DofHandler.jl` 中 `close!()`DofHandler.jl 中 close!()以下说明,针对四边形网格上的 Q1 元为了方便检验程序,我们生成一个 [-1,1]x[-1,1] 的 2dim 四边形网格,以及生成 dhgrid = generate_grid(Quadrilateral, (2, 2));dh = DofHandler(grid)pu...原创 2018-10-03 22:40:04 · 141 阅读 · 0 评论 -
记录 JuAFEM 4 -- Lagrange{dim,shape,order} 与 DofHandler(grid) 的关系
文章目录`Lagrange{dim, RefCube, 1}` 与 `DofHandler(grid)` 之间没什么关系Lagrange{dim, RefCube, 1} 与 DofHandler(grid) 之间没什么关系对的,Lagrange{dim, RefCube, 1} 与 DofHandler(grid) 之间没什么关系,这一点让我感到有点困惑,不知道当初作者是出于什么目的来设计成...原创 2018-10-04 00:47:46 · 191 阅读 · 0 评论 -
记录 JuAFEM 5 -- grid.facesets
文章目录`grid.facesets`grid.facesetsjulia> using JuAFEMjulia> grid = generate_grid(Quadrilateral, (2, 2));julia> grid.facesetsDict{String,Set{Tuple{Int64,Int64}}} with 4 entries: "left" ...原创 2018-10-05 16:04:59 · 144 阅读 · 0 评论 -
Julia 编辑器 Atom 插件 Juno
安装Julia 在 Atom 中的插件 Juno,需要安装 ink, julia-client, language-julia。其中 ink 和 julia-client 可以参见 github-Juno.Atom下不小心进入全屏后按 Alt+v 可以调出菜单栏.安装好 Juno 后关于 Julia 的一些设定,可以在 菜单栏->Packages->Julia 中找,包括在 J...原创 2018-09-27 22:39:59 · 2599 阅读 · 0 评论 -
Julia Tuple 类型不能进行运算操作
文章目录Julia `Tuple` 类型不能进行运算操作Julia Tuple 类型不能进行运算操作如下测试julia> aa = (1,2)(1, 2)julia> 2 * aaERROR: MethodError: no method matching *(::Int64, ::Tuple{Int64,Int64})Closest candidates are: ...原创 2018-10-06 17:53:03 · 642 阅读 · 0 评论 -
一个 Julia 函数的写法理解
一个 Julia 函数的写法理解,看下面的代码struct Node{dim,T} x::Vec{dim,T}endNode(x::NTuple{dim,T}) where {dim,T} = Node(Vec{dim,T}(x))其中Node(x::NTuple{dim,T}) where {dim,T} = Node(Vec{dim,T}(x)) 是一个函数的紧凑形式,...原创 2018-09-28 22:24:52 · 716 阅读 · 0 评论 -
Julia 如何理解“类函数对象”中一段代码的意思
‘类函数对象’ 其实英文更容易理解 Function-like object,这里也是在 如何理解“类函数对象”中一段代码的意思 中解决了,这里总结一下:在看 Julia 文档时,类函数对象中的这段代码该怎么理解呢julia> struct Polynomial{R} coeffs::Vector{R} endjulia> function ...原创 2018-09-28 22:43:30 · 231 阅读 · 0 评论 -
关于 Julia 性能优化
接触 Julia 不久,并不能总结如何写出高效的代码,只能贴几个有用的链接Julia 官方文档中,介绍的 Performance Tips - ToolsJulia 中文论坛中的性能优化的帖子 综合讨论区 性能优化,建议先阅读 一些提高代码性能的建议,性能优化常见问题...原创 2018-10-18 22:06:32 · 703 阅读 · 0 评论 -
Julia 中好用的 package
刷新缓存的,不用每次重启 Julia:Revise. 一般的用户,只要在 .julia/config/startup.jl (如果没有文件夹及相应的文件,自己新建即可)Using Revise by defaultIf you like Revise, you can ensure that every Julia session uses it by adding the follow...原创 2018-10-22 14:28:47 · 1620 阅读 · 0 评论 -
Julia 稀疏矩阵转稠密矩阵
julia> using LinearAlgebrajulia> @which ILinearAlgebrajulia> S = spdiagm(-1 => -ones(coarseNinter), 1 => -ones(coarseNinter)) + sparse(2I, coarseNinter+1, coarseNinter+1)3×3 Spars...原创 2018-10-21 21:33:24 · 1849 阅读 · 0 评论 -
Julia 的元编程
关于元编程一点都不懂,在这里只是随便记录一下 Julia 的元编程,这里有个比较好的解释:Introducing Julia/Metaprogramming,多读两遍可以稍微加深一点理解。...原创 2019-03-06 02:40:16 · 239 阅读 · 0 评论