# Matrix problem in matlab

1. Oct 29, 2012

i have 2 simple matlab questions
first when i have two matrices
the first one is empty and the second one conatins numbers
i can
Say A=B
SO THE VALUE OF B BECOMES INSIDE A
BUT MY QUESTION I JUST DEFINE SYMS EI
and multiply it by B
bUT When itry to put Put B in A
IT DOENST WORK

THE SECOND QUESTION , WHEN i make transpose for matrix it gives me conject, so how can i deal with this
thank

2. Oct 29, 2012

### Staff: Mentor

I have no idea what you're asking.

Also, this should be posted in the section that deals with Matlab and Mathematica, etc. I am moving your post to that section, but will leave a forwarding link.

3. Oct 30, 2012

### NemoReally

4. Oct 30, 2012

FIRST QUESTION
clc
clear all

T=0*pi/180;

A12=[(cos(T))^2 cos(T)*sin(T) -(cos(T))^2 -cos(T)*sin(T); cos(T)*sin(T) (sin(T))^2 -cos(T)*sin(T) -(sin(T))^2;-(cos(T))^2 -cos(T)*sin(T) (cos(T))^2 cos(T)*sin(T);-cos(T)*sin(T) -(sin(T))^2 cos(T)*sin(T) (sin(T))^2]

T=0*pi/180;
A43=[(cos(T))^2 cos(T)*sin(T) -(cos(T))^2 -cos(T)*sin(T); cos(T)*sin(T) (sin(T))^2 -cos(T)*sin(T) -(sin(T))^2;-(cos(T))^2 -cos(T)*sin(T) (cos(T))^2 cos(T)*sin(T);-cos(T)*sin(T) -(sin(T))^2 cos(T)*sin(T) (sin(T))^2]

T=90*pi/180;
A14=[(cos(T))^2 cos(T)*sin(T) -(cos(T))^2 -cos(T)*sin(T); cos(T)*sin(T) (sin(T))^2 -cos(T)*sin(T) -(sin(T))^2;-(cos(T))^2 -cos(T)*sin(T) (cos(T))^2 cos(T)*sin(T);-cos(T)*sin(T) -(sin(T))^2 cos(T)*sin(T) (sin(T))^2]

T=90*pi/180;
A23=[(cos(T))^2 cos(T)*sin(T) -(cos(T))^2 -cos(T)*sin(T); cos(T)*sin(T) (sin(T))^2 -cos(T)*sin(T) -(sin(T))^2;-(cos(T))^2 -cos(T)*sin(T) (cos(T))^2 cos(T)*sin(T);-cos(T)*sin(T) -(sin(T))^2 cos(T)*sin(T) (sin(T))^2]

T=53.13*pi/180;
A13=[(cos(T))^2 cos(T)*sin(T) -(cos(T))^2 -cos(T)*sin(T); cos(T)*sin(T) (sin(T))^2 -cos(T)*sin(T) -(sin(T))^2;-(cos(T))^2 -cos(T)*sin(T) (cos(T))^2 cos(T)*sin(T);-cos(T)*sin(T) -(sin(T))^2 cos(T)*sin(T) (sin(T))^2]

A=[zeros(8,8)]
syms EI
A12=EI.*A12./3
A43=EI.*A43./3
A14=EI.*A14./4
A23=EI.*A23./4
A13=EI.*A13./5
c=1
s=0
for i=[1 2 3 4]
for j=[1 2 3 4]
s=s+1
A(i,j)=A12(c,s)
end
c=c+1
s=0
end
c=1
s=0
for i=[1 2 7 8]
for j=[1 2 7 8]
s=s+1
A(i,j)= A(i,j)+A14(c,s)
end
c=c+1
s=0
end
c=1
s=0
for i=[7 8 5 6]
for j=[7 8 5 6]
s=s+1
A(i,j)= A(i,j)+A43(c,s)
end
c=c+1
s=0
end
c=1
s=0
for i=[3 4 5 6]
for j=[3 4 5 6]
s=s+1
A(i,j)= A(i,j)+A23(c,s)
end
c=c+1
s=0
end
c=1
s=0
for i=[1 2 5 6]
for j=[1 2 5 6]
s=s+1
A(i,j)= A(i,j)+A13(c,s)
end
c=c+1
s=0
end
b=A(2:6,2:6)
b=inv(b)
c=[0; 0; 0; 15; -20]
d=b*c

5. Oct 30, 2012

This one works without ei????i dont know why

6. Oct 30, 2012

this is second question
clc
clear all
syms L x W w1 %% W=w2-w1
A=[ 1 0 0 0;0 -1 0 0;-3/L^2 2/L 3/L^2 1/L;
2/L^3 -1/L^2 -2/L^3 -1/L^2]
B=A'
C=[1;x;x^2;x^3]
D=w1+W*x/L
F=C*D
E=int(F,x,0,L)
M=B*E

7. Oct 31, 2012

### NemoReally

What is EI? AFAICT (not having Matlab) syms is a symbolic toolbox command that declares a variable to the symbolic processor and gives any variables a default value of their own names if a value is not provided. Is EI a special name for something (I believe Ei is the function name for the Exponential Integral but I can't see how that would work here)?

8. Oct 31, 2012

### uart

Yes, I don't have the matlab symbolic toolkit either but I believe the "syms EI" is simple creating a symbolic variable with name EI.

Just to be clear SADEQ, is this the specific code that fails? When you try to assign the symbolic variable to the previously defined numeric variable A12?

9. Oct 31, 2012

Syms EI as any variable ,YOU CAN SAY X instead or anything
thr problem become when i use it in Matrix A

10. Oct 31, 2012

the system will fail when i try to fill A12 in A for example
however A12 has been defined(already multipled by Varaible X, EI whatever)

11. Oct 31, 2012

### NemoReally

Do you have to declare all variables (including A12) using syms if you want the symbolic processor to take note of them? I think what you've asked Matlab to do is to multiply each element of (the numerically-defined) A12 by a symbolic variable EI (which should result in each element containing being a numeric value times EI (eg, 0.5*EI if the corresponding initial value an element is 1.5)

What do you expect to see?
What do you see (including any error messages)?

12. Nov 1, 2012

### uart

Ok, so the dynamic typing handles the following commands ok. That is, it allows you to redefine the (previously) numeric variable A12 as a symbolic. It creates a symbolic variable via multiplication with an existing symbolic variable.
Code (Text):

A=[zeros(8,8)]
syms EI
A12=EI.*A12./3

But it draws the line at this. That is, when you attempt to redefine a single entry in a (previously) numeric matrix as a symbolic (while the other entries in the matrix remain, at this time, numeric). This behavior is not all that surprising to be honest.
Code (Text):

A(i,j)=A12(c,s)

13. Nov 2, 2012

so can i define empty matrix , allowing me to enter symbolic?if yes how?
Thank you man

14. Nov 2, 2012

### uart

Try converting the whole matrix from numeric to symbolic before you start assigning the individual symbolic entries.

For example, I think this should work.
Code (Text):

A = zeros(8,8)
A = sym(A)