tipe programme maple
Affichage des résultats 1 à 3 sur 3

tipe programme maple



  1. #1
    mo56

    Post tipe programme maple


    ------

    Bonjour à tous !
    Dans le cadre de mon tipe je dois realiser un programme maple.
    J'avance petit à petit (n'étant pas un grand spécialiste...), mais je me retrouve là face à un problème et je n'avance plus.
    Je vous explique rapidement : il s'agit d'extraire des matrices d'un plus grande matrice générale et de les comparer à une autre. Mais je ne comprends pas dans le morceau de programme que voilà où la (quadruple...) boucle ne cesse plus de se réutiliser :

    for i from 1 to p+1 do
    > for j from 1 to p+1 do
    > M:=evalm(submatrix(A, i..i+p-1, j..j+p-1)-B);
    > for k from 1 to p do
    > for l from 1 to p do
    > S:=S+abs(M[k,l]);
    > od;
    > od;
    > x.i.j:=S;
    > od;
    > od;
    Error, too many levels of recursion

    Voilà, merci à ceux qui pourront m'aider (et même à ceux qui ne pourront pas, y'a pas de raison )

    -----

  2. #2
    Franzzzzzzzz

    Re : tipe programme maple

    Bonjour,

    Bon si je comprends bien S est la somme des éléments de la matrice M, c'est bien ça ? D'ailleurs je ne comprends pas pourquoi il y a un evalm dans la définition de M, et ne faudrait-il pas réinitialiser S avant le "for k ... " par hasard. Tiens tant que j'y suis, ça veut dire quoi "x.i.j:=S;" ?

    Sinon pour faire la somme des éléments, il y a plus simple (si on veut, disons que ça t'enlève 2 boucles). Tu mets ça :
    Code:
    with(LinearAlgebra) ; 
    ligne_one:=Matrix(1,p, shape=constant[1]) ; 
    S:=Multiply(ligne_one,Multiply(abs(M), Transpose(ligne_one))) ;
    à la place de :
    Code:
    for k from 1 to p do
    for l from 1 to p do
    S:=S+abs(M[k,l]);
    od;
    od;
    et tu as gagné 2 boucle (mets quand même le "with..." au tout début du programme plutôt).

    Voila après je ne m'y connais pas trop en maple, donc il y a peut-être plus simple (genre une fonction qui ferait ça toute seule ????).

  3. #3
    mo56

    Re : tipe programme maple

    Merci bien Franzzzzzzzz.
    En effet, il fallait réinitialiser S avant la 3ème boucle et donc maintenant ça marche.
    Sinon, le x.i.j est équivalent à quelque chose comme x[i,j], c'est-à-dire que le i et le j sont en indice et permettent de définir différents x ( il suffit que je tape xij et j'ai le résultat correspondant).

    Donc encore merci Franzzzzzzzz! (et il n'est pas certain que je n'ait plus besoin de ton aide pour la suite donc peut-être a une prochaine aide )

Discussions similaires

  1. Programme maple d'une representation d'état discrete
    Par bendesarts dans le forum Mathématiques du supérieur
    Réponses: 2
    Dernier message: 26/09/2009, 17h34
  2. Petit programme sous Maple
    Par invitea87a1dd7 dans le forum Mathématiques du supérieur
    Réponses: 0
    Dernier message: 03/06/2007, 15h07
  3. programme MAPLE
    Par inviteac6d3309 dans le forum Mathématiques du supérieur
    Réponses: 6
    Dernier message: 09/01/2007, 18h48
  4. programme maple: décomposition de 1/2 en somme d'inverses de carrés
    Par milsabor dans le forum Mathématiques du supérieur
    Réponses: 6
    Dernier message: 01/01/2007, 20h51
  5. Programme Maple
    Par Quinto dans le forum Mathématiques du supérieur
    Réponses: 10
    Dernier message: 18/11/2005, 21h04