Skip to content

Conversation

@drroe
Copy link
Contributor

@drroe drroe commented Nov 26, 2025

V6.30.0. Address #1156.

Previously, when writing XY Mesh data sets to the same file, CPPTRAJ was relying on the setting of the underlying Dimension class to ensure the X values in all sets lined up. However, for XY Mesh sets where the X value is not even guaranteed to increase monotonically this is problematic. This PR does much better checking of the X dimension when multiple sets are being written to a single file (affects standard dat and gnuplot output currently). Sets with matching X dimensions are grouped together. If a group of sets does not match the X dimension of another group, the groups of sets are written consecutively instead of side by side.

This was revealed in #1156 when a user directed output from two atomicfluct commands to the same file and one command selected 3 residues and the other command only selected 2. The above change would make it so that the results would appear one after the other in the output file. I have introduced a new keyword for atomicfluct called resrange which allows users to ensure output is generated for a fixed set of residues no matter what ends up being selected by the mask.

Adds a test and updates the manual.

@drroe drroe self-assigned this Nov 26, 2025
@drroe drroe added bugfix New keywords New keywords for existing commands. labels Nov 26, 2025
@drroe drroe changed the title Dataset.mesh.align Better checking that X dimension of sets match in output files. Add 'resrange' keyword to 'atomicfluct' Nov 26, 2025
@drroe drroe merged commit ed3431d into Amber-MD:master Nov 26, 2025
13 checks passed
@drroe drroe deleted the dataset.mesh.align branch November 26, 2025 20:27
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

bugfix New keywords New keywords for existing commands.

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant