Skip to content
Draft
Show file tree
Hide file tree
Changes from all commits
Commits
Show all changes
24 commits
Select commit Hold shift + click to select a range
33c3eb5
dnatco validation and restraints generation task
MartinMalyMM Jul 7, 2025
1164323
use pathlib instead of os.path, catch properly output CIFFILE paths i…
MartinMalyMM Jul 9, 2025
07ebfe3
hide CANA in the report
MartinMalyMM Jul 11, 2025
2a70a99
dnatco i2run tests
MartinMalyMM Jul 16, 2025
384fa1d
dnatco report - count number of outliers and improvables
MartinMalyMM Jul 16, 2025
b01236d
fix label for MeanIo MeanIc plot
MartinMalyMM Sep 1, 2025
f8af955
find data for MnD0FC0 MnD1FCbulk plots in binned and ml (servalcat 0.…
MartinMalyMM Sep 1, 2025
fce74ef
legend positions in servalcat report
MartinMalyMM Sep 1, 2025
5d20ed6
Merge branch 'main' into servalcat_label
MartinMalyMM Sep 1, 2025
8348d1f
Revert "dnatco report - count number of outliers and improvables"
MartinMalyMM Sep 1, 2025
4e9e6af
Revert "dnatco i2run tests"
MartinMalyMM Sep 1, 2025
8ca1da0
Revert "hide CANA in the report"
MartinMalyMM Sep 1, 2025
7de5512
Revert "use pathlib instead of os.path, catch properly output CIFFILE…
MartinMalyMM Sep 1, 2025
0639ba8
Revert "dnatco validation and restraints generation task"
MartinMalyMM Sep 1, 2025
2cc8ec8
plot for n_R1work, n_R1free, n_R1 in servalcat report
MartinMalyMM Sep 2, 2025
ce8cb35
fix plot for n_obs when free R was not used
MartinMalyMM Sep 2, 2025
2e37b63
plots in graph for number of reflections
MartinMalyMM Sep 3, 2025
a2d3756
graph for for MnFo and MnFc
MartinMalyMM Sep 3, 2025
19b0759
option to run tortoize within iris - works for servalcat_pipe
MartinMalyMM Sep 3, 2025
952896d
option to run tortoize within iris - doesn't work for prosmart_refmac…
MartinMalyMM Sep 3, 2025
1241117
option to run tortoize within iris - works now also for prosmart_refmac
MartinMalyMM Sep 4, 2025
8df55b2
Merge branch 'main' into tortoize
MartinMalyMM Oct 7, 2025
47bdfbb
Merge branch 'main' into tortoize
paulsbond Oct 21, 2025
adbf1a3
Changelog
paulsbond Oct 21, 2025
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
1 change: 1 addition & 0 deletions CHANGELOG.md
Original file line number Diff line number Diff line change
Expand Up @@ -7,6 +7,7 @@
- Fix for reflection CIF files containing both merged and unmerged data
- New Pointless options to remove lattice centering reflections
- Fix to Servalcat report type handling
- Added option to do Tortoize Rama-Z calculation in Refmac & Servalcat pipelines

## [2.4.1] - 2025-10-07

Expand Down
6 changes: 6 additions & 0 deletions pipelines/prosmart_refmac/script/prosmart_refmac.def.xml
Original file line number Diff line number Diff line change
Expand Up @@ -474,6 +474,12 @@
<default>True</default>
</qualifiers>
</content>
<content id="VALIDATE_TORTOIZE">
<className>CBoolean</className>
<qualifiers>
<default>False</default>
</qualifiers>
</content>
<content id="VALIDATE_MOLPROBITY">
<className>CBoolean</className>
<qualifiers>
Expand Down
7 changes: 6 additions & 1 deletion pipelines/prosmart_refmac/script/prosmart_refmac.py
Original file line number Diff line number Diff line change
Expand Up @@ -639,11 +639,15 @@ def finishUp(self, refmacJob):
if hasattr(self.container.controlParameters,"VALIDATE_RAMACHANDRAN"):
validate_ramachandran = self.container.controlParameters.VALIDATE_RAMACHANDRAN

validate_tortoize = False
if hasattr(self.container.controlParameters,"VALIDATE_TORTOIZE"):
validate_tortoize = self.container.controlParameters.VALIDATE_TORTOIZE

validate_molprobity = False
if hasattr(self.container.controlParameters,"VALIDATE_MOLPROBITY"):
validate_molprobity = self.container.controlParameters.VALIDATE_MOLPROBITY

if validate_baverage or validate_molprobity or validate_ramachandran or validate_iris:
if validate_baverage or validate_molprobity or validate_ramachandran or validate_tortoize or validate_iris:
xml_validation = etree.SubElement(self.xmlroot,"Validation")
xml_validation_status = etree.SubElement(xml_validation,"Success")
try:
Expand All @@ -670,6 +674,7 @@ def finishUp(self, refmacJob):
self.validate.container.controlParameters.DO_IRIS = validate_iris
self.validate.container.controlParameters.DO_BFACT = validate_baverage
self.validate.container.controlParameters.DO_RAMA = validate_ramachandran
self.validate.container.controlParameters.DO_TORTOIZE = validate_tortoize
self.validate.container.controlParameters.DO_MOLPROBITY = validate_molprobity

self.validate.doAsync = False
Expand Down
3 changes: 2 additions & 1 deletion pipelines/prosmart_refmac/script/prosmart_refmac_gui.py
Original file line number Diff line number Diff line change
Expand Up @@ -533,9 +533,10 @@ def drawOutput( self ):

self.createLine( [ 'subtitle', 'Validation and Analysis' ] )
self.openSubFrame(frame=[True], toggleFunction=[self.ToggleRigidModeOff,['REFINEMENT_MODE']])
self.createLine( [ 'widget', 'VALIDATE_IRIS', 'label', 'Generate Iris report' ] )
self.createLine( [ 'widget', 'VALIDATE_IRIS', 'label', 'Generate Iris validation report' ] )
self.createLine( [ 'widget', 'VALIDATE_BAVERAGE', 'label', 'Analyse B-factor distributions' ] )
self.createLine( [ 'widget', 'VALIDATE_RAMACHANDRAN', 'label', 'Generate Ramachandran plots' ] )
self.createLine( [ 'widget', 'VALIDATE_TORTOIZE', 'label', 'Calculate Rama-Z score using <i>tortoize</i>' ] )
self.createLine( [ 'widget', 'VALIDATE_MOLPROBITY', 'label', 'Run MolProbity to analyse geometry' ] )
#self.createLine( [ 'widget', 'RUN_MOLPROBITY', 'label', 'Run standalone MolProbity (to be deprecated)' ] )
self.closeSubFrame()
Expand Down
6 changes: 6 additions & 0 deletions pipelines/servalcat_pipe/script/servalcat_pipe.def.xml
Original file line number Diff line number Diff line change
Expand Up @@ -584,6 +584,12 @@
<default>True</default>
</qualifiers>
</content>
<content id="VALIDATE_TORTOIZE">
<className>CBoolean</className>
<qualifiers>
<default>True</default>
</qualifiers>
</content>
<content id="VALIDATE_MOLPROBITY">
<className>CBoolean</className>
<qualifiers>
Expand Down
7 changes: 6 additions & 1 deletion pipelines/servalcat_pipe/script/servalcat_pipe.py
Original file line number Diff line number Diff line change
Expand Up @@ -331,11 +331,15 @@ def multimericValidation(self):
if hasattr(self.container.controlParameters,"VALIDATE_RAMACHANDRAN"):
validate_ramachandran = self.container.controlParameters.VALIDATE_RAMACHANDRAN

validate_tortoize = False
if hasattr(self.container.controlParameters,"VALIDATE_TORTOIZE"):
validate_tortoize = self.container.controlParameters.VALIDATE_TORTOIZE

validate_molprobity = False
if hasattr(self.container.controlParameters,"VALIDATE_MOLPROBITY"):
validate_molprobity = self.container.controlParameters.VALIDATE_MOLPROBITY

if validate_iris or validate_baverage or validate_molprobity or validate_ramachandran:
if validate_iris or validate_baverage or validate_molprobity or validate_ramachandran or validate_tortoize:
self.validate = self.makePluginObject('validate_protein')
self.validate.container.inputData.XYZIN_2.set(self.container.outputData.CIFFILE)
self.validate.container.inputData.XYZIN_1.set(self.container.inputData.XYZIN)
Expand All @@ -355,6 +359,7 @@ def multimericValidation(self):
self.validate.container.controlParameters.DO_IRIS.set(validate_iris)
self.validate.container.controlParameters.DO_BFACT.set(validate_baverage)
self.validate.container.controlParameters.DO_RAMA.set(validate_ramachandran)
self.validate.container.controlParameters.DO_TORTOIZE.set(validate_tortoize)
self.validate.container.controlParameters.DO_MOLPROBITY.set(validate_molprobity)

self.validate.doAsync = False
Expand Down
1 change: 1 addition & 0 deletions pipelines/servalcat_pipe/script/servalcat_pipe_gui.py
Original file line number Diff line number Diff line change
Expand Up @@ -459,6 +459,7 @@ def drawAdvanced( self ):
self.openSubFrame(frame=[True])
self.createLine( [ 'widget', 'VALIDATE_IRIS', 'label', 'Generate Iris validation report' ] )
self.createLine( [ 'widget', 'VALIDATE_RAMACHANDRAN', 'label', 'Generate Ramachandran plots' ] )
self.createLine( [ 'widget', 'VALIDATE_TORTOIZE', 'label', 'Calculate Rama-Z score using <i>tortoize</i>' ] )
self.createLine( [ 'widget', 'VALIDATE_MOLPROBITY', 'label', 'Run MolProbity to analyse geometry' ] )

self.createLine( [ 'widget', 'RUN_ADP_ANALYSIS', 'label', 'Run ADP analysis' ] )
Expand Down