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

4 vues (au cours des 30 derniers jours)
Niklas Humberg
Niklas Humberg le 29 Oct 2024
Commenté : Torsten le 29 Oct 2024
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!

Réponse acceptée

Torsten
Torsten le 29 Oct 2024
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 commentaires
Niklas Humberg
Niklas Humberg le 29 Oct 2024
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 le 29 Oct 2024
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

Connectez-vous pour commenter.

Plus de réponses (0)

Catégories

En savoir plus sur Systems of Nonlinear Equations dans Help Center et File Exchange

Community Treasure Hunt

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

Start Hunting!

Translated by