-
Notifications
You must be signed in to change notification settings - Fork 0
/
Copy pathMANUAL_FR.html
1372 lines (1250 loc) · 55.6 KB
/
MANUAL_FR.html
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
153
154
155
156
157
158
159
160
161
162
163
164
165
166
167
168
169
170
171
172
173
174
175
176
177
178
179
180
181
182
183
184
185
186
187
188
189
190
191
192
193
194
195
196
197
198
199
200
201
202
203
204
205
206
207
208
209
210
211
212
213
214
215
216
217
218
219
220
221
222
223
224
225
226
227
228
229
230
231
232
233
234
235
236
237
238
239
240
241
242
243
244
245
246
247
248
249
250
251
252
253
254
255
256
257
258
259
260
261
262
263
264
265
266
267
268
269
270
271
272
273
274
275
276
277
278
279
280
281
282
283
284
285
286
287
288
289
290
291
292
293
294
295
296
297
298
299
300
301
302
303
304
305
306
307
308
309
310
311
312
313
314
315
316
317
318
319
320
321
322
323
324
325
326
327
328
329
330
331
332
333
334
335
336
337
338
339
340
341
342
343
344
345
346
347
348
349
350
351
352
353
354
355
356
357
358
359
360
361
362
363
364
365
366
367
368
369
370
371
372
373
374
375
376
377
378
379
380
381
382
383
384
385
386
387
388
389
390
391
392
393
394
395
396
397
398
399
400
401
402
403
404
405
406
407
408
409
410
411
412
413
414
415
416
417
418
419
420
421
422
423
424
425
426
427
428
429
430
431
432
433
434
435
436
437
438
439
440
441
442
443
444
445
446
447
448
449
450
451
452
453
454
455
456
457
458
459
460
461
462
463
464
465
466
467
468
469
470
471
472
473
474
475
476
477
478
479
480
481
482
483
484
485
486
487
488
489
490
491
492
493
494
495
496
497
498
499
500
501
502
503
504
505
506
507
508
509
510
511
512
513
514
515
516
517
518
519
520
521
522
523
524
525
526
527
528
529
530
531
532
533
534
535
536
537
538
539
540
541
542
543
544
545
546
547
548
549
550
551
552
553
554
555
556
557
558
559
560
561
562
563
564
565
566
567
568
569
570
571
572
573
574
575
576
577
578
579
580
581
582
583
584
585
586
587
588
589
590
591
592
593
594
595
596
597
598
599
600
601
602
603
604
605
606
607
608
609
610
611
612
613
614
615
616
617
618
619
620
621
622
623
624
625
626
627
628
629
630
631
632
633
634
635
636
637
638
639
640
641
642
643
644
645
646
647
648
649
650
651
652
653
654
655
656
657
658
659
660
661
662
663
664
665
666
667
668
669
670
671
672
673
674
675
676
677
678
679
680
681
682
683
684
685
686
687
688
689
690
691
692
693
694
695
696
697
698
699
700
701
702
703
704
705
706
707
708
709
710
711
712
713
714
715
716
717
718
719
720
721
722
723
724
725
726
727
728
729
730
731
732
733
734
735
736
737
738
739
740
741
742
743
744
745
746
747
748
749
750
751
752
753
754
755
756
757
758
759
760
761
762
763
764
765
766
767
768
769
770
771
772
773
774
775
776
777
778
779
780
781
782
783
784
785
786
787
788
789
790
791
792
793
794
795
796
797
798
799
800
801
802
803
804
805
806
807
808
809
810
811
812
813
814
815
816
817
818
819
820
821
822
823
824
825
826
827
828
829
830
831
832
833
834
835
836
837
838
839
840
841
842
843
844
845
846
847
848
849
850
851
852
853
854
855
856
857
858
859
860
861
862
863
864
865
866
867
868
869
870
871
872
873
874
875
876
877
878
879
880
881
882
883
884
885
886
887
888
889
890
891
892
893
894
895
896
897
898
899
900
901
902
903
904
905
906
907
908
909
910
911
912
913
914
915
916
917
918
919
920
921
922
923
924
925
926
927
928
929
930
931
932
933
934
935
936
937
938
939
940
941
942
943
944
945
946
947
948
949
950
951
952
953
954
955
956
957
958
959
960
961
962
963
964
965
966
967
968
969
970
971
972
973
974
975
976
977
978
979
980
981
982
983
984
985
986
987
988
989
990
991
992
993
994
995
996
997
998
999
1000
<HTML>
<HEAD>
<TITLE> Le manuel de LSD
</TITLE>
</HEAD>
<BODY>
<CENTER>
<H1>LSD 3.4.11</H1>
</CENTER>
<I>Dernière modification: 10 mai 2020.</I>
<H2>Table des matières</H2>
<UL>
<A HREF = "#From spectra to data">Passer des spectres aux données</A><BR>
<A HREF = "#Command interpreter">Interpréteur de commandes</A><BR>
<A HREF = "#Quick start">Passer des données aux structures</A><BR>
<A HREF = "#Very quick start">Pour les impatients</A><BR>
<A HREF = "#Drawing improvement">Améliorer les dessins des molécules</A><BR>
<A HREF = "#Structure of data files">Structure des fichiers de données</A><BR>
<UL>
<A HREF = "#Basic commands">Les commandes de base</A><BR>
<A HREF = "#List definition">Définition des listes d'atomes</A><BR>
<A HREF = "#Execution control">Contrôle de l'exécution</A><BR>
<A HREF = "#Substructural information">Informations de sous-structure</A><BR>
</UL>
<A HREF = "#Creating substructure files with mol2ab">Créer des fichiers de sous-structure avec mol2ab</A><BR>
<A HREF = "#Result processing with outlsd">Traiter les résultats avec outlsd</A><BR>
<A HREF = "#Result viewing with genpos">Visualiser les résultats avec genpos</A><BR>
</UL>
<A NAME = "From spectra to data"></A>
<H2>Passer des spectres aux données</H2>
<P>
Le but de LSD est d'aider l'utilisateur à
proposer une ou plusieurs structures
moléculaires à partir de données issues
très majoritairement de la RMN 2D.
Les spectres qui doivent nécessairement être
enregistrés sont les spectres
HMQC (ou HSQC), COSY et HMBC.
Sans ces trois spectres, il n'est pas envisageable de vouloir utiliser LSD.
LSD ne contient aucune base de données de déplacement chimique.
Il n'y a par ailleurs aucun moyen de lui indiquer la liste des
déplacements chimiques de la molécule étudiée,
pour quel type de noyau que ce soit.
LSD utilise les informations de déplacement chimique et de couplage que
l'utilisateur voudra bien lui indiquer, que ce soit pour définir
l'hybridation des atomes ou pour imposer à un atome
d'avoir un nombre de voisins donné dans
une liste d'atomes déterminée.
</P>
<P>
Le codage des données de RMN pour en faire un fichier texte traitable
par LSD est un exercice un peu déroutant pour le débutant.
Les paragraphes suivants essaieront de vous donner une méthode pour
y arriver.
Il n'est pas inutile de regarder dans le dossier Data les exemples qui
s'y trouvent.
Un fichier de données pour LSD est constitué
de commandes ayant un plusieurs paramètres.
Les commandes les plus utiles seront d'abord introduites, sachant qu'une description
exhaustive du langage de commande est fournie au paragraphe
<A HREF = "#Structure of data files">Structure des fichiers données</A>.
L'interface de type texte peut sembler un peu démodée, mais il est parfois
plus simple d'éditer un texte que de se perdre dans un dédale
de menus et sous-menus
dont les fonctions ne sont pas nécessairement explicites.
</P>
<P>
La première étape à franchir pour
déterminer une structure inconnue consiste
à faire l'hypothèse d'une formule brute et
à déterminer le statut de tous
les atomes, hydrogènes exceptés.
Le statut est constitué d'un numéro, d'un symbole chimique,
d'une hybridation (sp, sp<SUP>2</SUP> ou sp<SUP>3</SUP>),
d'un nombre d'hydrogènes portés par l'atome et
d'une charge.
Définir un statut est contraignant pour l'utilisateur.
Il n'est pas toujours possible a priori de définir le statut des
hétéroatomes,
surtout lorsqu'il y en a de natures chimiques différentes.
Même pour les carbones, le déplacement chimique ne suffit pas toujours
pour déduire de manière non-ambigüe l'hybridation.
Il faut alors créer plusieurs jeux de données et les essayer tous.
Cette nécessité devrait être levée au moins partiellement
dans un proche avenir, mais il faut faire avec pour l'instant.
</P>
<P>
La numérotation des atomes peut se faire de manière arbitraire.
Une manière commode de procéder consiste par exemple
à numéroter
les carbones à partir de 1 par ordre décroissant
de déplacement chimique du <SUP>13</SUP>C, puis de donner les numéros
suivants aux autres atomes (azotes, oxygènes, ...).
Les numéros des carbones issus du spectre 1D seront reportés sur
les projections des spectres 2D HMQC et HMBC.
Il est possible d'avoir un autre type d'atome (X) à condition que sa valence
soit définie par l'utilisateur.
</P>
<P>
La commande qui définit le statut s'appelle <A HREF="#MULT"><CODE>MULT</CODE></A>
(les majuscules sont importantes)
et est suivie du numéro d'atome, de son symbole chimique, de 1, 2 ou 3 pour
l'hybridation (sp, sp<SUP>2</SUP> ou sp<SUP>3</SUP>), de la multiplicité,
c'est-à-dire du nombre d'hydrogènes portés et
de la charge (facultative).
Ainsi, <CODE>MULT 1 C 2 0</CODE> indique que l'atome 1 est un carbone
(<CODE>C</CODE>) sp<SUP>2</SUP> (<CODE>2</CODE>) quaternaire (<CODE>0</CODE>).
Il y aura dans le fichier de données autant de lignes
commençant par <CODE>MULT</CODE>
que d'atomes dans la molécule, atomes d'hydrogène exceptés.
</P>
<P>
L'étape suivante consiste à numéroter sur les
spectres les atomes d'hydrogène.
Là encore la numérotation est arbitraire, mais il est
préférable de donner à un hydrogène le même
numéro que celui du carbone auquel il est lié.
Le spectre HMQC (ou HSQC) sert à établir cette correspondance.
Deux hydrogènes inéquivalents d'un groupe méthylène
auront le même numéro.
Les numéros ainsi attribués seront reportés
sur les spectres 2D COSY et HMBC.
Une corrélation dans un spectre 2D est caractérisée
par le type du spectre,
le numéro d'atome dans la dimension 1
(c'est-à-dire du carbone pour HMQC, HSQC et HMBC)
puis du numéro d'atome en dimension 2 (toujours un numéro
d'hydrogène).
Ainsi <A HREF="#HMQC"><CODE>HMQC 4 4</CODE></A> indique que le carbone 4 et l'hydrogène 4
sont liés ensemble.
Les commandes HMQC et HSQC sont équivalentes.
On code de manière similaire les commandes <CODE>HMBC</CODE> et
<CODE>COSY</CODE>.
</P>
<P>
Toute liaison évidente à établir doit
l'être par une commande <A HREF="#BOND"><CODE>BOND</CODE></A>
dont les deux paramètres sont les numéros
des deux atomes à lier.
Si le carbone 1 est celui d'une cétone et qu'un
oxygène 22 a été déclaré
sp<SUP>2</SUP>, il est possible d'établir dès le début
une liaison entre 1 et 22
par la commande <CODE>BOND 1 22</CODE>.
</P>
<P>
En théorie et sauf exceptions, l'ordre des commandes
dans un fichier n'est pas imposé.
Le texte qui suit la commande <A HREF="#EXIT"><CODE>EXIT</CODE></A> est ignoré.
En plus des commandes qui décrivent le problème,
il en existe d'autres
pour le <A HREF = "#Execution control">contrôle de l'exécution</A>.
Il est préférable de les regrouper en début de fichier.
Après elles, on trouve les commandes <CODE>MULT</CODE>,
<CODE>HMQC</CODE>, <CODE>COSY</CODE>, <CODE>HMBC</CODE> et
<CODE>BOND</CODE>.
Cela forme le contenu minimum d'un fichier de données pour LSD.
</P>
<P>
Une partie moins évidente dans l'écriture de fichiers pour LSD est
la définition de propriétés et des listes associées.
Une propriété d'atome (commande <A HREF="#PROP"><CODE>PROP</CODE></A>) est l'indication
pour un atome ou une liste d'atomes d'un nombre
(supérieur ou égal à 1)
de voisins qui doivent appartenir à une autre liste d'atomes.
On peut aussi indiquer le nombre 0, qui signifie alors "tous les voisins".
Par exemple, les carbones 8, 9 et 10 ont un déplacement chimique vers 15 ppm
et portent les protons 8, 9 et 10 de trois méthyles singulets aux environs
de 1 ppm.
Les carbones 8, 9 et 10 sont très probablement liés à des carbones quaternaires.
Pour coder cela avec LSD, il faut définir deux listes : celle des atomes
8, 9 et 10 et celle des carbones quaternaires.
Une liste d'atome est caractérisée par
son numéro et par son contenu.
Le contenu est définissable soit de manière
explicite (en donnant les numéros
de tous les atomes de la liste) soit à partir du statut des atomes.
Il est aussi possible de combiner des listes entre elles par les opérations
de la théorie des ensembles.
Pour revenir à l'exemple, <A HREF="#LIST"><CODE>LIST L1 8 9 10</CODE></A>
définit la liste 1 et y met les numéros 8, 9 et 10.
<A HREF="#QUAT"><CODE>QUAT L2</CODE></A> définit la liste 2
et y met tous les carbones quaternaires.
Ceci étant fait, la restriction sur les atomes 8, 9 et 10
qui consiste à imposer à tous leurs
voisins d'être quaternaires s'écrit <CODE>PROP L1 0 L2</CODE>.
On aurait pu aussi écrire <CODE>PROP L1 1 L2</CODE> sachant qu'un carbone de
groupe méthyle ne possède toujours qu'un seul voisin.
Les commandes de définition de listes et de propriétés
sont traitées dans
l'ordre où elles apparaissent dans le fichier de données.
En changer l'ordre peut en changer la signification.
</P>
<P>
Un tentation fréquente consiste à
vouloir sur-interpréter les spectres,
c'est-à-dire de leur faire dire ce qu'ils ne disent pas.
Introduire des propriétés fausses ou contradictoires
conduit LSD à ne pas
fournir de solutions et à produire un message qui indique
le niveau de recherche
le plus profond atteint par LSD au cours de sa recherche
(le si détestable message "max stack level: ").
De la même manière, introduire des corrélations
<I><SUP>n</SUP>J</I> avec <I>n</I> supérieur à 3
dans une commande <CODE>HMBC</CODE> ou <CODE>COSY</CODE>
conduira à l'échec de LSD, sauf incation contaire
(voir ci aprè).
Il veut mieux dans un premier temps mettre les commandes relatives aux
corrélations
COSY et HMBC de faible intensité en tant que commentaires,
c'est-à-dire en les faisant précéder par un point-virgule.
Si le nombre des solutions produites est trop grand, il faut alors tenter
de le diminuer en rajoutant des correlations ou des propriétés
aux atomes.
</P>
<P>
<B>Nouveau avec la version 3.1.0 : élimination des
corrélations HMBC invalides.</B><BR>
L'analyse d'une corrélation HMBC peut ne conduire à
aucune solution pour deux raisons :
soit la partie de la molécule qui a été
construite sur la base des corrélations
précédemment examinées est incompatible avec la nouvelle
corrélation (cas 1),
soit celle-ci est erronée (cas 2).
Ceci arrive soit de manière fortuite (artefact dans le spectre HMBC,
ou faute de frappe, par exemple)
soit parce que la corrélation HMBC observée est issue
d'un couplage à travers plus de 3 liaisons.
Dans le cas 1, le mécanisme de résolution remettra en cause
les choix précédents et
devrait conduire à une solution si toutes les données sont correctes.
Dans le cas 2, cette remise en cause sera incapable de fournir une solution.
La corrélation en question peut être éliminée afin de
vérifier si elle est la cause
du blocage.
</P>
<P>
La commande <A HREF="#ELIM"><CODE>ELIM</CODE></A> permet de spécifier un nombre
maximal de corrélations
qu'il est possible d'éliminer pour obtenir au moins une solution.
La commande <CODE>ELIM</CODE> permet aussi de spécifier le nombre maximal
autorisé de liaisons entre les atomes qui interviennent dans toutes
les corrélations
éliminées.
Cette contrainte peut être désactivé pour la
détection des erreurs accidentelles.
</P>
<P>
Ce bref aperçu sur les fichiers de données de LSD
permettra aux utilisateurs
de prendre contact avec LSD, mais une lecture de la section
<A HREF = "#Structure of data files">Structure des fichiers de données</A>
reste indispensable.
</P>
<A NAME = "Command interpreter"></A>
<H2>Interpréteur de commandes</H2>
<P>
Pour traiter les informations contenues dans un fichier de données de LSD
en tapant des commandes système,
les utilisateurs(trices) de Linux ou de Mac doivent ouvrir une application
"Terminal", qui s'appelle "Invite de commandes" sous Windows.
</P>
<P>
La syntaxe des commandes système n'est pas exactement la même
sous Linux/Mac et Windows.
</P>
<P>
Les deux interpréteurs de commandes indiquent que l'utilisateur
peut commencer à taper une commande en affichant une chaîne
de caractères nommée "prompt".
</P>
<P>
Dans les paragraphes ci-dessous,
<CODE><FONT COLOR = #FF00FF> UNIXprompt$ </FONT> </CODE>
est le prompt affiché sous Linux/Mac et
<CODE><FONT COLOR = #FF00FF> DOSprompt$ </FONT> </CODE>
est le prompt de Windows. Les commandes qui suivent le simple
<CODE><FONT COLOR = #FF00FF> prompt$ </FONT> </CODE>
sont valides pour les deux types d'interpréteurs.
</P>
<P>
Dans les deux cas, il faut utiliser la commande <CODE>cd</CODE> pour que l'exécutable
de LSD se trouve dans le dossier courant.
</P>
<P>
Les utilisateurs de Linux/Mac doivent avoir le dossier courant (nommé .)
dans la liste des dossiers dans lesquels le Terminal recherche les exécutables.
Cela peut être réalisé temporairement en tapant
</P>
<P>
<CODE><FONT COLOR = #FF00FF> UNIXprompt$ </FONT> export PATH=.:$PATH</CODE><BR>
</P>
<A NAME = "Quick start"></A>
<H2>Passer des données aux structures</H2>
<P>
Un fichier de données nommé "pinene"
est fourni dans le répertoire "Data" .<BR>
Son traitement par LSD est effectué par :
</P>
<P>
<CODE><FONT COLOR = #FF00FF> UNIXprompt$ </FONT> cp Data/pinene .</CODE><BR>
<CODE><FONT COLOR = #FF00FF> DOSprompt$ </FONT> copy Data\pinene.lsd .</CODE>
</P>
<P>
<CODE><FONT COLOR = #FF00FF> UNIXprompt$ </FONT> lsd pinene</CODE><BR>
<CODE><FONT COLOR = #FF00FF> DOSprompt$ </FONT> lsd pinene.lsd</CODE>
</P>
<P>
LSD indique qu'il a trouvé une solution.<BR>
Le fichier "pinene.sol" qui a été créé
contient les informations de connectivité
pour la solution au problème. <BR>
De manière générale un fichier de données abc
ou abc.xyz fournit un fichier
de solution nommé abc.sol ou abc.xyx.sol.
<BR>
Un fichier de coordonées 2D peut ensuite être obtenu par:
</P>
<P>
<CODE><FONT COLOR = #FF00FF> prompt$ </FONT> outlsd 6 < pinene.sol > pinene.coo</CODE>
</P>
<P>
Le programme outlsd produit des coordonnées 2D à partir des
connectivités. <BR>
Le résultat est visualisé par une visionneuse Postscript®.<BR>
Le dessin en langage Postscript est d'abord produit par :
</P>
<P>
<CODE><FONT COLOR = #FF00FF> prompt$ </FONT> genpos < pinene.coo > pinene.ps</CODE>
</P>
<P>
et affiché par :
</P>
<P>
<CODE><FONT COLOR = #FF00FF> prompt$ </FONT> xpsview pinene.ps</CODE>
</P>
<P>
si xpsview est le programme de visualisation Postscript de votre matériel
(ce pourraît être open, gv ou gsview32).<BR>
Un double click sur l'icône du fichier pinene.ps montre aussi le résultat.
</P>
<A NAME = "Very quick start"></A>
<H2>Pour les impatients</H2>
<P>
La commande :
</P>
<P>
<CODE><FONT COLOR = #FF00FF> prompt$ </FONT> solve pinene</CODE>
</P>
<P>
enchaîne toutes les étapes : résolution du problème
de structure, création et affichage graphique de la solution. <BR>
Il n'est généralement pas souhaitable de procéder
ainsi pour un nouveau jeu de données.
Cela n'est envisageable que si lsd donne un nombre
raisonnable de solutions (voir <A HREF = "#Quick start">
Passer des données aux structures</A>). <BR>
</P>
<A NAME = "Drawing improvement"></A>
<H2>Amélioration des dessins de molécules</H2>
<P>
Les coordonnées produites par outlsd fournissent parfois des dessins
difficiles à interpréter. <BR>
Un programme simple nommé m_edit a été
écrit pour améliorer
la qualité des visuelle des structures moléculaires. <BR>
Il faut que Tcl/Tk et la commande <CODE>wish</CODE> soient installés
pour pouvoir utiliser m_edit (version 8.0 ou plus récente). <BR>
La commande
</P>
<P>
<CODE><FONT COLOR = #FF00FF> prompt$ </FONT> m_edit</CODE>
</P>
<P>
lance m_edit. <BR>
Le menu File permet de lire et de sauvegarder des fichiers et de sortir du programme.
Le menu View est utilisé pour naviguer en avant et
en arrière dans un ensemble
de structures groupées dans un même fichier.
Les formats de fichiers supportés par m_edit sont ".coo"
(le format spécifique de LSD) et ".sdf".
</P>
<P>
L'usage de m_edit est très simple : les atomes sont
déplacés à l'aide du bouton gauche de la souris. <BR>
Il n'y a pas encore possibilité de sélectionner plusieurs atomes,
désolé.
</P>
<P>
Les molécules sont toutes sélectionnées
par défaut, comme indiqué par
leur titre écrit en noir.
Le menu Select permet de désélectionner
(titre en rouge)/sélectionner des molécules.
Le statut de la molécule courante peut être changé
en cliquant sur le titre.
Les molécules sélectionnées peuvent
être gardées (et les autres supprimées)
en utilisant l'item Keep du menu Select.
</P>
<P>
Les molécules sont inversées horizontalement ou verticalement
à l'aide du menu Arrange. <BR>
Un buffer (menu Buffer) a été ajouté,
de manière à ce qu'une situation antérieure
préalablement sauvée (item Save To) puisse être
rechargée (item Load From).
</P>
<A NAME = "Structure of data files"></A>
<H2>Structure des fichiers de données</H2>
<P>
Un fichier de données contient des commandes et des commentaires.<BR>
Le nombre de commandes par fichier est limité par défaut à 300.<BR>
Un commentaire est tout ce qui se trouve entre un ";" et la fin de la ligne.
</P>
<P>
Une commande est constituée d'un mnémonique de commande
généralement suivi de 1 à 5 paramètres. <BR>
Les parties d'une commande sont séparées par des blancs.
Les majuscules doivent être respectées. <BR>
A partir de la version 3.2.0 incluse, la commande <A HREF="#EXIT"><CODE>EXIT</CODE></A>
peut être omise.
Si elle existe, tout ce qui se trouve au delà est ignoré.
</P>
<P>
Tous les mnémoniques sont constitués de 4 caractères
alphanumériques.<BR>
Certains se terminent par un ou deux blancs (<CODE>^</CODE>),
comme <CODE>CH^^</CODE>.
</P>
<P>
Les mnémoniques sont suivis par des paramètres
séparés par des blancs. <BR>
Les types possibles pour les paramètres sont décrits
de la manière suivante :
</P>
<P>
<UL>
<LI>I : un entier positif ou nul.
<LI>T : -1, 0 ou 1.
<LI>V : un seul entier positif ou nul
ou un ensemble d'entiers positifs ou nuls. <BR>
Un ensemble est délimité par des parenthèses et les
éléments sont séparés par
des blancs. <BR>
Le nombre d'éléments est limité à 4 (inclus).
<LI>A : un symbole atomique : <CODE>C N N5 O S S4 S6 F Cl Br I P P5 Si B X</CODE> seulement.<BR>
Ce peut aussi être <CODE>A</CODE> pour la définition des sous-atomes, voir
au paragraphe <A HREF = "#Substructural information">Informations de sous-structure</A>.
<LI>L<I>n</I> : la référence à une liste d'atomes, <I>n</I> est strictement positif.
<LI>B : remplace I ou L<I>n</I>
<LI>S : un ensemble d'entiers positifs séparés par des blancs. <BR>
La différence avec le type V est l'absence de parenthèses. <BR>
Un argument de type S est toujours le dernier de la commande.
<LI>S<I>n</I> : La référence d'un atome dans la description d'une sous-structure.
Exemple : <CODE>S1</CODE>.
<LI>R : un nombre réel.
<LI>F<I>n</I> : la référence d'une sous-structure,
<I>n</I> est un entier strictement positif.
<LI>C : une chaîne de caractères, encadrée
par des guillemets (").
Sa longueur n'est pas limitée et elle peut s'étendre
sur plusieurs lignes.
<LI>H : un signe optionnel : + ou -.
<LI>O : un entier positif ou nul optionnel.
<LI>Z : -1, 0, 1 ou 2.
</UL>
</P>
<P>
Les paramètres d'une commande sont désignés
par P1, P2, P3, P4 et P5 suivant leur position
après le mnémonique. <BR>
La commande <A HREF="#EXIT"><CODE>EXIT</CODE></A> est la seule qui n'ait pas de paramètre.
</P>
<A NAME = "Basic commands"></A>
<H3>Les commandes de base</H3>
<P>
<UL>
<A NAME = "MULT"></A>
<LI><CODE>MULT</CODE> I A I I Z : définit le statut des atomes.
<UL [TYPE = CIRCLE]>
<LI>P1: numéro d'atome, donné arbitrairement.
L'atome 0 n'est pas défini. <BR>
Les numéros doivent être compris entre 1 et 60. <BR>
Laisser des numéros inutilisés entre 1 et le nombre d'atomes est
théoriquement possible mais n'a pas été testé.
<LI>P2 : symbole de l'atome.
Les symboles possibles sont
<CODE>C N N5 O S S4 S6 F Cl Br I P P5 Si B X</CODE>. <BR>
<CODE>S</CODE> est un atome de soufre divalent, <CODE>S4</CODE> est tétravalent et
<CODE>S6</CODE> est hexavalent. <BR>
<CODE>N5</CODE> et <CODE>P5</CODE> sont des atomes d'azote et de phosphore pentavalents. <BR>
La valence et la masse de l'atome <CODE>X</CODE> sont définies par une commande <A HREF="#VALE"><CODE>VALE</CODE></A>.
<LI>P3 : 1, 2 ou 3, pour les atomes hybridés sp, sp<SUP>2</SUP> ou sp<SUP>3</SUP>. <BR>
<B>Les règles suivantes définissent l'hybridation de l'atome : <BR>
Un atome impliqué dans exactement une double liaison est sp<SUP>2</SUP>. <BR>
Un atome impliqué dans une triple liaison ou deux doubles liaisons est sp. </B>
<LI>P4 : nombre d'atomes d'hydrogène portés par l'atome.
<LI>P5 : charge électrique formelle : -1, 0, 1 ou 2 (facultative, égale à 0 par défaut).
</UL>
Exemple : <CODE>MULT 1 C 2 0</CODE>.
L'atome 1 un carbone (<CODE>C</CODE>) sp<SUP>2</SUP>
(<CODE>2</CODE>) quaternaire (<CODE>0</CODE>).
<P></P>
<A NAME = "VALE"></A>
<LI><CODE>VALE</CODE> A I R : définit la valence et la masse des atomes de type X.
<UL [TYPE = CIRCLE]>
<LI>P1 : symbole (X).
<LI>P2 : valence.
<LI>P3 : masse.
</UL>
Remarque : <CODE>VALE</CODE> est incompatible avec la commande <A HREF="#DUPL"><CODE>DUPL 2</CODE></A>.
<P></P>
<A NAME = "BOND"></A>
<LI><CODE>BOND</CODE> I I : liaison.
<UL [TYPE = CIRCLE]>
<LI>P1 : atome 1.
<LI>P2 : atome 2.
</UL>
<P></P>
<A NAME = "HMQC"></A>
<LI><CODE>HMQC</CODE> (ou <CODE>HSQC</CODE>) I I :
corrélation hétéronucléaire à travers 1 liaison.
<UL [TYPE = CIRCLE]>
<LI>P1 : numéro de l'atome (non hydrogène).
<LI>P2 : numéro de l'atome d'hydrogène.
</UL>
Deux atomes d'hydrogène non équivalents
liés au même atome peuvent porter
des numéros différents.<BR>
<B>Il est utile (mais pas obligatoire) de donner le même
numéro à un atome non-hydrogène
et à l'atome (ou aux atomes) d'hydrogène
qui sont directement liés. </B><BR>
Exemple : <CODE>HSQC 4 4</CODE>.
Le carbone 4 et l'hydrogène 4 sont liés ensemble.
<P></P>
<A NAME = "COSY"></A>
<LI><CODE>COSY</CODE> V I O O : corrélation COSY à
travers <B>trois</B> liaisons.
<UL [TYPE = CIRCLE]>
<LI>P1 : numéro d'atome d'hydrogène ou un ensemble de tels numéros.
<LI>P2 : numéro d'atome d'hydrogène.
<LI>P3 : longueur de chemin de couplage optionnelle (limite inférieure).
<LI>P4 : longueur de chemin de couplage optionnelle (limite supérieure).
</UL>
La longueur du chemin de couplage peut être étendue par une commande
<A HREF="#ELIM"><CODE>ELIM</CODE></A>.<BR>
Si P3 est le seul argument optionnel, il définit la seule longueur possible du chemin de couplage.
Sa valeur minimale est 3.<BR>
Si P3 et P4 sont présents, avec P3 supérieur ou égal à 3 et
P4 supérieur ou égal à P3, la longueur du chemin de couplage
doit se situer dans l'intervalle [P3, P4].
Si P4 est nul, alors la longueur est supérieure à P3.<BR>
Si une commande <A HREF="#ELIM"><CODE>ELIM</CODE></A> est présente, la longueur du chemin de couplage
ne pourra pas excéder la valeur de la longueur imposée par la
commande <A HREF="#ELIM"><CODE>ELIM</CODE></A> <B>+ 1</B>.<BR>
Exemples :
<UL>
<LI> <CODE>COSY 2 9</CODE> : l'hydrogène 2 corrèle avec l'hydrogène 9.<BR>
<LI> <CODE>COSY (4 6) 9</CODE> : soit l'hydrogène 4 soit le 6 (ou les deux)
corrèle(nt) avec l'hydrogène 9.<BR>
<LI> <CODE>COSY 5 9 3 4</CODE> : l'hydrogène 5 corrèle avec l'hydrogène 9 à
travers 3 ou 4 liaisons.
Cette corrélation ne sera jamais éliminée, même si une commande
<A HREF="#ELIM"><CODE>ELIM</CODE></A> est présente.
</UL>
<P></P>
<A NAME = "HMBC"></A>
<LI><CODE>HMBC</CODE> V I O O : corrélation
hétéronucléaire à travers <B>2 ou 3</B> liaisons.
<UL [TYPE = CIRCLE]>
<LI>P1 : numéro d'atome non-hydrogène
ou un ensemble de tels numéros.
<LI>P2 : numéro d'atome d'hydrogène.
<LI>P3 : longueur de chemin de couplage optionnelle (limite inférieure).
<LI>P4 : longueur de chemin de couplage optionnelle (limite supérieure).
</UL>
La longueur du chemin de couplage peut être étendue par une commande
<A HREF="#ELIM"><CODE>ELIM</CODE></A>.<BR>
Si P3 est le seul argument optionnel, il définit la seule longueur possible du chemin de couplage.
Sa valeur minimale est 2.<BR>
Si P3 et P4 sont présents, avec P3 supérieur ou égal à 2 et
P4 supérieur ou égal à P3, la longueur du chemin de couplage
doit se situer dans l'intervalle [P3, P4].
Si P4 est nul, alors la longueur est supérieure à P3.<BR>
Si une commande <A HREF="#ELIM"><CODE>ELIM</CODE></A> est présente, la longueur du chemin de couplage
ne pourra pas excéder la valeur de la longueur imposée par la
commande <A HREF="#ELIM"><CODE>ELIM</CODE></A>.<BR>
Exemples :
<UL>
<LI> <CODE>HMBC 3 8</CODE> : l'atome 3 corrèle avec l'hydrogène 8.<BR>
<LI> <CODE>HMBC (4 5) 8</CODE> : soit l'atome 4 soit le 5 (ou les deux)
corrèle avec l'hydrogène 8.<BR>
<LI> <CODE>HMBC 6 8 2</CODE> : l'atome 6 corrèle avec l'hydrogène 8 à travers 2 liaisons.
<LI> <CODE>HMBC 6 8 4</CODE> : l'atome 6 corrèle avec l'hydrogène 8 à travers 4 liaisons.
Ce n'est possible que si une commande <A HREF="#ELIM"><CODE>ELIM</CODE></A> est présente.
<LI> <CODE>HMBC 6 8 2 3</CODE> : l'atome 6 corrèle avec l'hydrogène 8 à
travers 2 ou 3 liaisons.
Cette corrélation ne sera jamais éliminée, même si une commande
<A HREF="#ELIM"><CODE>ELIM</CODE></A> est présente.
</UL>
La somme des nombres de corrélations HMBC et COSY est limitée
par défaut à 100.
<P></P>
<A NAME = "LIST"></A>
<LI><CODE>LIST</CODE> L<I>n</I> S : définit une liste d'atomes.
<UL [TYPE = CIRCLE]>
<LI>P1 : référence de la liste, <I>n</I> est compris entre 1 et 20.
<LI>P2 : numéros d'atomes non-hydrogènes.
</UL>
D'autres commandes de définition de listes sont définies ci-dessous. <BR>
Exemple : <CODE>LIST L1 4 6 14</CODE> : La liste L1 contient les atomes 4, 6 et 14.
<P></P>
<A NAME = "PROP"></A>
<LI><CODE>PROP</CODE> B I L<I>n</I> H : environnement des atomes
<UL [TYPE = CIRCLE]>
<LI>P1 : les atomes références dans P1 ont exactement P2 voisins dans P3.
<LI>P2 : nombre exact de voisins. La valeur 0 signifie "tous".
<LI>P3 : liste de voisins.
</UL>
Exemples:
<UL>
<LI> <CODE>PROP L1 0 L2</CODE> : chaque atome de L1 a tous ses voisins dans L2.
<LI> <CODE>PROP 12 1 L3</CODE> : l'atome 12 a exactement 1 voisin dans L3.
<LI> <CODE>PROP 12 1 L3 +</CODE> : l'atome 12 a 1 voisin ou plus dans L3.
<LI> <CODE>PROP 12 1 L3 -</CODE> : l'atome 12 a 1 voisin ou moins dans L3.
<LI> <CODE>PROP 12 0 L3 -</CODE> : l'atome 12 a 0 voisin ou moins (c'est-à-dire exactement 0) dans L3.
</UL>
<P></P>
<A NAME = "SHIX"></A>
<LI><CODE>SHIX</CODE> I R: déplacement chimique des atomes non-hydrogène
<UL [TYPE = CIRCLE]>
<LI>P1: numéro d'atome (l'atome doit être défini par une commande <CODE>MULT</CODE>).
<LI>P2: valeur de déplacement chimique.
</UL>
Exemple: <CODE>SHIX 1 210.5</CODE>: Le déplacement chimique de l'atome 1 est 210.5 ppm.
<P></P>
<A NAME = "SHIH"></A>
<LI><CODE>SHIH</CODE> I R: déplacement chimique des atomes d'hydrogène
<UL [TYPE = CIRCLE]>
<LI>P1: numéro d'hydrogène (l'hydrogène doit être défini par une commande <CODE>HSQC</CODE> ou <CODE>HMQC</CODE>).
<LI>P2: valeur de déplacement chimique.
</UL>
Exemple: <CODE>SHIH 15 5.4</CODE>: Le déplacement chimique de l'hydrogène 15 est 5.4 ppm.
<P></P>
<A NAME = "EXIT"></A>
<LI><CODE>EXIT</CODE> : fin du jeu de données. (facultatif)
<P></P>
</UL>
</P>
<A NAME = "List definition"></A>
<H3>Définition des listes d'atomes</H3>
<P>
Les commandes décrites dans cette section permettent
de définir des listes
d'atomes utilisées par la commande <A HREF="#PROP"><CODE>PROP</CODE></A>.<BR>
Elle sont interprétées dans l'ordre où
elles apparaissent dans le fichier de données.<BR>
Elles sont listées ci-dessous en fonction de leur nombre d'arguments :
</P>
<P>
<UL>
<LI>1 argument.<BR>
P1, de type L<I>n</I>, est la référence de la liste qui est
créée.
<UL [TYPE = CIRCLE]>
<A NAME = "CARB"></A>
<LI><CODE>CARB</CODE> : les atomes de carbone.
<A NAME = "HETE"></A>
<LI><CODE>HETE</CODE> : les atomes qui ne sont pas des carbones (et pas des hydrogènes).
<A NAME = "SP3 "></A>
<LI><CODE>SP3 </CODE> : les atomes qui n'ont que des liaisons simples
(<CODE>SP3^</CODE>, avec un espace final).
<A NAME = "SP2 "></A>
<LI><CODE>SP2 </CODE> : les atomes avec exactement une double liaison
(<CODE>SP2^</CODE>).
<A NAME = "SP "></A>
<LI><CODE>SP </CODE> : les atomes avec une triple liaison ou deux doubles liaisons
(<CODE>SP^^</CODE>).
<A NAME = "FULL"></A>
<LI><CODE>FULL</CODE> : la liste de tous les atomes.
<A NAME = "QUAT"></A>
<LI><CODE>QUAT</CODE> : les carbones liés à 0 atome d'hydrogène.
<A NAME = "CH "></A>
<LI><CODE>CH </CODE> : les carbones liés à 1 atome d'hydrogène
(<CODE>CH^^</CODE>).
<A NAME = "CH2 "></A>
<LI><CODE>CH2 </CODE> : les carbones liés à 2 atomes d'hydrogène
(<CODE>CH2^</CODE>).
<A NAME = "CH3 "></A>
<LI><CODE>CH3 </CODE> : les carbones liés à 3 atomes d'hydrogène
(<CODE>CH3^</CODE>).
<A NAME = "CHAR"></A>
<LI><CODE>CHAR</CODE> : les atomes chargés.
<A NAME = "CPOS"></A>
<LI><CODE>CPOS</CODE> : les atomes portant une charge positive.
<A NAME = "CNEG"></A>
<LI><CODE>CNEG</CODE> : les atomes portant une charge négative.
</UL>
Exemple : <CODE>CARB L5</CODE>.
L5 est la liste de tous les carbones de la molécule.
<P></P>
<LI>2 arguments.<BR>
P1, de type L<I>n</I>, est la référence
de la liste qui est créée.
P2, de type A est un symbole atomique.
<UL [TYPE = CIRCLE]>
<A NAME = "ELEM"></A>
<LI><CODE>ELEM</CODE>: liste de tous les atomes de symbole atomique A.
</UL>
Exemple: <CODE>ELEM L2 N</CODE>. L2 est la liste de tous les atomes de type N.
<P></P>
P1, de type L<I>n</I>, est la référence
de la liste qui est créée.
P2, de type I est un entier qui sert de valeur de comparaison.
<UL [TYPE = CIRCLE]>
<LI><CODE>GREQ</CODE> : les atomes dont le numéro est supérieur
ou égal à P2.
<LI><CODE>LEEQ</CODE> : les atomes dont le numéro est inférieur
ou égal à P2.
<LI><CODE>GRTH</CODE> : les atomes dont le numéro est strictement
supérieur à P2.
<LI><CODE>LETH</CODE> : les atomes dont le numéro est strictement
inférieur à P2.
</UL>
Exemple : <CODE>GREQ L1 10</CODE>.
L1 est la liste de tous les atomes dont le numéro
est supérieur ou égal à 10.
<P></P>
<LI>3 arguments.<BR>
P1, de type B, est un numéro d'atome ou une liste de numéros.
P2, de type B, est un numéro d'atome ou une liste de numéros.
P3, de type L<I>n</I>, est la référence de la liste qui est
créée.
<UL [TYPE = CIRCLE]>
<A NAME = "UNIO"></A>
<LI><CODE>UNIO</CODE> : P3 est l'union de P1 et P2.
<A NAME = "INTE"></A>
<LI><CODE>INTE</CODE> : P3 est l'intersection de P1 et P2.
<A NAME = "DIFF"></A>
<LI><CODE>DIFF</CODE> : P3 contient les numéros des atomes de P1 qui ne sont
pas dans P2.
</UL>
Exemple : <CODE>UNIO L1 10 L2</CODE>. L2 contient les atomes de L1 et l'atome 10.
<P></P>
</UL>
</P>
<A NAME = "Execution control"></A>
<H3>Contrôle de l'exécution</H3>
<P>
<UL>
<A NAME = "ENTR"></A>
<LI><CODE>ENTR</CODE> I : imprime l'état du problème avant sa
résolution.
<UL [TYPE = CIRCLE]>
<LI>P1 = 0 : pas d'impression (défaut).
<LI>P1 = 1 : état actif.
</UL>
<P></P>
<A NAME = "HIST"></A>
<LI><CODE>HIST</CODE> I : imprime le détail des
étapes de la résolution.
<UL [TYPE = CIRCLE]>
<LI>P1 = 0 : pas d'impression (défaut).
<LI>P1 = 1 : état actif.
</UL>
<P></P>
<A NAME = "DISP"></A>
<LI><CODE>DISP</CODE> I : format de sortie
<UL [TYPE = CIRCLE]>
<LI>P1 = 0 : imprime des listes de liaisons.
<LI>P1 = 1 : le résultat est formatté pour outlsd (défaut).
</UL>
<P></P>
<A NAME = "VERB"></A>
<LI><CODE>VERB</CODE> I : verbosité
<UL [TYPE = CIRCLE]>
<LI>P1 = 0 : muet (défaut).
<LI>P1 = 1 : état actif.
<LI>P1 = 2 : très verbeux.
</UL>
<P></P>
<A NAME = "PART"></A>
<LI><CODE>PART</CODE> I : production des solutions incomplètes
<UL [TYPE = CIRCLE]>
<LI>P1 = 0 : non (défaut).
<LI>P1 = 1 : oui.
</UL>
La production des structures incomplètes permet de
réduire le nombre de solutions
en les groupant en ensembles présentant une sous-structure
commune issue de l'analyse des corrélations. <BR>
Une solution incomplète tient compte de toutes les
corrélations mais possède des
atomes qui n'ont pas un nombre de liaisons égal à
leur valence (atomes incomplets). <BR>
Une solution complète se déduit d'une solution
incomplète par appariement
de tous les atomes incomplets. <BR>
Une solution incomplète peut toujours être complétée.
<P></P>
<A NAME = "STEP"></A>
<LI><CODE>STEP</CODE> I : exécution pas-à-pas.
<UL [TYPE = CIRCLE]>
<LI>P1 = 0 : non (défaut).
<LI>P1 = 1 : état actif.
</UL>
Un numéro d'analyse est indiqué pour suivre la
progression de la résolution. <BR>
Le mode pas-à-pas n'est pas très utile,
par manque d'une interface graphique intégrée. <BR>
Il faut utiliser <A HREF="#VERB"><CODE>VERB 2</CODE></A> avec <CODE>STEP 1</CODE>.
A chaque pas l'utilisateur peut indiquer une action à effectuer
(continuer, finir, abandonner)
<P></P>
<A NAME = "WORK"></A>
<LI><CODE>WORK</CODE> I : recherche des solutions.
<UL [TYPE = CIRCLE]>
<LI>P1 = 0 : LSD lit et interprète le fichier de
données mais ne lance pas la recherche des solutions.
<LI>P1 = 1 : état actif (défaut).
</UL>
<P></P>
<A NAME = "MLEV"></A>
<LI><CODE>MLEV</CODE> I : arrêt de l'analyse à l'étape P1.
<UL [TYPE = CIRCLE]>
<LI>P1 = 0 : rien (défaut).
<LI>P1 = le numéro d'étape fourni par LSD
quand aucune solution n'est produite...
</UL>
<P></P>
<A NAME = "DUPL"></A>
<LI><CODE>DUPL</CODE> I : élimination des solutions dupliquées.
<UL [TYPE = CIRCLE]>
<LI>P1 = 0 : des structures dupliquées peuvent être produites.
<LI>P1 = 1 : les solutions dupliquées sont éliminées.
<LI>P1 = 2 : les structures dupliquées sont éliminées (défaut).
</UL>
<P></P>
<A NAME = "SUBS"></A>
<LI><CODE>SUBS</CODE> T : validation de sous-structure.
<UL [TYPE = CIRCLE]>
<LI>P1 = 0 : pas de recherche de sous-structure.
<LI>P1 = 1 : accepte les solutions qui valident la contrainte
de sous-strucure (défaut).
<LI>P1 = -1 : accepte les solutions qui ne valident pas la contrainte
de sous-strucure.
</UL><P>
<A NAME = "ELIM"></A>
<LI><CODE>ELIM</CODE> I I : élimination de corrélations HMBC et/ou COSY invalides.
<UL [TYPE = CIRCLE]>
<LI>P1 : nombre maximum de corrélations à éliminer.
<LI>P2 : nombre maximum de liaisons admissible pour une
corrélation éliminée. <BR>
La limite supérieure est P2 pour une corrélation HMBC
et <B>P2 + 1 pour une corrélation COSY</B>. <BR>
La valeur 0 signifie "pas de limitation".
</UL>
Exemple : <CODE>ELIM 3 5</CODE>. Il est possible d'éliminer
jusqu'à 3 corrélations HMBC et/ou COSY.
Chacune des corrélations HMBC éliminées doit
correspondre à un couplage
<SUP>4</SUP>J (limite inférieure, nécessairement)
ou <SUP>5</SUP>J (limite supérieure imposée).
Dans le cas d'une corrélation COSY, il doit s'agir d'un couplage
<SUP>5</SUP>J (limite inférieure, nécessairement)
ou <SUP>6</SUP>J (limite supérieure imposée).
<P></P>
<A NAME = "FILT"></A>
<LI><CODE>FILT</CODE> I : mode filtrage par sous-structure.
<UL [TYPE = CIRCLE]>
<LI>P1 = 0 : usage normal de LSD (défaut).
<LI>P1 = 1 : active le mode filtre.
</UL>
En mode filtre, LSD utilise les commandes
<A HREF="#VALE"><CODE>VALE</CODE></A>, <A HREF="#MULT"><CODE>MULT</CODE></A>,
<A HREF="#BOND"><CODE>BOND</CODE></A>
et celles qui concernent la définition des sous-structures
pour rechercher si la structure présente dans les données
contient la sous-structure indiquée.
Dans ce contexte, la commande "lsd < file > &>/dev/null" constitue
un appel typique de LSD.
La valeur retournée par LSD est :
<UL [TYPE = CIRCLE]>
<LI>-1 : données invalides.
<LI> 0 : la sous-structure n'est pas trouvée.
<LI> 1 : la sous-structure est touvée.
</UL>
Ce mode a été créé pour utiliser
LSD à l'intérieur
d'un shell script ou dans tout contexte où la
valeur de retour peut être utilisée.
<P></P>
<A NAME = "CNTD"></A>
<LI><CODE>CNTD</CODE> I : élimination des solutions non connexes
(en plusieurs morceaux)
<UL [TYPE = CIRCLE]>
<LI>P1 = 0: aucune vérification n'est effectuée.
<LI>P1 = 1: seules les solutions connexes (en un seul morceau)
sont retenues (défaut).
</UL>
<P></P>
<A NAME = "MAXS"></A>
<LI><CODE>MAXS</CODE> I : limitation du nombre de structures produites
<UL [TYPE = CIRCLE]>
<LI>P1 = 0: aucune limitation (défaut).
<LI>P1 > 0: LSD s'arrête après avoir produit P1 solutions.
</UL>
<P></P>
<A NAME = "MAXT"></A>
<LI><CODE>MAXT</CODE> I : limitation du temps de résolution
<UL [TYPE = CIRCLE]>
<LI>P1 = 0: aucune limitation (défaut).
<LI>P1 > 0: LSD s'arrête après P1 secondes.
</UL>
<P></P>
<A NAME = "CCLA"></A>