| 1 | == An example with water and TREMOLO == |
| 2 | |
| 3 | We want to create a box filled with water. |
| 4 | |
| 5 | First, we need the following file '''singleh2o.data''': |
| 6 | {{{ |
| 7 | # ATOMDATA Id name resName resSeq x=3 charge type neighbors=2 |
| 8 | # INPUTCONV shift 6.25 6.25 6.25 |
| 9 | # INPUTCONV periodic 1 |
| 10 | # INPUTCONV temp 0.55 |
| 11 | # OUTPUTCONV shift -6.25 -6.25 -6.25 |
| 12 | 1 OH2 TIP3 1 1.583 1.785 1.480 -0.8340 OT 2 3 |
| 13 | 2 H1 TIP3 1 1.186 1.643 2.213 0.4170 HT 1 0 |
| 14 | 3 H2 TIP3 1 2.642 1.896 1.730 0.4170 HT 1 0 |
| 15 | }}} |
| 16 | |
| 17 | Take the remainder of the required files (for a TREMOLO simulation) from the respective ''h2o'' example of TREMOLO. |
| 18 | |
| 19 | Next, we create a 10x10x10 box filled with water at 1g/cm^3^ by calling molecuilder as follows: |
| 20 | {{{ |
| 21 | molecuilder --parse-tremolo-potentials h2o.potentials -i h2o.data -o tremolo xyz --change-box "10,0,10,0,0,10" --fill-void singleh2o.data --distances "3.1,3.1,3.1" |
| 22 | }}} |
| 23 | |
| 24 | We explain briefly the function of each action: |
| 25 | * ''--parse-tremolo-potentials'': parses a TREMOLO's potentials file. Without it, molecuilder does not know that '''OT''' actually refers to an oxygen atom (with element symbol '''O''') |
| 26 | * ''-i'': This is the specification of the output file (also the input file, if it contains atoms already, water is filled around it). |
| 27 | * ''--change-box'': We set the box dimension by giving a vector of each edge's lengths. |
| 28 | * ''--fill-void'': The empty space in the box (i.e. all of it) is filled with the atoms given by '''singleh2o.data'''. ''--distances'' refers to the distance between each molecule's center per axis (x,y,z). Note that you may also specify ''--random-atom-displacement'', ''--random-molecule-displacement'', and ''--!DoRotate'' to give the maximum random displacement for each atom, each molecule or a general rotation. Note even more that you can specify the random number generator used by the action ''--set-random-number-distribution''. Thereby, you can even have the random angles for rotation drawn from a discrete set and hence generate a discrete set of orientations of the water molecules. |
| 29 | |
| 30 | If you are interested in how the last note works, try this: |
| 31 | {{{ |
| 32 | molecuilder --parse-tremolo-potentials h2o.potentials -i h2o.data -o tremolo xyz --change-box "10,0,10,0,0,10" --set-random-number-distribution uniform_int --random-number-distribution-parameters "min=0;max=4" --fill-void singleh2o.data --distances "3.1,3.1,3.1" --distance-to-boundary 2 --DoRotate 1 |
| 33 | }}} |
| 34 | |
| 35 | Now, we need some more parameters: |
| 36 | * ''--set-random-number-distribution'': set the random number distribution, here a uniform integral distribution. |
| 37 | * ''--random-number-distribution-parameters'': We set min to 0 and max to 4, i.e. we have a five-sided dice. |
| 38 | * ''--distance-to-boundary'': Minimum distance to boundary should be 2 for the molecule to be placed, otherwise it is removed. |
| 39 | * ''--!DoRotate'': Enable random rotations. |