Releases: m3g/ComplexMixtures.jl
v2.11.3
v2.11.2
ComplexMixtures v2.11.2
- Fix initialization of
Options
to default value in the calls tomddf
andcoordination_number
, when providing the name of the trajectory file and the solute and solvent atom selections. - Better error message if the trajectory format is provided incorrectly.
Merged pull requests:
v2.11.1
ComplexMixtures v2.11.1
- Remove deprecated
contourf_per_residue
function. - Organize docs.
Merged pull requests:
v2.11.0
ComplexMixtures v2.11.0
New features
- Support for plotting 2D density maps as
heatmap
orcontour
(without filling), forResidueContributions
objects:
julia> contourf(residue_contributions; oneletter=true)
julia> contour(residue_contributions; oneletter=true)
julia> heatmap(residue_contributions; oneletter=true)
Bug fixes
- Some bug fixes related to plotting
ResidueContributions
with repeated or unsorted residue numbers (in combination with PDBTools.jl v2.1.3). - Set maximum number of contributions by default when plotting contour plots, to avoid memory crashes (throws warnings).
- Fix example of 2D density map of example 3 of the documentation, where the terminal methyl groups where not shown.
Merged pull requests:
v2.10.2
ComplexMixtures v2.10.2
Minor new feature (bug fix?):
In ResidueConstributions
objects: operating (summing, subtracting, etc) these objects is allowed now if the distance arrays match and the number of residues of the two groups are the same. If the tick-labels differ throw a warning, and keep the tick-labels of the first object. If the tick-labels match but the tick positions match, just operate.
This improvement in the manipulation of these objects is better supported by the improvement in the setting of residue_ticks
in PDBTools v2.1.3.
Merged pull requests:
v2.10.1
ComplexMixtures v2.10.1
- Better support for non-protein residues in
ResidueContributions
functions andcontourf
: Theshow
method was fixed andcontourf
will try to obtain one-letter codes and print full codes if not found.
Merged pull requests:
v2.10.0
ComplexMixtures v2.10.0
New feature
The indexing and iteration of a ResidueContributions
object was improved, such that:
- When a
ResidueContributions
contain the contributions of more than one residue, the iteration occurs within residues. - When a
ResidueContributions
contain the contribution of a single residue, iteration occurs over the contributions of this residue.
This implies many facilities and greater consistency in iterations over these objects as, for instance, it is possible to extract (for example) the contribution at a given distance for all residues as:
julia> rc = ResidueContributions(R, select(ats, "protein"))
Residue Contributions - 274 residues.
3.51 █ █ █ █ █
3.27 █ █ █
3.03 █ █ █ █ █ █ █ █
2.79 █ ██ █ █ █ █ █ ██ █ █ █
d 2.55 █ █ ██ █ █ █ █ ██ ██ █ █ █ █ █ █ █
2.31 █ █ ██ █ ███ █ ██ ██ ██ █ ██ █ ██ █ █ █
2.07 █ █ █ █ █████ █ ██ ██ ██ █ ██ █ █ ██ █ █
1.83 █ █ █ █ █████ █ ██ █ ██ █ ██ █ ██ █ █
1.59
A1 T33 T66 S98 S130 T162 A194 H226 G258
julia> id = findfirst(>=(2.0), rc.d) # index of distance for 2.0 Angstroms
26
julia> c_at_2 = [ r[id] for r in rc ] # collect contributions for all residues at index id
274-element Vector{Float64}:
0.025795222201597752
0.027637738073140444
⋮
0.0
0.03316528568776853
The above is possible because, for example, rc[1]
returns a "single-residue" ResidueContributions
object, and indexing this object returns the contributions of such residue at each distance.
Similarly, these features allow other Julia functions to be broadcasted over the residue contributions:
getindex.(rc, 26) # returns the contribution at index 26 for all residues (equivalent to the `[ r[id] for r in rc ]` above)
last.(rc) # returns the contribution of each residue at the largest distance
maximum.(rc) # returns the maximum contribution of each residue
findmax.(rc) # returns the maximum and index of the distance maximum of the contributions of each residue
Merged pull requests:
v2.9.0
- Update docs to make
Trajectory
a minor menu.
v2.9.0
ComplexMixtures v2.9.0
New features
- The calls to
mddf
andcoordination_number
now accept the name of the trajetory file and the solute and solvent selections, passing by the construction of theTrajectory
object. This is now the preferred and documented interface:where themddf(trajectory_file, solute, solvent, options) mddf(trajectory_file, solute_and_solvent, options) # for auto-correlations coordination_number(trajectory_file, solute, solvent, option) coordination_number(trajectory_file, solute_and_solvent, options) # for auto-correlations
solute
,solvent
andsolute_and_solvent
objects areAtomSelection
structures.
Other changes:
- documentation updates.
Merged pull requests:
v2.8.5
ComplexMixtures v2.8.5
- Throw ArgumentError messages if
n_random_samples <= 0
or ifsum(frame_weights[considered_range]) <= 0
.
Merged pull requests: