Combinations of values in vectors

조회 수: 2 (최근 30일)
Davide Bertoldi
Davide Bertoldi 2020년 10월 27일
답변: Athul Prakash 2020년 11월 3일
Hello everybody,
Here is my question: if the first logical expression is correct, depth_tot_7 will be calculated. If not, the (if correct) next logical check calculates depth_tot_5 or depth_tot_3. What I additionally want to achieve are the following two things:
a) I want to define a range from 3, 5, 7 for lam without having to specify one of these values at the beginning. It´s either 3, 5 or 7. Depending on this value, the if function shall be performed. If I define the range for lam, for some reason depth_tot_3 is calculated, while if a single value for lam is defined, the if function is performed correctly.
b) If i.ie. lam=3, I would like the program to combine all of the possible lamella depths that are contained in the regarding formula. This means that I´d like my programm to create total depths where lamellas have different attributed depths (for lam = 3 i.e. 25*2+50, 35*2+20, 50*2+35, 45*2+50 etc.). I would like to achieve that the values are differently combined to each other, considering the fact that these single lamellas have the same range and steps.
I hope that my explanation is now clear and looking forward to your answers and help.
Best regards
%span length [m]
span=3.5:0.5:7;
%Number of lamellas [-]
lam=3:2:7;
%Depth outer lamella parallel to span [mm]
lam_o_p=20:5:50;
%Depth inner lamella parallel to span [mm]
lam_i_p=20:5:50;
%Depth inner lamella cross to span [mm]
lam_i_c=20:5:50;
%Calculation of total depth [mm]
if(lam>5)
depth_tot_7=(lam_o_p)*4+(lam_i_p*2)+(lam_i_c);
elseif (lam>3)
depth_tot_5=lam_o_p*2+lam_i_p*1+lam_i_c;
else
depth_tot_3=lam_o_p*2+lam_i_c;
end

답변 (1개)

Athul Prakash
Athul Prakash 2020년 11월 3일
Hi Davide,
To answer both your questions..
a) I'm assuming that you don't want to specify 'lam' in the code (along with the if part). You may consider wrapping the calculation (the whole if body) into a function, after which the function can be called for any 'lam' from outside.
b) I'm not sure what you're trying to calculate here. Could you clarify in relation to the code you've posted?

카테고리

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

Community Treasure Hunt

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

Start Hunting!

Translated by