Forum

Catégorie : Programmes
Forum : Les programmes des internautes
Vues : 688
Réponses : 7
Type : discussion
Etat : réponses autorisées

Représentation irréductible

Sangohan38 le 16/06/2011 à 09:52
Voici un programme qui permet de calculer les coefficients de la représentation irréductible d'un groupe une fois les caractères connus.
Pour l'instant le programme à une interface merdique donc il faut rentrer au préalable la table de caractère du groupe ponctuel de symétrie dans la matrice A et les caractères ainsi que les coefficients des éléments de symétrie dans la matrice B avec en 1ere ligne les caractères de la molécule.
Code

ClrHome
dim([A]->L1
dim([B]->L2
If L1(1)[=/=]L1(2)
Then
Disp "[A] ET [B] PAS","DE MEME TAILLE"
Stop
End
DelVar G
For(A,1,L1(1
[B](2,A)+G->G
End
Disp "ORDRE G=",G
Pause
ClrHome
For(B,1,L1(2
DelVar C
For(A,1,L1(1
[A](B,A)[B](1,A)[B](2,A)+C->C
End
Disp "COEFFICIENT DE","LA REPRES.","IRREDUC N°",B,"=",C/G
Pause
ClrHome
End
Output(1,1,"    "


Sangohan38
sandro le 16/06/2011 à 10:39
Ne comprenant pas le sens du rogramme (je ne suis qu'en 1erS SVT cry.gif cry.gif ), la seule chose quie je peu faire c'est l'optimiser:
Code
ClrHome
dim([A]->L1
dim([B]->L2
If L1(1)[=/=]L1(2                       //ici
Then
Disp "[A] ET [B] PAS","DE MEME TAILLE      //ici
Stop
End
DelVar G
For(A,1,L1(1
G+[B](2,A->G                          //ici
End
Disp "ORDRE G=",G
Pause
ClrHome
For(B,1,L1(2
DelVar C
For(A,1,L1(1
C+[A](B,A)[B](1,A)[B](2,A->C   //ici
End
Disp "COEFFICIENT DE","LA REPRES.","IRREDUC N°",B,"=  //ici *2
Pause C/G
ClrHome
End
Output(1,1,"    "                   //tu peu si tu vu remplacer par " mais celà te fera passer direct à la ligne 2


Sandro
Sangohan38 le 16/06/2011 à 10:43
Mouai, l'optimiser en enlevant deux parenthèses, c'est pas terrible comme modification.
A la limite si tu me trouve un algorithme plus court pour faire ces sommes, ça serais plus utile.

Sangohan38
linkakro le 16/06/2011 à 16:33
Tu utilises la hauteur de la matrice comme maximum à l'abscisse (et vice versa), je ne sais pas où ça mène...
dim([A])={Y,X} normalement
Du coup ce que j'immagine après est peut-être faux. (mais cela reste assez innefficace)

Pour les ti82stat et suppérieures :
Code
DelVar G
For(A,1,L1(1
G+[B](2,A->G
End

// remplacé par :

Matr>List([B]T,2,L2    // T est la tranposition
sum(L1->G
Code
For(B,1,L1(2
DelVar C
For(A,1,L1(1
C+[A](B,A)[B](1,A)[B](2,A->C
End

// remplacé par :

For(B,1,L1(2
Matr>List([A]T,B,L2
Matr>List([B]T,1,L3
Matr>List([B]T,2,L4
sum(L1L2L3->C
Sangohan38 le 16/06/2011 à 17:51
Tu as raison, je me suis planter dans la taille mais heureusement les matrices sont carrées donc ça ne change rien.

Sangohan38
sandro le 16/06/2011 à 20:53
Tu pourrait s'il te plaît m'expliquer en 2-3 lignes à quoi cert concrètement ce programme car "calculer les coefficients de la représentation irréductible d'un groupe une fois les caractères connus" est aussi incompréhensible que du chinois, et le chinois je pourrais encore essayer avec google traduction, mais ça... crazy.gif crazy.gif crazy.gif

Sandro crazy.gif crazy.gif crazy.gif
Persalteas le 16/06/2011 à 20:58
C'est vrai qu'ils doivent être balèzes, tes cours de biochimie...
Sangohan38 le 16/06/2011 à 23:06
Bah en fait c'est énormément de terminologie mais l'utilisation est systématique et simple à mettre en oeuvre.

Pour ceux que ça intéresse, il y a ce cours. Mon programme retranscrit la formule p35.

Et ce n'est pas de la biochimie mais des mathématiques appliqués à la chimie et si tu vois pas dans l'espace t'est cuit (comme moi).

Sangohan38