How to use a solver to get the terminal velocity of a sphere.

조회 수: 4 (최근 30일)
Niklas Humberg
Niklas Humberg 2024년 10월 29일
댓글: Torsten 2024년 10월 29일
Hello Everyone,
I need to know the Terminal Velocity of a sphere falling down in an airstream.
The Problem is, that to find die Drag Coefficient for the Sphere you need to know the Reynoldsnumber. And the Reynoldsnumber is dependable on the velocity of the sphere. I already calculated a solution by hand by guessing some inital values to iterate to the correct Reynoldsnumber. But now i want to use a equation that correlates the Drag Coefficient to the Reynoldsnumber and then use a solver which numerically finds the terminal velocity.
Those are the eqations i want to use:
Can i solve this with the fsolve function?
Best regards!

채택된 답변

Torsten
Torsten 2024년 10월 29일
v0 = fsolve(@fun,1)
function res = fun(v0)
d_p =...;
rho_air = ...;
nu_air = ...;
rho_w = ...;
g = ...;
Re = d_p*v0*rho_air/nu_air;
Cd = 24/Re*(1+(Re^(2/3))/6);
res = v0^2-4*d_p*(rho_w-rho_air)*g/(3*Cd*rho_air);
end
  댓글 수: 2
Niklas Humberg
Niklas Humberg 2024년 10월 29일
Thanks a lot! Is it somehow possible to declare the parameters outside of the function? I need to plott different results against different parameters
Torsten
Torsten 2024년 10월 29일
d_p =...;
rho_air = ...;
nu_air = ...;
rho_w = ...;
g = ...;
v0 = fsolve(@(v0)fun(v0,d_p,rho_air,nu_air,rho_w,g),1)
function res = fun(v0,d_p,rho_air,nu_air,rho_w,g))
Re = d_p*v0*rho_air/nu_air;
Cd = 24/Re*(1+(Re^(2/3))/6);
res = v0^2-4*d_p*(rho_w-rho_air)*g/(3*Cd*rho_air);
end

댓글을 달려면 로그인하십시오.

추가 답변 (0개)

카테고리

Help CenterFile Exchange에서 Systems of Nonlinear Equations에 대해 자세히 알아보기

Community Treasure Hunt

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

Start Hunting!

Translated by