Activité 12A : Écrire un modèle avec périodes et afficher les résultats – Solution 2

Vous devez avoir affiché dans votre fichier .lst dans l’onglet display le tableau ci-dessous :

l13_acta_result

Qui a été créé grâce au code suivant (* introduit un commentaire) :

Parameter RESULT(*,*);
*on a créé un paramètre RESULT défini sur 2 dimensions, donc avec une ligne et une colonne, dont on n’a pas précisé ce qu’elle contiendrait. Ensuite on remplace les * par soit un SET, soit un nom que l’on choisit d’afficher.

RESULT(c,t) = X.L(c,t);
*on commence à remplir RESULT avec c lignes et t colonnes, on va afficher dans chaque cellule du tableau la valeur à l’optimum (.L pour level) de la superficie par culture et par technique. A noter que la tomate n’apparait pas dans le tableau car sa superficie est nulle.

RESULT(‘Terre’, ‘Marginal’)=TERRE.M;
*on crée une ligne ‘Terre’ et une colonne ‘Marginal’, la cellule contient la valeur marginale de l’équation terre (.M pour marginale). ‘Terre’ et ‘Marginal’ sont les termes que l’on souhaite afficher dans le tableau.

RESULT(‘Travail_Hiver’, ‘Total’) = TRAVAIL.L(‘hiver’);
*on crée une ligne ‘Travail_Hiver’ et une colonne ‘Total’, la cellule est remplie avec la valeur à l’optimum de la quantité de travail(‘hiver’). ‘hiver’ est entre guillemets car c’est un élément d’un SET.

RESULT(‘Travail_Hiver’, ‘Marginal’)= TRAVAIL.M(‘hiver’);
*La ligne ‘Travail_Hiver’ et la colonne ‘Marginal’ étant déjà créées, GAMS ira directement dans la cellule et la remplit avec la valeur marginale de l’équation travail(‘hiver’).

RESULT(‘Travail_Ete’, ‘Total’) = TRAVAIL.L(‘ete’);
RESULT(‘Travail_Ete’, ‘Marginal’)= TRAVAIL.M(‘ete’);
RESULT(‘Eau’, ‘Total’) = EAU.L;
RESULT(‘Eau’, ‘Marginal’)= EAU.M;
RESULT(c,’TOTAL’) = sum(t, X.L(c,t));
RESULT(‘Revenu’, ‘TOTAL’) = Z.L ;

Display RESULT ;
*on affiche le tableau de résultat.

retourAlEnonceretourAuSommaireDuCours