Azzera filtri
Azzera filtri

how to sort this looping ?

1 visualizzazione (ultimi 30 giorni)
Muhammad Hafiz
Muhammad Hafiz il 9 Nov 2017
Commentato: KL il 11 Dic 2017
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 Commenti
Muhammad Hafiz
Muhammad Hafiz il 6 Dic 2017
thanks Rik :)
KL
KL il 11 Dic 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.

Accedi per commentare.

Risposta accettata

KL
KL il 9 Nov 2017
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.

Più risposte (0)

Categorie

Scopri di più su Loops and Conditional Statements in Help Center e File Exchange

Community Treasure Hunt

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

Start Hunting!

Translated by