سلام دوستان
یک برنامه نوشتم که جواب میده اما در انتها این خطای Index exceeds matrix dimensions را میدهد
لطفا کمک کنید که چرا این خطا ایجاد می شود
با سپاس فراوان
یک برنامه نوشتم که جواب میده اما در انتها این خطای Index exceeds matrix dimensions را میدهد
لطفا کمک کنید که چرا این خطا ایجاد می شود
با سپاس فراوان
کد:
clc; clear all; E1=181*10^9 E2=10.3*10^9 G12=7.17*10^9 v12=0.28 sigma1t=1500*10^6 sigma1c=1500*10^6 sigma2t=40*10^6 sigma2c=246*10^6 sigma12u=68*10^6 syms r sigmax=input('value of sigmax:'); sigmay=input('value of sigmay:'); sigmaxy=input('value of sigmaxy:'); sigmax=sigmax*r sigmay=sigmay*r sigmaxy=sigmaxy*r stressxy=[sigmax;sigmay;sigmaxy] theta=60*pi/180 s=sin(theta) c=cos(theta) T=[c^2,s^2,2*s*c;s^2,c^2,-2*s*c;-s*c,s*c,c^2-s^2] R=[1,0,0;0,1,0;0,0,2] S11=1/E1 S12=-v12/E1 S22=1/E2 S66=1/G12 S=[S11,S12,0;S12,S22,0;0,0,S66] Q=inv(S) Qbar=inv(T)*Q*R*T*inv(R) Sbar=inv(Qbar) sigma1=T(1,:)*stressxy sigma1=factor(sigma1) sigma2=T(2,:)*stressxy sigma2=factor(sigma2) sigma12=T(3,:)*stressxy sigma12=factor(sigma12) stress12=[sigma1;sigma2;sigma12] r1=-(sigma1c)/(2*3^(1/2) - 7/4):sigma1t/(2*3^(1/2) - 7/4):0.0001 r2=-(sigma2c)/(- 2*3^(1/2) + 3/4):sigma2t/(- 2*3^(1/2) + 3/4):0.01 r3=-(sigma12u)/(- (5*3^(1/2))/4 - 2):(sigma12u)/(- (5*3^(1/2))/4 - 2):0.0001 a=max(r1) b=max(r2) g=max(r3) k=[a,b,g] for i=1:1:3 k(i)&k(i+1)~=0 if k(i)>k(i+1) j=k(i+1) else k(i)<k(i+1) j=k(i) end end
دیدگاه