[Poutre] exercice

Fermé
Utilisateur anonyme - 25 nov. 2007 à 09:03
 Utilisateur anonyme - 27 nov. 2007 à 06:39
Bonjour,

J'ai deux problèmes à faire en MAPLE sachant que pour base j'ai déjà le programme suivant:

> restart:

Fonction de Heaviside

> e:=x->Heaviside(x):
> e(x)=convert(e(x),piecewise):
> e(x-1)=convert(e(x-1),piecewise):

Fonction Dirac

> Diff(Heaviside(x),x)=diff(Heaviside(x),x):

> df:=x->Dirac(x):

> Dirac(x)=convert(df(x),piecewise):
> Int(df(x),x=-infinity..infinity)=int(df(x),x=-infinity..infinity):

Dérivée d'une fonction de Dirac

> Diff(df(x),x)=diff(df(x),x):
> dm:=x->Dirac(1,x):
> Dirac(1,x)=convert(dm(x),piecewise):
> Int(-dm(x),x=-infinity..infinity)=int(-dm(x),x=-infinity..infinity):
> D1:=x->D(x):
> D2:=x->D(D(x)):
> D3:=x->D(D2(x)):


Sauvegarde dans un fichier

> save e,df,dm,D1,D2,D3,`fonc`;

PROCEDURE

> flexion:=proc(loads,CL)
>   local N,i,vv,theta,Mfz,Ty,eq,out;
>   N:=nops(loads):
> 	for i from 1 to N do
> 	   eq:=EI*diff(v(x),x$4)=loads[i];
> 	   dsolve({eq}union CL,v(x));
> 	   vv[i]:=rhs(");
> 	   theta[i]:=diff(vv[i],x);
> 	   Mfz[i]:=EI*diff(vv[i],x$2);
> 	   Ty[i]:=EI*diff(vv[i],x$3);
> 	od:
>   print(lhs(eq)=sum(loads['i'],'i'=1..N),CL);
>   out[`v`]:=collect(simplify(sum(vv[j],j=1..N)),Heaviside);
>   out[`Theta`]:=collect(simplify(sum(theta[j],j=1..N)),Heaviside);
>   out[`Mf`]:=collect(simplify(sum(Mfz[j],j=1..N)),Heaviside);
>   out[`TY`]:=collect(simplify(sum(Ty[j],j=1..N)),Heaviside);
>   out:

> end:




Mon prof m'a également donné un exercice résolu:
https://www.118712.fr/sortir.html

Et voici les deux exercices:
https://www.118712.fr/sortir.html

Quelqu'un s'y connait'il bien en programmation maple et pourrait-il m'aider en fesant le programme (au moins une partie) avec quelques commentaires pour aider à la compréhension.
Un contrôle approche et j'aimerais être en mesure de faire ce genre d'exercice seul..

merci par avance

1 réponse

Utilisateur anonyme
27 nov. 2007 à 06:39
Personne personne...
1