Changes between Version 2 and Version 3 of CreateMicelle


Ignore:
Timestamp:
Apr 4, 2012, 2:47:09 PM (13 years ago)
Author:
FrederikHeber
Comment:

changes due to CreateMicelleAction removal and FillSphericalSurfaceAction and FillRegularGridAction introduction

Legend:

Unmodified
Added
Removed
Modified
  • CreateMicelle

    v2 v3  
    55
    66=== First Micelle ===
    7 First, we will specify an empty '''TREMOLO''' data file (''-i test.data''), we give '''PDB''' and '''TREMOLO''' as output formats (''-o pdb tremolo''). Then we first parse the potentials file (''--parse-tremolo-potentials tensid.potentials''), then load the tenside molecule (''-l tensid.data''). ^(Note: The potentials file gives us information about which type represents which element, e.g. HLA2 actually means hydrogen or H. So, this part of the command is only necessary if your Type column in tensid.data does not contain valid element symbols.)^ We select the tensid molecule by its name, which is automatically set to from the filename (''--select-molecule-by-name tensid''). And then we call the !CreateMicelleAction with the following parameters (''--create-micelle 200 --position "0,0,0" --radius 10''):
    8  * 200 points on the surface of the sphere equals 200 resulting tenside molecules (MoleCuilder will state 400 because the ionic compound is regarded as a distinct molecule)
     7First, we will specify an empty '''TREMOLO''' data file (''-i test.data''), we give '''PDB''' and '''TREMOLO''' as output formats (''-o pdb tremolo''). Then we first parse the potentials file (''--parse-tremolo-potentials tensid.potentials''), then load the tenside molecule (''-l tensid.data''). ^(Note: The potentials file gives us information about which type represents which element, e.g. HLA2 actually means hydrogen or H. So, this part of the command is only necessary if your Type column in tensid.data does not contain valid element symbols.)^ We select the tensid molecule by its name, which is automatically set to from the filename (''--select-molecule-by-name tensid''). And then we call the !FillSphericalSurfaceAction with the following parameters (''--fill-spherical-surface --center "0,0,0" --radius 20 --count 200 --alignment-axis "0,0,1"''):
     8 * MoleCuilder cannot guarantee to fit precisely the number you want, it will be just 194.
    99 * The sphere is centered at (0,0,0)
    10  * The radius of the sphere is 10 (Angstroem).
     10 * The radius of the sphere is 20 (Angstroem).
     11 * it assume that the molecule is aligned along the Vector (0,0,1) (and we used (0,0,-1) in the rotation to the principal axis system to flip the sles molecule such that right part show out).
    1112
    1213{{{
    13 ~/workspace_C/molecuilder/debug64/src/molecuilder -v 3 -i test.data -o pdb tremolo --parse-tremolo-potentials tensid.potentials -l tensid.data --select-molecule-by-name tensid --create-micelle 200 --position "0,0,0" --radius 10
     14~/workspace_C/molecuilder/debug64/src/molecuilder \
     15  -v 3 \
     16  -i test.data \
     17  -o pdb tremolo \
     18  --parse-tremolo-potentials tensid.potentials \
     19  -l tensid.data \
     20  --select-molecule-by-name tensid \
     21  --rotate-to-prinicipal-axis-system "0,0,-1" \
     22  --fill-spherical-surface \
     23    --center "0,0,0" \
     24    --radius 20 \
     25    --count 200 \
     26    --alignment-axis "0,0,1"
    1427}}}
    1528
    1629=== Second Micelle ===
    17 The second call is as follows:
     30The second call very similar to the first one:
     31
     32
    1833{{{
    19 ~/workspace_C/molecuilder/debug64/src/molecuilder -v 3 -i test.data -o pdb tremolo --parse-tremolo-potentials -l tensid.data --select-molecule-by-name tensid --create-micelle 200 --position "100,0,0" --radius 10
     34~/workspace_C/molecuilder/debug64/src/molecuilder \
     35  -v 3 \
     36  -i test.data \
     37  -o pdb tremolo \
     38  --parse-tremolo-potentials tensid.potentials \
     39  -l tensid.data \
     40  --select-molecule-by-name tensid \
     41  --rotate-to-prinicipal-axis-system "0,0,-1" \
     42  --fill-spherical-surface \
     43    --center "100,0,0" \
     44    --radius 20 \
     45    --count 200 \
     46    --alignment-axis "0,0,1"
    2047}}}
    2148
    2249You notice that this is very similar to the first one. The only difference is the position is no (100,0,0) and not at (0,0,0), as we do not want to create the second micelle on top of the first but same space apart.
    2350
     51=== Creating some more empty space around the two micelle structures ===
     52
     53We simply use !AddEmptyBoundaryAction which causes every atom to be last 20 Angstroem away from the boundary, i.e. we create some empty space to fill around the micelle.s
     54{{{
     55~/workspace_C/molecuilder/debug64/src/molecuilder \
     56  -v 1 \
     57  --parse-tremolo-potentials tensid.potentials \
     58  -i test.data \
     59  -o xyz \
     60  --add-empty-boundary "20,20,20"
     61}}}
     62
     63Make note of the new domain size. If you desire properly separated water molecules (i.e. 3.1 Angstroem apart), you have to divide each axis length by 3.1 and note this down for later.
     64
    2465=== Filling empty space with water molecules ===
    25 Now, we run into a basic problem of the '''PDB''' format. The atomic ids only go up to 99999, i.e. 5 digits. Filling the void space with water however will result in roughly 400.000 atoms. Hence, we set the output format to '''XYZ''' (''-o xyz'') instead. First, we have to specify a domain that we fill. Therefore, we now call !AddEmptyBoundaryAction (''--boundary "20,20,20"'') which causes every atom to be last 20 Angstroem away from the boundary. Then, all is set for calling !FillVoidWithMoleculeAction (''--fill-void water.xyz --!MaxDistance -1 --distances "3.1, 3.1, 3.1"  --lengths "2.1, 0., 0." --!DoRotate 0'') with the following parameters:
    26  * The water molecule (the ''filler'') is obtained from parsing ''water.xyz''
    27  * There is no maximum distance given (e.g. to some surface)
    28  * The distances in between the water molecules is 3.1 Angstroem, relating to a density of 1g/cm^3^ (try to calculate with '''units''' yourself).
    29  * The lengths here are: 2.1 Angstroem distance to every other already present atom found. The two remaining numbers are for randomizing atomic and molecule's central position.
    30  * Finally, we do not rotate randomly the water molecule.
     66Now, we run into a basic problem of the '''PDB''' format. The atomic ids only go up to 99999, i.e. 5 digits. Filling the void space with water however will result in roughly 400.000 atoms. Hence, we set the output format to '''XYZ''' (''-o xyz'') instead. First, we have to specify a domain that we fill. Then, all is set for calling !FillRegularGridAction (''--fill-regular-grid --mesh-size "33,33,33"  --mesh-offset ".5,.5,.5" --tesselation-radius 10 --min-distance 3.1 --!DoRotate 1'') with the following parameters:
     67 * The filler molecule is obtained from the currently selected molecules
     68 * The will be a minimum distance to present atoms of 3.1 Angstroem.
     69 * The distance between the water molecule is the size of the box (see result of ''--add-empty-boundary'') separated into "33" steps per axis.
     70 * Any selected atoms will be tesselated to make up a surface whose inside is not filled, for this a rolling sphere of radius 10 is used.
     71 * The filler molecules are rotated randomly.
    3172
    3273{{{
    33 ~/workspace_C/molecuilder/debug64/src/molecuilder -v 1 --parse-tremolo-potentials -i test.data -o xyz --boundary "20,20,20" --fill-void water.xyz --MaxDistance -1 --distances "3.1, 3.1, 3.1"  --lengths "2.1, 0., 0." --DoRotate 0
     74~/workspace_C/molecuilder/debug64/src/molecuilder \
     75  -v 1 \
     76  --parse-tremolo-potentials tensid.potentials \
     77  -i test.data \
     78  -o xyz \
     79  --fill-regular-grid \
     80    --mesh-size "33,33,33" \
     81    --mesh-offset ".5,.5,.5" \
     82    --tesselation-radius 10 \
     83    --min-distance 3.1 \
     84    --DoRotate 1
    3485}}}
    3586