how to solve an equation where the unknown is an integration boundry for a numerical integration?

2 ビュー (過去 30 日間)
I need to solve this equation in the form for x where A is a constant and f a known function, which has to be integrated numerically.
However, when i define this function and try to solve, i get the error
"Error using integral (line 85)
A and B must be floating-point scalars."
Apparently I cannot put the variable I need to solve for in the boundry of the integral.
How can this be done?
Below is the code. I know, it is a lot of constants.
P_ep = @(z) P_c.*(((exp(-(1/4).*(z./omega_c).^(5/12))).*((z./omega_c).^(3./2)))+(((4./C).*(2.84-0.92.*(1-cos(pi.*((sqrt(R.*z.*(z./(1.9.*omega_c)).^(0.14.*exp(23.*(S_y./E)))))./R))))).*(1-exp(-(1./25)*(z./omega_c).^(5./9))).*(z./omega_c)));
syms omega_m_ep
omega_m = solve(integral(P_ep,omega_c,omega_m_ep) == (0.5 * m * V_1 ^2)- ((8/15)*E*sqrt(R)*omega_c^(5/2)),omega_m_ep);
  7 件のコメント
James Tursa
James Tursa 2020 年 4 月 19 日
You need to pass fslove a function handle, and that function handle then needs to call integral.
darova
darova 2020 年 4 月 19 日
Is it possible to see known values/constants?

サインインしてコメントする。

採用された回答

David Welling
David Welling 2020 年 4 月 19 日
You need to pass fslove a function handle, and that function handle then needs to call integral.
This solved the problem, Thank you both

その他の回答 (0 件)

カテゴリ

Help Center および File ExchangeNumerical Integration and Differential Equations についてさらに検索

製品


リリース

R2017b

Community Treasure Hunt

Find the treasures in MATLAB Central and discover how the community can help you!

Start Hunting!

Translated by