【问题标题】:Plot a function using Octave使用 Octave 绘制函数
【发布时间】:2017-04-05 13:29:29
【问题描述】:

我是 GNU Octave 的新手,我想在 [0 : 2000] 的范围内绘制函数 psi

function y = H(x)
  if (x > 0)
    y = 1
  else
    y = 0
  endif
endfunction

function y = psi(s)
  t = 200
  phiabs = 500
  K = 1000
  n0 = 1000
  y = -n0 * e .^ (-(s - phiabs) / t) * H(s - phiabs) - K * H(s) * H(phiabs - s)
endfunction

怎么做?

【问题讨论】:

  • “打印”是什么意思?在命令行上显示值?把它画成一个图?
  • 绘制图形!
  • plot ~= print

标签: plot octave figure


【解决方案1】:

首先,您需要修改您的 psiH 函数以能够执行 element-wise operations 以便您可以将 s 值数组传递给它并接收 @ 数组987654327@值

function y = H(x)
    y = double(x > 0);
endfunction

function y = psi(s)
  t = 200
  phiabs = 500
  K = 1000
  n0 = 1000
  y = -n0 * exp(-(s - phiabs) ./ t) .* H(s - phiabs) - K .* H(s) .* H(phiabs - s)
endfunction

另请注意,您需要使用exp,而不是e.^()

然后你会想要使用plot 将结果绘制成图形

s = 0:2000;
y = psi(s);

plot(s, y)

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 2015-02-17
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2016-10-23
    • 2015-06-12
    • 1970-01-01
    • 2015-12-23
    相关资源
    最近更新 更多