Dismiss Notice
Join Physics Forums Today!
The friendliest, high quality science and math community on the planet! Everyone who loves science is here!

Matrix problem in matlab

  1. Oct 29, 2012 #1
    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
    COULD ANY ONE HELP PLEASE

    THE SECOND QUESTION , WHEN i make transpose for matrix it gives me conject, so how can i deal with this
    thank
     
  2. jcsd
  3. Oct 29, 2012 #2

    Mark44

    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.
     
  4. Oct 30, 2012 #3
    Please post your code.
     
  5. Oct 30, 2012 #4
    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
     
  6. Oct 30, 2012 #5
    This one works without ei????i dont know why
     
  7. Oct 30, 2012 #6
    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
     
  8. Oct 31, 2012 #7
    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)?
     
  9. Oct 31, 2012 #8

    uart

    User Avatar
    Science Advisor

    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?
     
  10. Oct 31, 2012 #9
    Syms EI as any variable ,YOU CAN SAY X instead or anything
    thr problem become when i use it in Matrix A
     
  11. Oct 31, 2012 #10
    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)
     
  12. Oct 31, 2012 #11
    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)?
     
  13. Nov 1, 2012 #12

    uart

    User Avatar
    Science Advisor

    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)
     
     
  14. Nov 2, 2012 #13
    so can i define empty matrix , allowing me to enter symbolic?if yes how?
    Thank you man
     
  15. Nov 2, 2012 #14

    uart

    User Avatar
    Science Advisor

    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)
     
     
Know someone interested in this topic? Share this thread via Reddit, Google+, Twitter, or Facebook




Similar Discussions: Matrix problem in matlab
Loading...