> I'm trying to simulate an 800+ protein-RNA complex with a physiological
> concentration of 0.15 M KCl. During my first try to add ions and solvate
> the system, I added ions first and then solvated the system. However,
> during equilibration, I believe that this resulted in un-physiological
> "clumps" of KCl. As I saw in the AMBER mailing list archive, I tried to
...although it is slow, I add ions one at a time and this tends to avoid
the problems with LEaP clumping ions or putting them in a long linear
chain...
addions UNIT K+ 0
addions UNIT Cl- 0
addions UNIT K+ 1 Cl- 1
addions UNIT K+ 1 Cl- 1
addions UNIT K+ 1 Cl- 1
addions UNIT K+ 1 Cl- 1
addions UNIT K+ 1 Cl- 1
...
To "estimate" molarity, I use a simple Perl script below.
perl ~/molarity.perl 0.15 84.02 84.02 84.02 90.0 90.0 90.0
# ^ X Y Z alpha beta gamma
# molarity M
> system was so big that Leap crashed. A similar situation occurred when I
> tried to use the ptraj randomizeions command. Does anyone know of a way
randomizeions in ptraj should randomly swap with water; did it lead to
clumping or simply an error / core dump?
--tec3
----------------
#!/usr/sbin/perl
$molar = $ARGV[0];
$box_x = $ARGV[1];
$box_y = $ARGV[2];
$box_z = $ARGV[3];
$box_a = $ARGV[4];
$box_b = $ARGV[5];
$box_g = $ARGV[6];
if ($box_x == 0) {
printf("Usage: molarity box-x box-y box-z alpha beta gamma\n");
die;
}
if ($box_y == 0) {
$box_y = $box_x;
}
if ($box_z == 0) {
$box_z = $box_x;
}
if ($box_a == 0) {
$box_a = 90.0;
}
if ($box_b == 0) {
$box_b = $box_a;
}
if ($box_g == 0) {
$box_g = $box_a;
}
$torad = 2 * 3.141592654 / 360.0;
$rad_a = $box_a * $torad;
$rad_b = $box_b * $torad;
$rad_g = $box_g * $torad;
$angles = 1 - cos($rad_a)*cos($rad_a) - cos($rad_b)*cos($rad_b) - cos($rad_g)*cos($rad_g);
$angles += 2 * cos($rad_a)*cos($rad_b)*cos($rad_g);
$angles = sqrt($angles);
$volume = $box_x * $box_y * $box_z * $angles;
$molecules = 6.022 * $volume * $molar / 10000;
printf(" MOLARITY = %8.3f\n", $molar);
printf(" Box size = %8.3f %8.3f %8.3f %8.3f %8.3f %8.3f\n", $box_x, $box_y, $box_z, $box_a, $box_b, $box_g);
printf(" Volume = %8.3f\n", $volume);
printf("\n %8.3f molecules are necessary to make a molarity of %6.2f M\n\n", $molecules, $molar);
_______________________________________________
AMBER mailing list
AMBER.ambermd.org
http://lists.ambermd.org/mailman/listinfo/amber
Received on Tue Jun 19 2012 - 06:30:04 PDT