首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >Julia中的广播向量和矩阵

Julia中的广播向量和矩阵
EN

Stack Overflow用户
提问于 2020-03-13 11:18:57
回答 1查看 626关注 0票数 7

我想使用标量函数的虚线版本来计算整个输入矩阵的值。该职能的定义如下:

代码语言:javascript
复制
function SpecificCharge(U, r, B)
 ( 2 * U ) / ( r^2 * B^2 )
end

我想为它提供以下投入:

代码语言:javascript
复制
const Us = [ # voltages U
  228.9, 243, 257, 271, 285, 300
]

const Rs = [ # radii r
  9 7 5.8 5 4.3 3.9;
  10.5 8.1 6.7 5.7 4.9 4.5;
  10.1 8.3 7.1 6.5 6 4.8;
  11.1 9.0 7.2 6.5 5.6 5.1;
  10.5 8.3 7.8 6.5 5.7 5.4;
  11.9 8.9 8.0 7.4 6.2 5.5
]

const Bs = [ # flux densities B
  0.0007332339999999999, 0.00089328, 0.0010421599999999999, 0.00119104, 0.00133992, 0.0014873112
]

# Calling the dotted version of the function
specific_charges = SpecificCharge.(Us, Rs, Bs)

结果应该是一个与Rs相同维数的矩阵,用SpecificCharge给出的相应的比电荷代替每个半径。每个U-B对都有一个磁通密度,Rs中的行对应于电压U,列对应于磁通密度B

问题是,我不知道朱莉娅的广播是如何运作的。如果我只是适当地转换向量SpecificCharge.Bs,还是需要使函数本身复杂化才能使其工作呢?

EN

回答 1

Stack Overflow用户

回答已采纳

发布于 2020-03-13 11:48:39

执行SpecificCharge函数。如果我只是适当地转换向量UsBs,还是需要将函数本身复杂化才能使其工作呢?

你试过了吗?但是,我猜您想要转换UsBs来获得正确的“耦合”。

当您使用具有不同数组维度(示例中的向量和矩阵)的广播时,Julia将在单例维度中“扩展”数组。例如,向量将扩展到每个列中有向量副本的矩阵。这里有一个例子来说明这一点

代码语言:javascript
复制
julia> A = ["A1", "A2"];

julia> B = ["B11" "B12" "B13";
            "B21" "B22" "B23"];

julia> f(args...) = join(args, ", ");

julia> f.(A, B)
2×3 Array{String,2}:
 "A1, B11"  "A1, B12"  "A1, B13"
 "A2, B21"  "A2, B22"  "A2, B23"

如您所见,向量A已在单例维度中扩展为

代码语言:javascript
复制
julia> A2 = [A A A]
2×3 Array{String,2}:
 "A1"  "A1"  "A1"
 "A2"  "A2"  "A2"

使其具有与B相同的大小,然后将f应用于每一对。要在另一个维度中扩展一个向量,你需要改变它;

代码语言:javascript
复制
julia> C = ["C1", "C2", "C3"];

julia> f.(B, permutedims(C))
2×3 Array{String,2}:
 "B11, C1"  "B12, C2"  "B13, C3"
 "B21, C1"  "B22, C2"  "B23, C3"

现在,C在第一个维度(单例维度)中得到了扩展,本质上是

代码语言:javascript
复制
julia> C2 = [permutedims(C); permutedims(C); permutedims(C)]
3×3 Array{String,2}:
 "C1"  "C2"  "C3"
 "C1"  "C2"  "C3"
 "C1"  "C2"  "C3"
票数 14
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/60669526

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档