【发布时间】:2012-11-15 00:14:15
【问题描述】:
我有一个水体的太阳辐射测量向量,我想计算到达水体特定深度的辐射。这可以从比尔定律计算出来,我已将其应用于我的测量的第二深度:
rad = 1+(30-1).*rand(365,1);
depth = 1:10;
kz = 0.4;
rad(:,2) = rad(:,1).*exp(-kz.*depth(2));
如何将其应用于向量“深度”中指定的所有深度?即我将如何生成一个具有 365 行和 10 列的矩阵,其中每列指的是到达该特定深度的辐射。
【问题讨论】:
-
是公式:
a(n) = a(n-1)*exp(k*b(n))还是a(n) = a(0)*exp(k*b(n))? -
因为如果是后者,你只需要做
rad2 = rad*exp(-kz*depth); -
a(n) = a(0)*exp(k*b(n)) 其中 a(0) 是原始向量,即 'rad'。
-
@Rasman: 正确,只是你必须使用
bsxfun进行乘法运算。 -
@Jonas:为什么? 365x1 矩阵乘以 1x10 矩阵,得到 365x10。也许担心横向