Making function output vector instead of value

1 vue (au cours des 30 derniers jours)
Alexandru Bortea
Alexandru Bortea le 16 Avr 2017
I was working on a function that is using a vector v to decide which gear ratio to use. However, when I get the result from the function it only outputs one value although the velocity vector values go higher than the if conditions.
function gr = gearratio_fun(v)
if v > 36.96
gr = 4.0718571; %3rd gear
elseif v > 30.097
gr = 5.0005263; %2nd gear
else
gr = 7.8119333; %1st gear
end
  2 commentaires
the cyclist
the cyclist le 16 Avr 2017
Can you please give an example of an input v, along with
  • the output you see from the function, and
  • the output you expect or want from the function
Alexandru Bortea
Alexandru Bortea le 17 Avr 2017
I have attached v below with all the values that it goes through. For each value of v I would like to have a gr value assigned, so a same size vector as v. However when I run the function, the output it gives for the attached v is gr = 7.8119

Connectez-vous pour commenter.

Réponse acceptée

Matt J
Matt J le 17 Avr 2017
function gr = gearratio_fun(v)
gr=v;
gr(:)=7.8119333;
gr(v > 30.097 ) = 5.0005263;
gr(v > 36.96 ) = 4.0718571;
  1 commentaire
Alexandru Bortea
Alexandru Bortea le 17 Avr 2017
That is exactly what I wanted! Thank you very much!

Connectez-vous pour commenter.

Plus de réponses (0)

Catégories

En savoir plus sur Gears 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