<* \$Id: xnd_r11v.html,v 1.1.1.1 1999/07/31 10:49:00 berar Exp \$ *> XND 1.1: standard blocks in the input file.

## xnd 1.1: encoding of variables in the standard blocks.

### Introduction

For each variable in the program, xnd allows some complex treatment such as a polynomial expansion or introduction of linear dependance. All the variables in xnd are read using the same procedure. For convenient reasons they are grouped by block of variables which have the same behaviour.

The program is structured in order to have a starting input file of a simple form containing only a limited number of foundamental blocks having a simple form. Nevertheless, it is possible, as the refinement progresses, to add some more blocks or to modify the existent. This actually leads to an increased complexity of the block structures and to a growing number of blocks. We have already said that it is possible to introduce a depence on an external variable Temp in all the cristallographic parameters.

A numerical code at the beginning of each block gives the order of the polynome describing the crystallographic parameters in the bloc. In the other files of this document all blocks are expressed in their generic form which is for a simple bloc.
 Order Var0 % kind of developpement of the variables in this standard block \$ the value of Var0 and refinement code \$ the value of Var1 and refinement code
Before giving some examples, the basic rules for building the blocks will be described.

#### Order and size expansion

The Order parameter, associated with the format '%', is made from two parameters from one or two integers according to:
order size example size not read The bloc is empty : used to read some blocks in which you can have no data (eg if no points are specified in the background) 1 No Dependance of Temp, that is a classical parameter a=a(0) 1 Polynomial expansion with Temp of power order(eg cell paramters with thermal expansiond) a=a(0)+a(1)*Temp+a(2)*Temp^2 size to be read No Dependance of Temp but a multidimensional linear expansion using internal parameters b, c ... a=b(0)+c(0) Polynomial expansion with Temp of power -order and multidimensional linear expansion a=b(0)+c(0)+Temp*(b(1)+c(1))
Caution, the value of order is limited when reading the file to the value given in the MaxOrder parameter specified in the file header. This has be done to detect some mistakes reading the file avoiding some nosense data. that no

#### Content of the value field

In the coordinate file, two fields are associated to each refined variable:
• the value;
• RefCode, the refinement code which can include a coupling coefficient.
The content of each parameter, associated with the format '@', depends on the values of order and size according the following examples:
ordersizecontent
0
11Value(0)RefCode(0)
2Value(0)RefCode(0) Value(1)RefCode(1)
3Value(0)RefCode(0) Value(1)RefCode(1)Value(2)RefCode(2)
-12Value(0)RefCode(0,1)RefCode(0,2)
3Value(0)RefCode(0,1)RefCode(0,2)RefCode(0,3)
-22Value(0)RefCode(0,1)RefCode(0,1) Value(1)RefCode(1,1)RefCode(1,2)

#### Codeword and coupling coefficient

The content of RefCode, the refinement code is simple, it contains:
• the codeword value;
• an optional coupling coefficient.
These values are read according to the following table
CodeWordCoupling Coef.meaning
0fixed
For the codewords between 11 and 999, the program creates an internal parameter with CodeWord as reference number and all the values refering the parameter are moved from this parameter multiplied by their coupling coefficient. Some specific rules appear in case where the ValidRef value in the general header is non zero, they will be described with alternate refinement.

### Generic structure of variables block

 Order Par(0,0) Par(1,0) % kind of developpement of the variables according to specific definition the following group can be repeated d/f parameter d/f parameter ... d/f parameter \$ the value of Var0 and refinement code d/f parameter d/f parameter ... d/f parameter \$ the value of Var1 and refinement code

### Examples

The following only contains basic examples. The more complicated examples are described apart together with some explaination on the alternate refinement.

#### Examples of blocks having no Temp dependance

The following example is a fixed size block corresponding to the setting of the instrument. There are 4 variables to read, only the first will be adjusted.
```1
0.002   1    1.0  0
0.0     0    .20  -1
```
Here is a typical cell parameter block with 7 variables to read. As an example an quadratic constrain have been choosen.
```1
0.0   0
5.100 11 1.0    5.100 11 1.0    8.200 1
90 0            90 0            90 0
```

#### Example of blocks having with Temp dependance

This example is the same than the preceeding one but we have allowed a linear cell expansion with Temp
```2
0.0   0        0.0   0
5.100 11 1.0   0.002 12 1.0
5.100 11 1.0   0.002 12 1.0
8.200 1        0.004  1
90 0      0.0   0
90 0      0.0   0
90 0      0.0   0
```

JFB, March 26th, 1999