Making function output vector instead of value

조회 수: 1 (최근 30일)
Alexandru Bortea
Alexandru Bortea 2017년 4월 16일
댓글: Alexandru Bortea 2017년 4월 17일
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
the cyclist
the cyclist 2017년 4월 16일
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 2017년 4월 17일
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

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

채택된 답변

Matt J
Matt J 2017년 4월 17일
function gr = gearratio_fun(v)
gr=v;
gr(:)=7.8119333;
gr(v > 30.097 ) = 5.0005263;
gr(v > 36.96 ) = 4.0718571;
  댓글 수: 1
Alexandru Bortea
Alexandru Bortea 2017년 4월 17일
That is exactly what I wanted! Thank you very much!

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

추가 답변 (0개)

카테고리

Help CenterFile Exchange에서 Gears에 대해 자세히 알아보기

Community Treasure Hunt

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

Start Hunting!

Translated by