Problème de définition sur scilab - Logiciels - Windows & Software
Marsh Posté le 26-10-2012 à 01:36:32
je ne sais pas trop ce que tu veux faire, mais apparement, Vf est un vecteur, donc lorsque tu l'utilises, fait attentions aux opérateurs : pour G12, si tu veux faire des opérations terme à terme, il faut utiliser "./" par exemple au lieu de "/"
EDIT : ca, ca calcule sans erreurs (regardes les 3 points rouges !):
Ef=200.;
nuf=0.3;
Em=3.20;
num=0.3;
Gm=(Em/(2*(1+num)));
Gf=(Ef/(2*(1+nuf)));
Vf=0:0.5:1;
E1=Ef*Vf + Em*(1-Vf)
nu12=nuf*Vf + num*(1-Vf)
G12=Gm*(Gf*(1+Vf)+Gm*(1-Vf))./(Gf*(1-Vf)+Gm*(1+Vf))
km=Em/(3*(1-(2*num)));
kf=Ef/(3*(1-(2*nuf)));
Km=km+(Gm/3);
xa=1/(kf-km+((Gf-Gm)/3));
xb=(1-Vf)/(km+4*Gm/3);
K1=Km+(Vf/(xa+xb))
xa1=Gm/(Gf-Gm);
xb1=(1-Vf)*((km+(7*Gm/3))/((2*km)+(8*Gm/3)));
G23=Gm*(1+(Vf./(xa1+xb1)))
E2=2/(1/(2*K1)+(1/(2*G23))+(2*nu12^2/E1))
nu23=(E2./(2*G23))-1
plot2d(Vf,E1)
plot2d(Vf,nu12)
plot2d(Vf,G12)
plot2d(Vf,G23)
plot2d(Vf,E2)
plot2d(Vf,nu23)
Ca sent la mécanique des matériaux, les modules de Young et compagnie...
Marsh Posté le 23-10-2012 à 09:46:22
Bonjour à tous !
J'ai plusieurs problème de définition.
Je définis un paramètre par un intervalle de valeur, mes 2 premières variables tiennent compte de ça mais pas les autres.
Je ne comprend pas pourquoi !!
Voici le script
Ef=200.;
nuf=0.3;
Em=3.20;
num=0.3;
Gm=(Em/(2*(1+num)));
Gf=(Ef/(2*(1+nuf)));
Vf=0:0.5:1;
E1=Ef*Vf + Em*(1-Vf)
nu12=nuf*Vf + num*(1-Vf)
G12=Gm*(Gf*(1+Vf)+Gm*(1-Vf))/(Gf*(1-Vf)+Gm*(1+Vf))
km=Em/(3*(1-(2*num)));
kf=Ef/(3*(1-(2*nuf)));
Km=km+(Gm/3);
xa=1/(kf-km+((Gf-Gm)/3));
xb=(1-Vf)/(km+4*Gm/3);
K1=Km+(Vf/(xa+xb))
xa1=Gm/(Gf-Gm);
xb1=(1-Vf)*((km+(7*Gm/3))/((2*km)+(8*Gm/3)));
G23=Gm*(1+(Vf/(xa1+xb1)))
E2=2/(1/(2*K1)+(1/(2*G23))+(2*nu12^2/E1))
nu23=(E2/(2*G23))-1
plot2d(Vf,E1)
plot2d(Vf,nu12)
plot2d(Vf,G12)
plot2d(Vf,G23)
plot2d(Vf,E2)
plot2d(Vf,nu23)
Voici le résultat :
-->Ef=200.;
-->nuf=0.3;
-->Em=3.20;
-->num=0.3;
-->Gm=(Em/(2*(1+num)));
-->Gf=(Ef/(2*(1+nuf)));
-->Vf=0:0.5:1;
-->E1=Ef*Vf + Em*(1-Vf)
E1 =
3.2 101.6 200.
-->nu12=nuf*Vf + num*(1-Vf)
nu12 =
0.3 0.3 0.3
-->G12=Gm*(Gf*(1+Vf)+Gm*(1-Vf))/(Gf*(1-Vf)+Gm*(1+Vf))
G12 =
1.7752583
-->km=Em/(3*(1-(2*num)));
-->kf=Ef/(3*(1-(2*nuf)));
-->Km=km+(Gm/3);
-->xa=1/(kf-km+((Gf-Gm)/3));
-->xb=(1-Vf)/(km+4*Gm/3);
-->K1=Km+(Vf/(xa+xb))
K1 =
4.0043144
-->xa1=Gm/(Gf-Gm);
-->xb1=(1-Vf)*((km+(7*Gm/3))/((2*km)+(8*Gm/3)));
-->G23=Gm*(1+(Vf/(xa1+xb1)))
G23 =
1.645945
-->E2=2/(1/(2*K1)+(1/(2*G23))+(2*nu12^2/E1))
E2 =
4.6540614
-->nu23=(E2/(2*G23))-1
nu23 =
0.4137961
-->plot2d(Vf,E1)
-->plot2d(Vf,nu12)
-->plot2d(Vf,G12)
!--error 999
plot2d : Les premier et deuxième paramètres ont des dimensions incompatibles.
-->plot2d(Vf,G23)
!--error 999
plot2d : Les premier et deuxième paramètres ont des dimensions incompatibles.
-->plot2d(Vf,E2)
!--error 999
plot2d : Les premier et deuxième paramètres ont des dimensions incompatibles.
-->plot2d(Vf,nu23)
!--error 999
plot2d : Les premier et deuxième paramètres ont des dimensions incompatibles.
Je vous remercie d'avance