anyone can help me to short this looping ? because when I want to change setting it's take to long :(
clc; clear;
wmin = 0.4; wmax = 1.2;

3 Kommentare

Rik
Rik am 9 Nov. 2017
Are intentionally overwriting w every loop? Also, I would suggest converting this to logical indexing instead of a loop. It will be much faster.
Muhammad Hafiz
Muhammad Hafiz am 6 Dez. 2017
thanks Rik :)
KL
KL am 11 Dez. 2017
Please do not delete your question contents like this. Answers serve more like a FAQ/documentation with examples, now it doesn't make any sense.

Melden Sie sich an, um zu kommentieren.

 Akzeptierte Antwort

KL
KL am 9 Nov. 2017

0 Stimmen

Rik is right, logical indexing will make it lot simpler and faster,
wmin = 0.4; wmax = 1.2;
it= 1:1000;
then pre-allocate w,
w = zeros(size(it));
then calculate w based on the value of it,
w(it<=425) = (150 - it(it<=425))./150.*(wmin-wmax)+wmax;
w(it>425&it<=550) = wmax-(wmax-wmin)./150.*(it(it>425&it<=550)-150);
w(it>550&it<=650) = (100-(it(it>550&it<=650)-550))./100.*(wmin-(wmax-0.6))+(wmax-0.6);
and so on! Now you know how to write your remaining equations the same way.

Weitere Antworten (0)

Kategorien

Mehr zu Loops and Conditional Statements finden Sie in Hilfe-Center und File Exchange

Gefragt:

am 9 Nov. 2017

Kommentiert:

KL
am 11 Dez. 2017

Community Treasure Hunt

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

Start Hunting!

Translated by