File: poly_aniso.rst

package info (click to toggle)
openmolcas 25.02-2
  • links: PTS, VCS
  • area: main
  • in suites: forky, sid, trixie
  • size: 170,204 kB
  • sloc: f90: 498,088; fortran: 139,779; python: 13,587; ansic: 5,745; sh: 745; javascript: 660; pascal: 460; perl: 325; makefile: 17
file content (880 lines) | stat: -rw-r--r-- 54,249 bytes parent folder | download
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
.. index::
   single: Program; Poly_aniso
   single: Poly_aniso

.. _UG\:sec\:poly_aniso:

:program:`poly_aniso`
=====================

.. only:: html

  .. contents::
     :local:
     :backlinks: none

.. xmldoc:: <MODULE NAME="POLY_ANISO" APPEAR="Poly_Aniso">
            %%Description:
            <HELP>
            The POLY_ANISO program allows the non-perturbative calculation of
            effective spin (pseudospin) Hamiltonians and static magnetic properties
            of mononuclear complexes and fragments completely ab initio,including
            the spin-orbit interaction. As a starting point it uses the results
            of a RASSI calculation for the ground and several excited spin-orbital
            multiplets.

            The following quantities can be computed:

            1. Parameters of pseudospin magnetic Hamiltonians:
              a) First order (linear after pseudospin) Zeeman splitting tensor (g tensor),
                 including the determination of the sign of the product gX*gY*gZ
              b) Second order (bilinear after pseudospin) zero-field splitting tensor (D tensor)
              c) Higher order zero-field splitting tensors (D^2, D^4, D^6, ..., etc.)
              d) Higher order Zeeman splitting tensors (G^1, G^3, G^5, ..., etc.)
              e) Angular Moments along the main magnetic axes

            2. Crystal-Field parameters for the ground atomic multiplet for lanthanides

            3. Static magnetic properties:
              a) Van Vleck susceptibility tensor
              b) Powder magnetic susceptibility function
              c) Magnetization vector for specified directions of the applied magnetic field
              d) Powder magnetization
            </HELP>

The :program:`POLY_ANISO` program is a routine which allows a semi-ab initio
description of the (low-lying) electronic structure and magnetic properties
of polynuclear compounds. It is based on the localized nature of the magnetic
orbitals (i.e. the |d.| or |f.| orbitals containing unpaired electrons :cite:`Anderson1959,Anderson1963`).
For many compounds of interest, the localized character of magnetic orbitals leads
to very weak character of the interactions between magnetic centers. Due to this weakness of the
interaction, the metals' orbitals and corresponding localized ground and excited states
may be optimized in the absence of the magnetic interaction at all. For this purpose, various fragmentation
models may be applied. The most commonly used fragmentation model is exemplified in :numref:`fig:fragment`.

.. figure:: fragment.*
   :name: fig:fragment
   :width: 100%
   :align: center

   Fragmentation model of a polynuclear compound. The upper scheme shows a schematic overview of a tetranuclear compound and the resulting four mononuclear fragments obtained by *diamagnetic atom substitution* method. By this scheme, the neighboring magnetic centers, containing unpaired electrons are computationally replaced by their diamagnetic equivalents. As example, transition metal sites TM(II) are best replaced by either diamagnetic :math:`\ce{Zn(II)}` or :math:`\ce{Sc(III)}`, in function which one is the closest. For lanthanides :math:`\ce{Ln(III)}` the same principle is applicable, :math:`\ce{La(III)}` or :math:`\ce{Lu(III)}` are best suited to replace a given magnetic lanthanide. Individual mononuclear metal framgents are then investigated by common CASSCF/CASPT2/RASSI/SINGLE_ANISO computational method. A single file for each magnetic site, produced by the :program:`SINGLE_ANISO` run, is needed by the :program:`POLY_ANISO` code as input.

Magnetic interaction between metal sites is very important for accurate description of low-lying states and their properties.
It can be considered as a sum of various interaction mechanisms: magnetic exchange, dipole-dipole interaction, antisymmetric exchange, etc.
In the :program:`POLY_ANISO` code we have implemented several mechanisms.

The description of the magnetic exchange interaction is done within the Lines model :cite:`Lines1971`.
This model is exact in three cases:

a) interaction between two isotropic spins (Heisenberg),
b) interaction between one Ising spin (only :math:`S_z` component) and one isotropic (i.e. usual) spin, and
c) interaction between two Ising spins.

In all other cases of interaction between magnetic sites with intermediate anisotropy, the Lines model represents an
approximation. However, it was succesfully applied for a wide variety of polynuclear compounds so far.

.. compound::

  In addition to the magnetic exchange, magnetic dipole-dipole interaction can be accounted exactly, by
  using the information about each metal site already computed *ab initio*. In the case of
  strongly anisotropic lanthanide compounds, the dipole-dipole interaction is usualy the dominant
  one. Dipolar magnetic coupling is one kind of long-range interaction between magnetic moments.
  For example, a system containing two magnetic dipoles :math:`\mu_1` and :math:`\mu_2`, separated by
  distance :math:`\vec{r}` have a total energy:

  .. math:: E_{\text{dip}} = \frac{\mu_{\text{Bohr}}^{2}}{r^3} [\vec{\mu}_1 \cdot \vec{\mu}_2 - 3(\vec{\mu}_1 \vec{n}_{12}) \cdot (\vec{\mu}_2 \vec{n}_{12})],

  where :math:`\vec{\mu}_{1,2}` are the magnetic moments of sites 1 and 2, respectively; :math:`r` is the distance between
  the two magnetic dipoles, :math:`\vec{n}_{12}` is the directional vector connecting the two magnetic dipoles (of unit length).
  :math:`\mu_{\text{Bohr}}^2` is the square of the Bohr magneton; with an approximative value of 0.43297 in :math:`\text{cm}^{-1}/\text{T}`.
  As inferred from the above Equation, the dipolar magnetic interaction depends on the distance and on the angle between the magnetic moments on magnetic
  centers. Therefore, the Cartesian coordinates of all non-equivalent magnetic centers must be provided in the input (see the keyword :kword:`COOR`).

Files
-----

Input files
...........

The program :program:`Poly_Aniso` needs the following files:

.. class:: filelist

:file:`aniso_XX.input`
  This is an ASCII text file generated by the |molcas|/SINGLE_ANISO program.
  It should be provided for :program:`POLY_ANISO` :file:`aniso_i.input` (:math:`i=1, 2, 3`, etc.): one file for each magnetic center.
  In cases when the entire polynuclear cluster or molecule has exact point group symmetry, only
  :file:`aniso_i.input` files for crystallographically non-equivalent centers should be given.

:file:`chitexp.input`
  set directly in the standard input (key :kword:`TEXP`)

:file:`magnexp.input`
  set directly in the standard input (key :kword:`HEXP`)

Output files
............

.. class:: filelist

:file:`zeeman_energy_xxx.txt`
  A series of files named :file:`zeeman_energy_xxx.txt` is produced in the :file:`$WorkDir` only in case keyword :kword:`ZEEM` is
  employed (see below). Each file is an ASCII text formated and contains Zeeman spectra of the investigated
  compound for each value of the applied magnetic field.

:file:`chit_compare.txt`
  A text file contining the experimental and calculated magnetic susceptibility data.

:file:`magn_compare.txt`
  A text file contining the experimental and calculated powder magnetisation data.

Files :file:`chit_compare.txt` and :file:`chit_compare.txt` may be used in connection with a simple gnuplot script
in order to plot the comparison between experimental and calculated data.

.. index::
   pair: Input; Poly_aniso

.. _UG\:sec\:poly_aniso_input:

Input
-----

This section describes the keywords used to control the standard input file.
Only two keywords :kword:`NNEQ`, :kword:`PAIR` (and :kword:`SYMM` if the polynuclear cluster has symmetry) are
mandatory for a minimal execution of the program, while the other keywords allow
customization of the execution of the :program:`POLY_ANISO`.

Mandatory keywords defining the calculation
...........................................

*Keywords defining the polynuclear cluster*

.. class:: keywordlist

:kword:`NNEQ`
  This keyword defines several important parameters of the calculation. On the
  first line after the keyword the program reads 2 values:
  1) the number of types of different magnetic centers (NON-EQ) of the cluster and
  2) a letter ``T`` or ``F`` in the second position of the same line.
  The number of NON-EQ is the total number of magnetic centers of the cluster
  which cannot be related by point group symmetry.
  In the second position the answer to the question: *Have all NON-EQ centers been computed ab initio?*
  is given: ``T`` for *True* and ``F`` for *False*.
  On the third position, the answer to the question: *Are the rassi.h5 files to be read for input?*
  is given. For the current status, the letter ``F`` is the only option.
  On the following line the program will read NON-EQ values specifying the
  number of equivalent centers of each type.
  On the following line the program will read NON-EQ integer numbers specifying
  the number of low-lying spin-orbit functions from each center forming the local
  exchange basis.

  Some examples valid for situations where all sites have been
  computed *ab initio* (case ``T``, *True*):

  .. class:: poly_aniso

  +----------------------------------------+----------------------------------------+----------------------------------------+
  | ::                                     | ::                                     | ::                                     |
  |                                        |                                        |                                        |
  |   NNEQ                                 |   NNEQ                                 |   NNEQ                                 |
  |   2  T  F                              |   3  T  F                              |   6  T  F                              |
  |   1  2                                 |   2  1  1                              |   1  1  1  1  1  1                     |
  |   2  2                                 |   4  2  3                              |   2  4  3  5  2  2                     |
  +----------------------------------------+----------------------------------------+----------------------------------------+
  | There are two kinds of magnetic centers| There are three kinds of magnetic      | There are 6 kinds of magnetic centers  |
  | in the cluster; both have been computed| centers in the cluster; all three have | in the cluster; all six have been      |
  | ab initio; the cluster consists of 3   | been computed ab initio; the cluster   | computed ab initio; the cluster        |
  | magnetic centers: one center of the    | consists of four magnetic centers: two | consists of 6 magnetic centers: one    |
  | first kind and two centers of the      | centers of the first kind, one center  | center of each kind. From the center of|
  | second kind. From each center we take  | of the second kind and one center of   | the first kind we take into exchange   |
  | into the exchange coupling only the    | the third kind. From each of the       | coupling two spin-orbit states, four   |
  | ground doublet. As a result the        | centers of the first kind we take into | states from the second center, three   |
  | :math:`N_{\text{exch}}=2^1 \times      | exchange coupling four spin-orbit      | states from the third center, five     |
  | 2^2=8` :file:`aniso_1.input` (for ---  | states, two states from the second kind| states from the fourth center and two  |
  | type 1) and :file:`aniso_2.input`      | and three states from the third center.| states from the fifth and sixth        |
  | (for --- type 2) files must be present.| As a result the                        | centers. As a result the               |
  |                                        | :math:`N_{\text{exch}}=4^2 \times 2^1  | :math:`N_{\text{exch}}=2^1 \times 4^1  |
  |                                        | \times 3^1=96`. Three files            | \times 3^1 \times 5^1 \times 2^1 \times|
  |                                        | :file:`aniso_i.input` for each center  | 2^1=480`. Six files                    |
  |                                        | (:math:`i=1,2,3`) must be present.     | :file:`aniso_i.input` for each center  |
  |                                        |                                        | (:math:`i=1,2,\ldots,6`) must be       |
  |                                        |                                        | present.                               |
  +----------------------------------------+----------------------------------------+----------------------------------------+

  Only in cases when some centers have NOT been computed ab initio (i.e. for which no :file:`aniso_i.input` file exists),
  the program will read an additional line consisting of NON-EQ letters (``A`` or ``B``) specifying the type of each of
  the NON-EQ centers:
  ``A`` --- the center is computed ab initio and ``B`` --- the center is considered isotropic.
  On the following ``number-of-B-centers`` line(s) the isotropic :math:`g` factors of the
  center(s) defined as ``B`` are read. The spin of the ``B`` center(s) is defined: :math:`S=(N-1)/2`,
  where :math:`N` is the corresponding number of states to be taken into the exchange coupling
  for this particular center.

  Some examples valid for mixed situations: the system consists of centers computed *ab initio* and
  isotropic centers (case ``F``, *False*):

  .. class:: poly_aniso

  +----------------------------------------+----------------------------------------+----------------------------------------+
  | ::                                     | ::                                     | ::                                     |
  |                                        |                                        |                                        |
  |   NNEQ                                 |   NNEQ                                 |   NNEQ                                 |
  |   2  F  F                              |   3  F  F                              |   6  T  F                              |
  |   1  2                                 |   2  1  1                              |   1  1  1  1  1  1                     |
  |   2  2                                 |   4  2  3                              |   2  4  3  5  2  2                     |
  |   A  B                                 |   A  B  B                              |   B  B  A  A  B  A                     |
  |   2.3                                  |   2.1                                  |   2.12                                 |
  |                                        |   2.0                                  |   2.43                                 |
  |                                        |                                        |   2.00                                 |
  +----------------------------------------+----------------------------------------+----------------------------------------+
  | There are two kinds of magnetic centers| There are three kinds of magnetic      | There are six kinds of magnetic centers|
  | in the cluster; the center of the first| centers in the cluster; the first      | in the cluster; only three centers have|
  | type has been computed *ab initio*,    | center type has been computed *ab      | been computed *ab initio*, while the   |
  | while the centers of the second type   | initio*, while the centers of the      | other three centers are considered     |
  | are considered isotropic with          | second and third types are considered  | isotropic; the :math:`g` factor of the |
  | :math:`g=2.3`; the cluster consists of | isotropic with :math:`g=2.1` (second   | first center is 2.12 (:math:`S=1/2`);  |
  | three magnetic centers: one center of  | type) and :math:`g=2.0` (third type);  | of the second center 2.43              |
  | the first kind and two centers of the  | the cluster consists of four magnetic  | (:math:`S=3/2`); of the fifth center   |
  | second kind. Only the ground doublet   | centers: two centers of the first kind,| 2.00 (:math:`S=1/2`); the entire       |
  | state from each center is considered   | one center of the second kind and one  | cluster consists of six magnetic       |
  | for the exchange coupling. As a result | center of the third kind. From each of | centers: one center of each kind. From |
  | the :math:`N_{\text{exch}}=2^1 \times  | the centers of the first kind, four    | the center of the first kind, two      |
  | 2^2=8`. File :file:`aniso_1.input` (for| spin-orbit states are considered for   | spin-orbit states are considered in the|
  | --- type 1) must be present.           | the exchange coupling, two states from | exchange coupling, four states from the|
  |                                        | the second kind and three states from  | second center, three states from the   |
  |                                        | the center of the third kind. As a     | third center, five states from the     |
  |                                        | result the :math:`N_{\text{exch}}=4^2  | fourth center and two states from the  |
  |                                        | \times 2^1 \times 3^1=96`. The file    | fifth and sixth centers. As a result   |
  |                                        | :file:`aniso_1.input` must be present. | the :math:`N_{\text{exch}}=2^1 \times  |
  |                                        |                                        | 4^1 \times 3^1 \times 5^1 \times 2^1   |
  |                                        |                                        | \times 2^1=480`. Three files           |
  |                                        |                                        | :file:`aniso_3.input` and              |
  |                                        |                                        | :file:`aniso_4.input` and              |
  |                                        |                                        | :file:`aniso_6.input` must be present. |
  +----------------------------------------+----------------------------------------+----------------------------------------+

  There is no maximal value for :kword:`NNEQ`, although the calculation becomes quite heavy in case the number of
  exchange functions is large.

  .. xmldoc:: <KEYWORD MODULE="POLY_ANISO" NAME="NNEQ" APPEAR="Definition of input magnetic sites" KIND="CUSTOM" LEVEL="BASIC">
              %%Keyword: NNEQ <basic>
              <HELP>
              This keyword defines several important parameters of the calculation. On the
              first line after the keyword the program reads 2 values:

              1) the number of types of different magnetic centers (NON-EQ) of the cluster and
              2) a letter "T" or "F" in the second position of the same line.

              The number of NON-EQ is the total number of magnetic centers of the cluster
              which cannot be related by point group symmetry.
              In the second position the answer to the question: "Have all NON-EQ centers been computed ab initio?"
              is given: "T" for True and "F" for False.
              On the third position, the answer to the question: "Are the rassi.h5 files to be read for input?"
              is given. For the current status, the letter "F" is the only option.
              On the following line the program will read NON-EQ values specifying the
              number of equivalent centers of each type.
              On the following line the program will read NON-EQ integer numbers specifying
              the number of low-lying spin-orbit functions from each center forming the local
              exchange basis.
              </HELP>
              </KEYWORD>

:kword:`SYMM`
  Specifies rotation matrices to symmetry equivalent sites. This keyword is mandatory in the case more centers of a given type are present in the calculation.
  This keyword is mandatory when the calculated polynuclear compound has exact crystallographic point group symmetry. In other words, when the number of
  equivalent centers of any kind :math:`i` is larger than 1, this keyword must be employed. Here the rotation matrices from the one
  center to all the other of the same type are declared.
  On the following line the program will read the number ``1`` followed on the next lines by as many :math:`3\times3` rotation matrices as the total number of
  equivalent centers of type ``1``. Then the rotation matrices of centers of type ``2``, ``3`` and so on, follow in the same format.
  When the rotation matrices contain irrational numbers (e.g. :math:`\sin{\frac{\pi}{6}}=\frac{\sqrt{3}}{2}`), then more digits than presented in the examples
  below are advised to be given: :math:`\frac{\sqrt{3}}{2}=0.86602540378`.

  Examples:

  .. class:: poly_aniso

  +----------------------------------------+----------------------------------------+----------------------------------------+
  | ::                                     | ::                                     | ::                                     |
  |                                        |                                        |                                        |
  |     NNEQ                               |   NNEQ                                 |   NNEQ                                 |
  |     2  F  F                            |   3  F  F                              |   6  F  F                              |
  |     1  2                               |   2  1  1                              |   1  1  1  1  1  1                     |
  |     2  2                               |   4  2  3                              |   2  4  3  5  2  2                     |
  |     A  B                               |   A  B  B                              |   B  B  A  A  B  A                     |
  |     2.3                                |   2.1                                  |   2.12                                 |
  |                                        |   2.0                                  |   2.43                                 |
  |     SYMM                               |   2.0                                  |   2.00                                 |
  |     1                                  |                                        |                                        |
  |     1.0 0.0 0.0                        |   SYMM                                 |                                        |
  |     0.0 1.0 0.0                        |   1                                    |                                        |
  |     0.0 0.0 1.0                        |   1.0 0.0 0.0                          |                                        |
  |     2                                  |   0.0 1.0 0.0                          |                                        |
  |     1.0 0.0 0.0                        |   0.0 0.0 1.0                          |                                        |
  |     0.0 1.0 0.0                        |   0.0 -1.0 0.0                         |                                        |
  |     0.0 0.0 1.0                        |   1.0 0.0  0.0                         |                                        |
  |     -1.0 0.0 0.0                       |   0.0 0.0  1.0                         |                                        |
  |     0.0 -1.0 0.0                       |   2                                    |                                        |
  |     0.0 0.0 -1.0                       |   1.0 0.0 0.0                          |                                        |
  |                                        |   0.0 1.0 0.0                          |                                        |
  |                                        |   0.0 0.0 1.0                          |                                        |
  |                                        |   3                                    |                                        |
  |                                        |   1.0 0.0 0.0                          |                                        |
  |                                        |   0.0 1.0 0.0                          |                                        |
  |                                        |   0.0 0.0 1.0                          |                                        |
  +----------------------------------------+----------------------------------------+----------------------------------------+
  | The cluster computed here is a         | In this input a tetranuclear compound  | In this case the computed system has no|
  | trinuclear compound, with one center   | is defined, all centers are computed ab| symmetry. Therefore, the :kword:`SYMM` |
  | computed ab initio, while the other two| initio. There are two centers of type  | keyword may be skipped.                |
  | centers, related to each other by      | "1", related one to each other by      |                                        |
  | inversion, are considered isotropic    | :math:`C_2` symmetry around the        |                                        |
  | with :math:`g_x=g_y=g_z=2.3`. The      | Cartesian Z axis. Therefore the        |                                        |
  | rotation matrix for the first center is| :kword:`SYMM` keyword is mandatory.    |                                        |
  | :math:`I` (identity, unity) since the  | There are two matrices for centers of  |                                        |
  | center is unique. For the centers of   | type 1, and one matrix (identity) for  |                                        |
  | type 2, there are two matrices         | the centers of type 2 and type 3.      |                                        |
  | :math:`3\times3` since we have two     |                                        |                                        |
  | centers in the cluster. The rotation   |                                        |                                        |
  | matrix of the first center of type 2 is|                                        |                                        |
  | Identity while the rotation matrix for |                                        |                                        |
  | the equivalent center of type 2 is the |                                        |                                        |
  | inversion matrix.                      |                                        |                                        |
  +----------------------------------------+----------------------------------------+----------------------------------------+

  More examples are given in the *Tutorial* section.

  .. xmldoc:: <KEYWORD MODULE="POLY_ANISO" NAME="SYMM" APPEAR="Definition of symmetry of the polynuclear cluster, if any" KIND="CUSTOM" LEVEL="BASIC">
              %%Keyword: SYMM <basic>
              <HELP>
              Specifies rotation matrices to symmetry equivalent sites. This keyword is mandatory in the case more centers of a given type are present in the calculation.
              This keyword is mandatory when the calculated polynuclear compound has exact crystallographic point group symmetry. In other words, when the number of
              equivalent centers of any kind "i" is larger than 1, this keyword must be employed. Here the rotation matrices from the one
              center to all the other of the same type are declared.
              On the following line the program will read the number "1" followed on the next lines by as many 3x3 rotation matrices as the total number of
              equivalent centers of type "1". Then the rotation matrices of centers of type "2", "3" and so on, follow in the same format.
              </HELP>
              </KEYWORD>

*Keywords defining the magnetic exchange interactions*

This section defines the keywords used to set up the interacting pairs of magnetic centers
and the corresponding exchange interactions.

A few words about the numbering of the magnetic centers of the
cluster in the :program:`POLY_ANISO`. First all equivalent centers of the type 1 are
numbered, then all equivalent centers of the type 2, etc. These labels of the magnetic
centers are used further for the declaration of the magnetic coupling.
The pseudo-code is: ::

  k=0
  Do i=1, number-of-non-equivalent-sites
    Do j=1, number-of-equivalent-sites-of-type(i)
       k=k+1
       site-number(i,j)=k
    End Do
  End Do

.. class:: keywordlist

:kword:`PAIR` or :kword:`LIN1`
  Specifies the Lines interaction(s) between metal pairs. One parameter per interacting pair is required.

  ::

    LIN1
       READ number-of-interacting-pairs
       Do i=1, number-of-interacting-pairs
          READ site-1, site-2,   J
       End Do

  .. xmldoc:: <KEYWORD MODULE="POLY_ANISO" NAME="PAIR" KIND="REALS_COMPUTED" SIZE="3" LEVEL="UNDOCUMENTED" ALSO="LIN1" />

:kword:`ALIN` or :kword:`LIN3`
  Specifies the anisotropic interactions between metal pairs. Three parameters per interacting pair are required.

  ::

    LIN3
       READ number-of-interacting-pairs
       Do i=1, number-of-interacting-pairs
          READ site-1, site-2,   Jxx, Jyy, Jzz
       End Do

  :math:`J_{\alpha\beta}`, where :math:`\alpha` and :math:`\beta` are main values of the Cartesian components of the (:math:`3\times3`) matrix defining the exchange interaction between site-1 and site-2.

  .. xmldoc:: <KEYWORD MODULE="POLY_ANISO" NAME="ALIN" KIND="REALS_COMPUTED" SIZE="5" LEVEL="UNDOCUMENTED" ALSO="LIN3" />

:kword:`LIN9`
  Specifies the full anisotropic interaction matrices between metal pairs. Nine parameters per interacting pair is required.

  ::

    LIN9
       READ number-of-interacting-pairs
       Do i=1, number-of-interacting-pairs
          READ site-1, site-2,   Jxx, Jxy, Jxz,   Jyx, Jyy, Jyz,  Jzx, Jzy, Jzz
       End Do

  :math:`J_{\alpha\beta}`, where :math:`\alpha` and :math:`\beta` are main values of the Cartesian components of the (:math:`3\times3`) matrix defining the exchange interaction between site-1 and site-2.

  .. xmldoc:: <KEYWORD MODULE="POLY_ANISO" NAME="LIN9" KIND="REALS_COMPUTED" SIZE="11" LEVEL="UNDOCUMENTED" />

:kword:`COOR`
  Specifies the symmetrized coordinates of the metal sites. This keyword enables computation of dipole-dipole
  magnetic interaction between metal sites defined in the keywords :kword:`PAIR`, :kword:`ALIN`, :kword:`LIN1`, :kword:`LIN3` or :kword:`LIN9`.

  ::

    COOR
       Do i=1, number-of-non-equivalent-sites
          READ coordinates of center 1
          READ coordinates of center 2
          ...
       End Do

  .. xmldoc:: <KEYWORD MODULE="POLY_ANISO" NAME="COOR" KIND="REALS_LOOKUP" SIZE="3NNEQ" LEVEL="BASIC">
              %%Keyword: COOR <basic>
              <HELP>
              Specifies the symmetrized coordinates of the metal sites. This keyword enables computation of dipole-dipole interaction.
              </HELP>
              </KEYWORD>

*Other keywords*

Normally :program:`POLY_ANISO` runs without specifying any of the following keywords.

Argument(s) to a keyword are always supplied on the next line of the input file.

Optional general keywords to control the input
..............................................

.. class:: keywordlist

:kword:`MLTP`
  The number of molecular multiplets (i.e. groups of spin-orbital eigenstates) for which
  :math:`g`, :math:`D` and higher magnetic tensors will be calculated (default :kword:`MLTP`\=1).
  The program reads two lines: the first is the number of multiplets (:math:`N_{\text{MULT}}`) and the
  second the array of :math:`N_{\text{MULT}}` numbers specifying the dimension (multiplicity) of each multiplet.

  Example: ::

    MLTP
    10
    2 4 4 2 2   2 2 2 2 2

  :program:`POLY_ANISO` will compute the :math:`g` and :math:`D{-}` tensors for 10 groups of states.
  The groups 1 and 4--10 are doublets (:math:`\tilde{S}=\ket{1/2}`), while the groups 2 and 3 are quadruplets,
  having the effective spin :math:`\tilde{S}=\ket{3/2}`. For the latter cases, the ZFS (:math:`D{-}`) tensors will be computed.

  .. xmldoc:: <KEYWORD MODULE="POLY_ANISO" NAME="MLTP" KIND="INTS_COMPUTED" SIZE="1" LEVEL="BASIC" DEFAULT_VALUE="1">
              %%Keyword: MLTP <basic>
              <HELP>
              The number of molecular multiplets (i.e. groups of spin-orbital eigenstates) for
              which g, D and higher magnetic tensors will be calculated.
              The program reads two lines: the first is the number of multiplets (NMULT) and
              on the second line the array of NMULT numbers specifying the dimension of each multiplet.
              By default, the code will first analyze the energy spectra by itself and will
              compute the g and D tensors for ten low-lying groups of states. By using this
              keyword the user overwrites the default.
              </HELP>
              </KEYWORD>

:kword:`TINT`
  Specifies the temperature points for the evaluation of the magnetic susceptibility. The program will read three numbers: :math:`T_{\text{min}}`, :math:`T_{\text{max}}`, :math:`n_T`.

  .. container:: list

    :math:`T_{\text{min}}` --- the minimal temperature (Default 0.0 K)

    :math:`T_{\text{max}}` --- the maximal temperature (Default 300.0 K)

    :math:`n_T` --- number of temperature points (Default 101)

  Example: ::

    TINT
    0.0  330.0  331

  :program:`POLY_ANISO` will compute temperature dependence of the magnetic susceptibility in 331 points evenly distributed in temperature interval: 0.0 K -- 330.0 K.

  .. xmldoc:: <KEYWORD MODULE="POLY_ANISO" NAME="TINT" KIND="REAL" LEVEL="BASIC">
              %%Keyword: TINT <basic>
              <HELP>
              Specifies the temperature points for the evaluation of the magnetic susceptibility.
              The program will read three numbers: Tmin, Tmax, nT. Units of temperature = kelvin (K).

              Tmin -- the minimal temperature (Default 0.0 K)
              Tmax -- the maximal temperature (Default 300.0 K)
              nT   -- number of temperature points (Default 101)
              </HELP>
              </KEYWORD>

:kword:`HINT`
  Specifies the field points for the evaluation of the magnetization in a certain direction. The program will read four numbers: :math:`H_{\text{min}}`, :math:`H_{\text{max}}` and :math:`n_H`

  .. container:: list

    :math:`H_{\text{min}}` --- the minimal field (Default 0.0 T)

    :math:`H_{\text{max}}` --- the maximal filed (Default 10.0 T)

    :math:`n_H` --- number of field points (Default 101)

  .. compound::

    Example: ::

      HINT
      0.0  20.0  201

    :program:`POLY_ANISO` will compute the molar magnetization in 201 points evenly distributed in field interval: 0.0 T -- 20.0 T.

  .. xmldoc:: <KEYWORD MODULE="POLY_ANISO" NAME="HINT" KIND="REAL" LEVEL="BASIC">
              %%Keyword: HINT <basic>
              <HELP>
              Specifies the field points for the evaluation of the molar magnetization.
              The program will read four numbers: Hmin, Hmax, nH, and dltH0. Units of magnetic field = tesla (T).

              Hmin -- the minimal field (Default 0.0 T)
              Hmax -- the maximal field (Default 300.0 T)
              nH   -- number of field points (Default 101)
              </HELP>
              </KEYWORD>

:kword:`TMAG`
  Specifies the temperature(s) at which the field-dependent magnetization is calculated. Default is one temperature point, :math:`T`\=2.0 K.
  Example: ::

    TMAG
    6   1.8 2.0 2.4  2.8 3.2 4.5

  .. xmldoc:: <KEYWORD MODULE="POLY_ANISO" NAME="TMAG" KIND="REAL" LEVEL="BASIC">
              %%Keyword: TMAG <basic>
              <HELP>
              Specifies the temperature at which the field-dependent magnetization is calculated. Default is 2.0 K
              </HELP>
              </KEYWORD>

:kword:`ENCU`
  .. compound::

    This flag is used to define the cut-off energy for the lowest states for which Zeeman interaction is taken into account exactly. The contribution to the magnetization coming from states that are higher in energy than :math:`E` (see below) is done by second order perturbation theory. The program will read two integer numbers: :math:`N_K` and :math:`M_G`. Default values are: :math:`N_K`\=100, :math:`M_G`\=100.

    .. math:: E=N_K \cdot k_{\text{B}} \cdot T_{\text{MAG}} + M_G \cdot \mu_{\text{Bohr}} \cdot H_{\text{max}}

    The field-dependent magnetization is calculated at the (highest) temperature value defined in either :kword:`TMAG` or :kword:`HEXP`.
    Example: ::

      ENCU
      250  150

    If :math:`H_{\text{max}}` = 10 T and :kword:`TMAG` = 1.8 K, then the cut-off energy is:

    .. math:: E=100 \cdot 250 \cdot k_{\text{B}} \cdot 1.8 + 150 \cdot \mu_{\text{Bohr}} \cdot 10 = 1013.06258\,\text{cm}^{-1}

    This means that the magnetization coming from all spin-orbit states with energy lower than :math:`E=1013.06258\,\text{cm}^{-1}` will be computed exactly.
    :kword:`ERAT`, :kword:`NCUT` and :kword:`ENCU` are mutually exclusive.

  .. xmldoc:: <KEYWORD MODULE="POLY_ANISO" NAME="ENCU" KIND="INT" LEVEL="BASIC">
              %%Keyword: ENCU <basic>
              <HELP>
              This keyword is used to define the cut-off energy for the lowest states for which
              Zeeman interaction is taken into account exactly. The contribution to the
              magnetization coming from states that are higher in energy than E (see below)
              is done by second order perturbation theory. The program will read two integer
              numbers: NK and MG. Default values are: NK=100, MG=100. The field-dependent magnetization
              is calculated at the temperature value TMAG.
              </HELP>
              </KEYWORD>

:kword:`ERAT`
  .. compound::

    This flag is used to define the cut-off energy for the lowest states for which Zeeman interaction
    is taken into account exactly. The contribution to the molar magnetization coming from states that
    are higher in energy than :math:`E` (see below) is done by second order perturbation theory.
    The program reads one real number in the domain (0.0--1.0). Default is 1.0 (all exchange states are
    included in the Zeeman interaction).

    .. math:: E = \text{ERAT} \cdot \text{Maximal-spread-of-exchange-splitting}

    The field-dependent magnetization is calculated at all temperature points defined in either :kword:`TMAG` or :kword:`HEXT`.
    Example: ::

      ERAT
      0.75

    :kword:`ERAT`, :kword:`NCUT` and :kword:`ENCU` are mutually exclusive.

  .. xmldoc:: <KEYWORD MODULE="POLY_ANISO" NAME="ERAT" KIND="INT" LEVEL="BASIC">
              %%Keyword: ERAT <basic>
              <HELP>
              This keyword is used to define the cut-off energy for the lowest states for which
              Zeeman interaction is taken into account exactly. The contribution to the
              magnetization coming from states that are higher in energy than E (see below)
              is done by second order perturbation theory. The program will read one real number in the domain 0.0-1.0.
              The field-dependent magnetization
              is calculated at the temperature value TMAG.
              </HELP>
              </KEYWORD>

:kword:`NCUT`
  .. compound::

    This flag is used to define the number of low-lying exchange states for which Zeeman interaction is taken into
    account exactly. The contribution to the magnetization coming from the remaining exchange states is done by second
    order perturbation theory. The program will read one integer number. The field-dependent magnetization is calculated at all temperature points defined in either :kword:`TMAG` or :kword:`HEXT`.
    Example: ::

      NCUT
      125

    In case the defined number is larger than the total number of exchange states in the calculation (:math:`N_{\text{exch}}`), then :math:`n_{\text{Cut}}` is set to be equal to :math:`N_{\text{exch}}`.
    :kword:`ERAT`, :kword:`NCUT` and :kword:`ENCU` are mutually exclusive.

:kword:`MVEC`
  Defines the number of directions for which the magnetization vector will be computed.
  On the first line below the keyword, the number of directions should be mentioned (:math:`N_{\text{DIR}}`. Default 0).
  The program will read :math:`N_{\text{DIR}}` lines for Cartesian coordinates specifying the direction :math:`i` of the
  applied magnetic field (:math:`\theta_i` and :math:`\phi_i`). These values may be arbitrary real numbers.
  The direction(s) of applied magnetic field are obtained by normalizing the length of each vector to one.
  Example: ::

    MVEC
    4
    0.0000  0.0000   0.1000
    1.5707  0.0000   2.5000
    1.5707  1.5707   1.0000
    0.4257  0.4187   0.0000

  The above input requests computation of the magnetization vector in four directions of applied field.
  The actual directions on the unit sphere are: ::

    4
    0.00000  0.00000  1.00000
    0.53199  0.00000  0.84675
    0.53199  0.53199  0.33870
    0.17475  0.17188  0.00000

  .. xmldoc:: <KEYWORD MODULE="POLY_ANISO" NAME="MVEC" KIND="REALS_COMPUTED" SIZE="3" LEVEL="BASIC">
              %%Keyword: MVEC <basic>
              <HELP>
              Defines the number of directions for which the magnetization vector will be computed.
              On the first line below the keyword, the number of directions should be mentioned (NDIR. Default 0).
              The program will read NDIR lines for spherical coordinates specifying the direction
              "i" of the magnetic field (theta_i and phi_i). These values should be in radians.
              </HELP>
              </KEYWORD>

:kword:`ZEEM`
  Defines the number of directions for which the Zeeman energy will be computed/saved/plotted.
  On the first line below the keyword, the number of directions should be mentioned (:math:`N_{\text{DIR}}`. Default 0).
  The program will read :math:`N_{\text{DIR}}` lines for Cartesian coordinates specifying the direction :math:`i` of the
  applied magnetic field (:math:`\theta_i` and :math:`\phi_i`). These values may be arbitrary real numbers.
  The direction(s) of applied magnetic field are obtained by normalizing the length of each vector to one.
  Example: ::

    MVEC
    4
    0.0000  0.0000   0.1000
    1.5707  0.0000   2.5000
    1.5707  1.5707   1.0000
    0.4257  0.4187   0.0000

  The above input requests computation of the magnetization vector in four directions of applied field.
  The actual directions on the unit sphere are: ::

    4
    0.00000  0.00000  1.00000
    0.53199  0.00000  0.84675
    0.53199  0.53199  0.33870
    0.17475  0.17188  0.00000

  .. xmldoc:: <KEYWORD MODULE="POLY_ANISO" NAME="ZEEM" KIND="REALS_COMPUTED" SIZE="3" LEVEL="BASIC">
              %%Keyword: ZEEM <basic>
              <HELP>
              Defines the number of directions for which the magnetization vector will be computed.
              On the first line below the keyword, the number of directions should be mentioned (NDIR. Default 0).
              The program will read NDIR lines for spherical coordinates specifying the direction
              "i" of the magnetic field (theta_i and phi_i). These values should be in radians.
              </HELP>
              </KEYWORD>

:kword:`MAVE`
  This keyword specifies the grid density used for the computation of powder molar
  magnetization. The program uses Lebedev--Laikov distribution of points on the unit sphere.
  The program reads two integer numbers: :math:`n_{\text{sym}}` and :math:`n_{\text{grid}}`. The :math:`n_{\text{sym}}` defines which
  part of the sphere is used for averaging. It takes one of the three values: 1 (half-sphere),
  2 (a quarter of a sphere) or 3 (an octant of the sphere). :math:`n_{\text{grid}}` takes values from 1
  (the smallest grid) till 32 (the largest grid, i.e. the densest). The default is to
  consider integration over a half-sphere (since :math:`M(H)=-M(-H)`): :math:`n_{\text{sym}}=1` and :math:`n_{\text{grid}}=15`
  (i.e. 185 points distributed over half-sphere). In case of symmetric compounds, powder
  magnetization may be averaged over a smaller part of the sphere, reducing thus the number
  of points for the integration. The user is responsible to choose the appropriate integration scheme.
  Note that the program's default is rather conservative.

  .. xmldoc:: <KEYWORD MODULE="POLY_ANISO" NAME="MAVE" KIND="INTS" SIZE="2" LEVEL="BASIC" DEFAULT_VALUES="1,15">
              %%Keyword: MAVE <basic>
              <HELP>
              This keyword specifies the grid density used for the computation of powder molar
              magnetization. The program uses Lebedev-Laikov distribution of points on the unit sphere.
              The program reads two integer numbers: NSYM and NGRID. The NSYM defines which
              part of the sphere is used for averaging. It takes one of the three values: 1 (half-sphere),
              2 (a quarter of a sphere) or 3 (an octant of the sphere). NGRID takes values from 1
              (the smallest grid) till 32 (the largest grid, i.e. the densest). The default is to
              consider integration over a half-sphere (since M(H)=-M(-H)): NSYM=1 and NGRID=15
              (i.e. 185 points distributed over half-sphere). In case of symmetric compounds, powder
              magnetization may be averaged over a smaller part of the sphere, reducing thus the number
              of points for the integration. The user is responsible to choose the appropriate integration scheme.
              Note that the program's default is rather conservative.
              </HELP>
              </KEYWORD>

:kword:`TEXP`
  This keyword allows computation of the magnetic susceptibility :math:`\chi T(T)` at experimental points.
  On the line below the keyword, the number of experimental points :math:`N_T` is defined, and on the next :math:`N_T` lines the program reads the experimental temperature (in K) and the experimental magnetic susceptibility (in :math:`\text{cm}^3\text{K}\text{mol}^{-1}`). :kword:`TEXP` and :kword:`TINT` keywords are mutually exclusive. The magnetic susceptibility routine will also print the standard deviation from the experiment.

  ::

    TEXP
       READ  number-of-T-points
       Do i=1, number-of-T-points
          READ ( susceptibility(i, Temp), TEMP = 1, number-of-T-points )
       End Do

  .. xmldoc:: <KEYWORD MODULE="POLY_ANISO" NAME="TEXP" KIND="REALS_COMPUTED" SIZE="2" LEVEL="BASIC">
              %%Keyword: TEXP <basic>
              <HELP>
              This keyword allows computation of the magnetic susceptibility at experimental
              temperature points. On the line below the keyword, the number of experimental
              points NT is defined, and on the next NT lines the program reads the experimental
              temperature (in K) and the experimental magnetic susceptibility (in cm^3 K mol^-1).
              TEXP and TINT keywords are mutually exclusive. The POLY_ANISO will also print the
              standard deviation from the experiment.
              </HELP>
              </KEYWORD>

:kword:`HEXP`
  This keyword allows computation of the molar magnetization :math:`M_{\text{mol}} (H)` at experimental points.
  On the line below the keyword,the number of experimental points :math:`N_H` is defined, and on the next :math:`N_H` lines the program reads the experimental field intensity (tesla) and the experimental magnetization (in :math:`\mu_{\text{Bohr}}`). :kword:`HEXP` and :kword:`HINT` are mutually exclusive. The magnetization routine will print the standard deviation from the experiment.

  ::

    HEXP
       READ  number-of-T-points-for-M,  all-T-points-for-M-in-K
       READ  number-of-field-points
       Do i=1, number-of-field-points
          READ ( Magn(i, iT), iT=1, number-of-T-points-for-M )
       End Do

  .. xmldoc:: <KEYWORD MODULE="POLY_ANISO" NAME="HEXP" KIND="CUSTOM" LEVEL="BASIC">
              %%Keyword: HEXP <basic>
              <HELP>
              This keyword allows computation of the molar magnetization at experimental field points.
              On the line below the keyword,the number of experimental points NH is defined, and on
              the next NH lines the program reads the experimental field strength (tesla) and the
              experimental magnetization (in Bohr magnetons). HEXP and HINT are mutually exclusive.
              The POLY_ANISO will print the standard deviation from the experiment.
              </HELP>
              </KEYWORD>

:kword:`ZJPR`
  This keyword specifies the value (in :math:`\text{cm}^{-1}`) of a phenomenological parameter of a mean molecular field acting on the spin of the complex (the average intermolecular exchange constant). It is used in the calculation of all magnetic properties (not for spin Hamiltonians) (Default is 0.0)

  .. xmldoc:: <KEYWORD MODULE="POLY_ANISO" NAME="ZJPR" KIND="REAL" LEVEL="BASIC">
              %%Keyword: ZJPR <basic>
              <HELP>
              This keyword specifies the value (in cm^-1) of a phenomenological parameter of a
              mean molecular field acting on the spin of the complex (the average intermolecular
              exchange constant). It is used in the calculation of all magnetic properties (not for
              spin Hamiltonians) (Default is 0.0)
              </HELP>
              </KEYWORD>

:kword:`ABCC`
  This keyword will enable computation of magnetic and anisotropy axes in the
  crystallographic :math:`abc` system. On the next line, the program will read six real
  values, namely :math:`a`, :math:`b`, :math:`c`, :math:`\alpha`, :math:`\beta`, and :math:`\gamma`, defining the
  crystal lattice. On the second line, the program will read the Cartesian coordinates
  of the magnetic center. The computed values in the output correspond to the
  crystallographic position of three "dummy atoms" located on the corresponding anisotropy axes, at the distance of 1 ångström from the metal site. ::

    ABCC
    20.17   19.83   18.76    90  120.32  90
    12.329  13.872  1.234

  .. xmldoc:: <KEYWORD MODULE="POLY_ANISO" NAME="ABCC" KIND="STRING" LEVEL="BASIC">
              %%Keyword: ABCC <basic>
              <HELP>
              This keyword will enable computation of magnetic and anisotropy axes in the
              crystallographic abc system. On the next line, the program will read six real
              values, namely (a, b, c, alpha, beta, and gamma), defining the crystal lattice.
              On the second line, the program will read the Cartesian coordinates of the
              magnetic center. The computed values in the output correspond to the crystallographic
              position of three "dummy atoms" located on the corresponding anisotropy axes, at the
              distance of 1.0 angstrom from the metal site.
              </HELP>
              </KEYWORD>

:kword:`XFIE`
  This keyword specifies the value (in :math:`\text{T}`) of applied magnetic field
  for the computation of magnetic susceptibility by :math:`\mathrm{d}M/\mathrm{d}H` and :math:`M/H` formulas.
  A comparison with the usual formula (in the limit of zero applied field) is provided.
  (Default is 0.0)

  .. xmldoc:: <KEYWORD MODULE="POLY_ANISO" NAME="XFIE" KIND="REAL" LEVEL="BASIC">
              %%Keyword: XFIE <basic>
              <HELP>
              This keyword specifies the value (in tesla) of applied magnetic field
              for the computation of magnetic susceptibility by: dM/dH and M/H formulas.
              A comparison with the usual formula (in the limit of zero applied field) is provided.
              (Default is 0.0)
              </HELP>
              </KEYWORD>

:kword:`PRLV`
  This keyword controls the print level.

  .. container:: list

    2 --- normal. (Default)

    3 or larger (debug)

  .. xmldoc:: <KEYWORD MODULE="POLY_ANISO" NAME="PRLV" KIND="INT" LEVEL="BASIC">
              %%Keyword: PRLV <basic>
              <HELP>
              This keyword controls the print level.

              2  -- normal. (Default)
              3+ -- (debug)
              </HELP>
              </KEYWORD>

:kword:`PLOT`
  This keyword will generate a few plots (png or eps format) via an interface to the linux program *gnuplot*.
  The interface generates a datafile, a gnuplot script and attempts execution of the script for generation of the image.
  The plots are generated only if the respective function is invoked. The magnetic susceptibility, molar magnetisation and blocking barrier (UBAR) plots are generated.
  The files are named: :file:`XT.dat`, :file:`XT.plt`, :file:`XT.png`, :file:`MH.dat`, :file:`MH.plt`, :file:`MH.png`, :file:`BARRIER_TME.dat`, :file:`BARRIER_ENE.dat`, :file:`BARRIER.plt` and :file:`BARRIER.png`.

  .. xmldoc:: <KEYWORD MODULE="POLY_ANISO" NAME="PLOT" KIND="SINGLE" LEVEL="BASIC">
              %%Keyword: PLOT <basic>
              <HELP>
              This keyword will generate a few plots (png or eps format) via an interface to the linux program "gnuplot".
              The interface generates a datafile, a gnuplot script and attempts execution of the script for generation of the image.
              The plots are generated only if the respective function is invoked. The magnetic susceptibility, molar magnetisation and blocking barrier (UBAR) plots are generated.
              The files are named: XT.dat, XT.plt, XT.png, MH.dat, MH.plt, MH.png, BARRIER_TME.dat, BARRIER_ENE.dat, BARRIER.plt and BARRIER.png.
              </HELP>
              </KEYWORD>

:kword:`OLDA`
  This keyword requests to use the old-formatted ANISOINPUT files produced by :program:`SINGLE_ANISO` run. Please make use of the new DATAFILE :file:`$Project.aniso` produced in any successful run of :program:`SINGLE_ANISO`.

  .. xmldoc:: <KEYWORD MODULE="POLY_ANISO" NAME="OLDA" KIND="SINGLE" LEVEL="BASIC">
              %%Keyword: OLDA <basic>
              <HELP>
              This keyword requests to use the old-formatted ANISOINPUT files produced by SINGLE_ANISO run.
              Please make use the new DATAFILE $Project.aniso produced in any successful run of SINGLE_ANISO.
              </HELP>
              </KEYWORD>

.. xmldoc:: </MODULE>