代码之家  ›  专栏  ›  技术社区  ›  Leonor

求解数值方程

  •  0
  • Leonor  · 技术社区  · 9 年前

    我想在MATLAB中求解以下方程:

    L=(9.81.*P.^2)./(2.*pi).*tanh(2。 圆周率。 (d./L))

    这个 P d 是预定义的向量。 L 是要求解的变量。

    我尝试用以下方法解决这个问题:

    %First guess
    L0 = 1.56 * P;
    fsolve( @(L)  L - (9.81.*P.^2)./(2.*pi).*tanh(2.*pi.*(d./L), L0 )
    

    上面的代码不起作用。

    1 回复  |  直到 9 年前
        1
  •  0
  •   Gabriel Ilharco    9 年前

    问题在于你的不平衡陈述——你缺少一个 ) . 试试这个:

    L0 = 1.56 * P;
    your_function = @(L)  L - (9.81.*P.^2)./(2.*pi).*tanh(2.*pi.*(d./L))
    fsolve(your_function, L0)