我有以下公式:
我需要它将其重写为MatLab。问题是,我对它不是很有经验,所以我不确定,如果这是正确的方法。
我的代码如下所示:
f = @(alpha, beta, gamma, delta)...
alpha*sum((DOF.^(2*beta)) .* log(DOF))...
+ gamma*sum( (DOF.^(beta+delta) .* log(DOF))./nprocs )
DOF
和nprocs
是包含n
元素的数字向量。
可以或我的代码中有错误吗?我不确定第i个成员的总和,尤其是我对这些向量乘法等感到困惑。
答案 0 :(得分:0)
您的代码看起来不错。
您不需要.^
- 您只需使用^
,
假设beta,delta
等是标量。
我应该提到变量DOF
和nprocs
可以被视为"闭包" - 即将从定义功能的范围中纳入。如果您想避免这种情况,则应将DOF
和nprocs
作为参数包含在内。