how can i write if condition for an empty array?

Following is the code:
clc
A=[333.3333 -333.3333 0;333.3333 666.6667 -333.3333;0 -333.3333 333.3333]
F=[0;0;10]
o=[]
%B=[1,o]
n1=input('Boundry Condition for N1')
n2=input('Boundry Condition for N2')
B=[n1,n2]
if n1==1 & n2==o;%1=fixed & o=free, but cant read this after running file
c=2
d=n
disp('Loop 1')
elseif n1==o & n2==1;
c=1
d=n-1
disp('Loop 2')
else n1==1 & n2==1;
c=2
d=n-1
disp('Loop 3')
end
AuxEqn=A(B,c:d)
AuxRHs=F(B)
A(B,:)=[];
A(:,B)=[]
F(B)=[]
U=inv(A)*F
R=AuxEqn*U

 Akzeptierte Antwort

Walter Roberson
Walter Roberson am 15 Nov. 2017

1 Stimme

You cannot compare [] to anything. Use isempty() to test for empty matrix.

4 Kommentare

Adi
Adi am 17 Nov. 2017
Ok thank you.
Adi
Adi am 17 Nov. 2017
I tried using isempty() but its again showing error, I cant figure out how to incorporate this in my if statement. I would highly appreciate If you can check my code. Regards
Walter Roberson
Walter Roberson am 17 Nov. 2017
Bearbeitet: Walter Roberson am 17 Nov. 2017
if n1==1 && isempty(n2);
c=2
d=n
disp('Loop 1')
elseif isempty(n1) && n2==1
c=1
d=n-1
disp('Loop 2')
else n1==1 && n2==1;
c=2
d=n-1
disp('Loop 3')
else
disp('Something else!')
end
Adi
Adi am 19 Nov. 2017
Bearbeitet: Adi am 19 Nov. 2017
@Walter Roberson: This has solved my Problem Thank you so much.

Melden Sie sich an, um zu kommentieren.

Weitere Antworten (0)

Kategorien

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

Gefragt:

Adi
am 15 Nov. 2017

Bearbeitet:

Adi
am 19 Nov. 2017

Community Treasure Hunt

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

Start Hunting!

Translated by