Oh, ok, it's the calculation of the bounding box necessary for the atom centers (given the buffer length you selected), what changed:
Before:
```
Scaling up box by a factor of 1.464352 to meet diagonal cut criterion
Solute vdw bounding box: 137.890 98.975 70.390
Total bounding box for atom centers: 178.892 178.892 178.892
...
RESULTING BOX SIZE: 155.7907688 155.7907688 155.7907688 109.4712190 109.4712190 109.4712190
```
After*:
```
Scaling up box by a factor of 1.260286 to meet diagonal cut criterion
Solute vdw bounding box: 137.890 98.975 70.390
Total bounding box for atom centers: 209.069 209.069 209.069
...
RESULTING BOX SIZE: 181.9246991 181.9246991 181.9246991 109.4712190 109.4712190 109.4712190
```
So, you are right: there was a change in how the code calculates the box size to guarantee the buffer length in the output, and it was an actual bugfix. If you open both structures, you should see that along some diagonal (normal to 2 of the octahedron faces), the solute atoms won't have much water around them, and that they could be interacting with their self-images.
Here's my explanation of the fix, which I didn't do, so I appreciate any corrections.
What solvateoct does is first center the solute (your protein), and then rotate it to align its principal axis along the XYZ axii. Then it takes the solute bounding box (rectangular) and adds 2*buffer length to the longest axis to obtain the dimension of the initial cubic solvent box, from which the corners are cut to form the truncated octahedron box.
The issue is that while this method guarantees your buffer length for a cubic solvent box, it does not guarantee it for the truncated octahedron that will be generated by the subsequent corner cutting. Some atoms will be too close to the diagonal faces.
So, solvateoct calls `ToolOctBoxCheck()`, which calculates a scaling factor that ensures the initial cubic solvent box is large enough to maintain the correct buffer length between the atom that pokes the most and its closest octahedral face.
The problem was that `ToolOctBoxCheck()` was scaling the buffer length instead of the correct value. You can see it in the numbers you reported:
```
Length of largest axis for the initial solute vdw bounding box: 137.89
Buffer: 14 (on each side, so it's 2Xed)
Reported scaling factor: 1.464352
Length of cubic solvent box: 137.89 + 1.464352 * 2 * 14 = 178.892
```
178.892A was the dimension of your initial cubic solvent box. The length of your final box size is 155.7907688A. That's because after all of this, solvateoct calls `EwaldRotate()` and rotates all atoms. After that rotation, the truncated octahedron gets mapped to a rhombohedron, which is the convention pmemd uses.
The problem with this procedure is that it assumes the depth it cuts is determined solely by the buffer length (14A in this case), which you can imagine would be problematic as the boxes get bigger.
If it worked like that, given a sufficiently large box, the truncated octahedron would be almost the same as the original cubic solvent box.
BTW, the corner-cutting function is not affected by all of this and will work correctly for the given cubic solvent box. The problem is that the resulting distance between the atom and the diagonal face will be too close.
Back to the numbers. The point at which corners are cut off depends on the total cubic solvent box size. The initial cubic solvent box size is:
```
28A+137.890 = 165.89A
```
This is the length of the cube edge, and this is the number that should get scaled.
Since the solute bounding box is fixed and dwarfs the buffer (68.945A vs 14A), scaling the buffer barely moves the half-box; so the diagonal face distance falls short of the needed growth. The bigger the solute, the larger the difference between these 2 methods will be.
So, using the reported scaling factor we get that the new edge length is:
```
165.89A * 1.260286 = 209.069
```
Which is the edge length for the "Total bounding box for atom centers" you are getting with the latest ambertools. After that, EwaldRotate does its thing, and the final box length you get is `181.9246991A`.
So, yes, it changed, but for the better. And while some of your MDs will get slower, in this particular case you shouldn't have to pay such a big price for the biggers solvent box. You have a very elongated protein. A rectangular box might be a better fit.
Best,
*: "Total bounding box for atom centers" is misleading; it should say "Total bounding box for atom spheres" or something like that, since the vdw radii of the atoms are considered when building the initial cubic solvent box.
________________________________
From: Baker, Joseph <bakerj.tcnj.edu>
Sent: Tuesday, June 16, 2026 4:26 PM
To: Patricio Barletta <pb777.iqb.rutgers.edu>; AMBER Mailing List <amber.ambermd.org>
Subject: Re: [AMBER] solvateoct behavior in Amber26
As for the density question, the initial densities, as you can see from the tleap output, are not that far off from one another, so tleap is getting the initial densities just fine, it is just adding a lot more water in amber26.
------
Joseph Baker, PhD
Barbara Meyers Pelson Chair in Faculty-Student Engagement (AY 2024-2027)
Professor, Department of Chemistry
The College of New Jersey
Ewing, NJ 08628
Office: C212 Science Complex
Phone: (609) 771-3173
Web: www.bakercompchemlab.com<http://www.bakercompchemlab.com/>
Social Media: Instagram<https://www.instagram.com/bakerlabtcnj/>, LinkedIn<https://www.linkedin.com/in/joseph-baker-6b444758/>
Pronouns: he/him/his
Chair-elect (2026), Trenton Local Section of the ACS
Chemistry Division Representative (2024-2027), The Council on Undergraduate Research
On Tue, Jun 16, 2026 at 4:07 PM Baker, Joseph <bakerj.tcnj.edu<mailto:bakerj.tcnj.edu>> wrote:
Hi Patricio,
Very standard script, pasted at the bottom below. So we haven't been using the iso/aniso options. As you can see we are using the ff19SB and OPC water combo. As I mentioned, this same script run through multiple versions of amber only starts adding a large number of extra waters when we hit the amber26 version. As you can see the AmberTools25 and AmberTools23 versions of tleap both give a smaller number of OPC water residues added, and the bottom of the rst7 file for each of these agree identically. It is only in AmberTools26 where things start to change. Thanks for your help looking into this! - Joe
For example when I use AmberTools26 it gives me:
Loading PDB file: ../../00-structure/fold_full_sequence_model_0.pdb
total atoms in file: 5271
Leap added 4881 missing atoms according to residue templates:
4881 H / lone pairs
Scaling up box by a factor of 1.260286 to meet diagonal cut criterion
Solute vdw bounding box: 137.890 98.975 70.390
Total bounding box for atom centers: 209.069 209.069 209.069
(box expansion for 'iso' is 81.5%)
Solvent unit box: 18.865 18.478 19.006
Volume: 4635036.174 A^3 (oct)
Total mass 2620962.702 amu, Density 0.939 g/cc
Added 141329 residues.
and then the bottom of the rst7 is: 181.9246991 181.9246991 181.9246991 109.4712190 109.4712190 109.4712190
For example when I use AmberTools25 it gives me:
Loading PDB file: ../../00-structure/fold_full_sequence_model_0.pdb
total atoms in file: 5271
Leap added 4881 missing atoms according to residue templates:
4881 H / lone pairs
Scaling up box by a factor of 1.464352 to meet diagonal cut criterion
Solute vdw bounding box: 137.890 98.975 70.390
Total bounding box for atom centers: 178.892 178.892 178.892
(box expansion for 'iso' is 105.2%)
Solvent unit box: 18.865 18.478 19.006
Volume: 2910739.196 A^3 (oct)
Total mass 1628046.894 amu, Density 0.929 g/cc
Added 86216 residues.
and then the bottom of the rst7 is: 155.7907688 155.7907688 155.7907688 109.4712190 109.4712190 109.4712190
For example when I use AmberTools23 it gives me:
Loading PDB file: ../../00-structure/fold_full_sequence_model_0.pdb
total atoms in file: 5271
Leap added 4881 missing atoms according to residue templates:
4881 H / lone pairs
Scaling up box by a factor of 1.464352 to meet diagonal cut criterion
Solute vdw bounding box: 137.890 98.975 70.390
Total bounding box for atom centers: 178.892 178.892 178.892
(box expansion for 'iso' is 105.2%)
Solvent unit box: 18.865 18.478 19.006
Volume: 2910739.196 A^3 (oct)
Total mass 1628046.894 amu, Density 0.929 g/cc
Added 86216 residues.
and then the bottom of the rst7 is: 155.7907688 155.7907688 155.7907688 109.4712190 109.4712190 109.4712190
----SCRIPT----
#Load in the necessary forcefields
source leaprc.protein.ff19SB
source leaprc.water.opc
#Load the PDBs
prot = loadpdb ../00-structure/fold_full_sequence_model_0.pdb
#solvate system
solvateoct prot OPCBOX 14
#Adding Ions
addIonsRand prot Na+ 0
addIonsRand prot Cl- 0
#save files
saveAmberParm prot sys.parm7 sys.rst7
# Quit
quit
------
Joseph Baker, PhD
Barbara Meyers Pelson Chair in Faculty-Student Engagement (AY 2024-2027)
Professor, Department of Chemistry
The College of New Jersey
Ewing, NJ 08628
Chair-elect (2026), Trenton Local Section of the ACS
Chemistry Division Representative (2024-2027), The Council on Undergraduate Research
On Tue, Jun 16, 2026 at 3:46 PM Patricio Barletta via AMBER <amber.ambermd.org<mailto:amber.ambermd.org>> wrote:
*
Can I see the tleap script you are running? I'm curious about the water model.
*
If you do tail -n1 <OUTPUT RST7 FILE> , do you get the same box size in all cases?
*
If you run NVT on the output systems, do you get the same starting density?
The coordinates for the pre-equilibrated water molecules are at `amber/dat/leap/lib/`, and I don't see any change on files like 'tip3pbox.off'.
The other factor that may affect the final result is the usage of the keyword "aniso", that prevents tleap from centering and reorienting the solute before adding the box. This increases the box size for a given buffer length.
Best,
________________________________
From: amber-request.ambermd.org<mailto:amber-request.ambermd.org> <amber-request.ambermd.org<mailto:amber-request.ambermd.org>>
Sent: Tuesday, June 16, 2026 3:00 PM
To: amber.ambermd.org<mailto:amber.ambermd.org> <amber.ambermd.org<mailto:amber.ambermd.org>>
Subject: AMBER Digest, Vol 4976, Issue 1
Send AMBER mailing list submissions to
amber.ambermd.org<mailto:
amber.ambermd.org>
To subscribe or unsubscribe via the World Wide Web, visit
https://nam02.safelinks.protection.outlook.com/?url=http%3A%2F%2Flists.ambermd.org%2Fmailman%2Flistinfo%2Famber&data=05%7C02%7Cpb777%40iqb.rutgers.edu%7C8e65331797bc4548af9808decbd97df0%7Cb92d2b234d35447093ff69aca6632ffe%7C1%7C0%7C639172332140833078%7CUnknown%7CTWFpbGZsb3d8eyJFbXB0eU1hcGkiOnRydWUsIlYiOiIwLjAuMDAwMCIsIlAiOiJXaW4zMiIsIkFOIjoiTWFpbCIsIldUIjoyfQ%3D%3D%7C0%7C%7C%7C&sdata=aPBuprBWvr56DTCEiJWDVK6OO0csbOPD5yenZW2A5pY%3D&reserved=0<
http://lists.ambermd.org/mailman/listinfo/amber><
http://lists.ambermd.org/mailman/listinfo/amber>
or, via email, send a message with subject or body 'help' to
amber-request.ambermd.org<mailto:
amber-request.ambermd.org>
You can reach the person managing the list at
amber-owner.ambermd.org<mailto:
amber-owner.ambermd.org>
When replying, please edit your Subject line so it is more specific
than "Re: Contents of AMBER digest..."
AMBER Mailing List Digest
Today's Topics:
1. solvateoct behavior in Amber26 (Baker, Joseph)
----------------------------------------------------------------------
Message: 1
Date: Tue, 16 Jun 2026 14:55:03 -0400
From: "Baker, Joseph" <bakerj.tcnj.edu<mailto:bakerj.tcnj.edu>>
To: AMBER Mailing List <amber.ambermd.org<mailto:amber.ambermd.org>>
Subject: [AMBER] solvateoct behavior in Amber26
Message-ID:
<
CAA5VDpDSCstP8vGa_cQ3Nj9eWtZCx3vpwkNSvTuWcxJsukYpTw.mail.gmail.com<mailto:
CAA5VDpDSCstP8vGa_cQ3Nj9eWtZCx3vpwkNSvTuWcxJsukYpTw.mail.gmail.com>>
Content-Type: text/plain; charset="UTF-8"
Hello,
One of my students noticed that their simulations were running much more
slowly suddenly, and when looking at our tleap output we observed that the
solvateoct command seems to be adding a significantly larger number of
water molecules to the system than it has in the past (with the same
padding value, using the same initial structure). We went back and checked
the behavior in 25,24,23,22 versions and they were all consistent with the
number of water molecules being placed by solvateoct. Has there been some
change in the way solvateoct handles building the water shell?
Thanks!
Joe
------
Joseph Baker, PhD
Barbara Meyers Pelson Chair in Faculty-Student Engagement (AY 2024-2027)
Professor, Department of Chemistry
The College of New Jersey
Ewing, NJ 08628
Chair-elect (2026), Trenton Local Section of the ACS
Chemistry Division Representative (2024-2027), The Council on Undergraduate
Research
------------------------------
Subject: Digest Footer
_______________________________________________
AMBER mailing list
AMBER.ambermd.org<mailto:AMBER.ambermd.org>
https://nam02.safelinks.protection.outlook.com/?url=http%3A%2F%2Flists.ambermd.org%2Fmailman%2Flistinfo%2Famber&data=05%7C02%7Cpb777%40iqb.rutgers.edu%7C8e65331797bc4548af9808decbd97df0%7Cb92d2b234d35447093ff69aca6632ffe%7C1%7C0%7C639172332140860528%7CUnknown%7CTWFpbGZsb3d8eyJFbXB0eU1hcGkiOnRydWUsIlYiOiIwLjAuMDAwMCIsIlAiOiJXaW4zMiIsIkFOIjoiTWFpbCIsIldUIjoyfQ%3D%3D%7C0%7C%7C%7C&sdata=ANXzqOLpZ8O6AyVTuxf03fi9W1XYEjeXFJia8APZ7Uc%3D&reserved=0<
http://lists.ambermd.org/mailman/listinfo/amber><
http://lists.ambermd.org/mailman/listinfo/amber>
------------------------------
End of AMBER Digest, Vol 4976, Issue 1
**************************************
_______________________________________________
AMBER mailing list
AMBER.ambermd.org<mailto:
AMBER.ambermd.org>
http://lists.ambermd.org/mailman/listinfo/amber
_______________________________________________
AMBER mailing list
AMBER.ambermd.org
http://lists.ambermd.org/mailman/listinfo/amber
Received on Tue Jun 16 2026 - 16:30:02 PDT