Filter out negative values

I have the following iterations running But how can I filter out the negative answer and the allow the program just to run on positive values
a=20000:5000:90000
for ct1=1:1:length(a)
b=300:20:460
for ct2=1:1:length(b)
c=150:10:300
for ct3=1:1:length(c)
d=0.5:0.1:0.8
for ct4=1:1:length(d)
e=2000:1000:2300
for ct5=1:1:length(e)
x(ct1,ct2,ct3,ct4,ct5)=a(ct1)+ b(ct2)- (c(ct3))^2 + d(ct4)+ e(ct5)
end
end
end
end
end

 Accepted Answer

Matt J
Matt J on 20 May 2014
Edited: Matt J on 20 May 2014
After x is generated,
x(x<0)=something;

3 Comments

ok let say the next function is y = x +32; but I wan only the positive value of x to go in the calculation.....each time the iteration above gives negative value of x it won't be used in order to calculate y.
After the loops are done,
y(x>=0)=x(x>=0)+32;
Arjun
Arjun on 21 May 2014
Edited: Arjun on 21 May 2014
thanx alot fren....=)

Sign in to comment.

More Answers (1)

You can try using the subplus function.
For example, you would use
x(ct1,ct2,ct3,ct4,ct5)=subplus(a(ct1)+ b(ct2)- (c(ct3))^2 + d(ct4)+ e(ct5))

2 Comments

ok let say the next function is y = x +32; but I wan only the positive value of x to go in the calculation.....each time the iteration above gives negative value of x it won't be used in order to calculate y.
Learn something new every day.

Sign in to comment.

Asked:

on 20 May 2014

Commented:

on 21 May 2014

Community Treasure Hunt

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

Start Hunting!