10 from __future__
import print_function
38 dmap.get_header_writable().set_resolution(resolution)
47 sampled_input_density.set_particles(ps)
48 sampled_input_density.resample()
49 sampled_input_density.calcRMS()
53 dmap, sampled_input_density, sampled_input_density.get_header().dmin)
54 print(
"The CC score of the native transformation is:", best_score)
61 IMP.algebra.get_unit_bounding_box_3d())
63 rand_angle = random.uniform(-70. / 180 * math.pi, 70. / 180 * math.pi)
79 sampled_input_density.resample()
80 sampled_input_density.calcRMS()
83 dmap, sampled_input_density, sampled_input_density.get_header().dmin)
85 print(
"The start score is:", start_score,
"with rmsd of:", start_rmsd)
88 print(
"preforming local refinement, may run for 3-4 minutes")
93 sampled_input_density.resample()
94 sampled_input_density.calcRMS()
97 dmap, sampled_input_density, sampled_input_density.get_header().dmin)
98 print(
"The score after centering is:", score2,
"with rmsd of:", rmsd)
106 mh.get_particle(), refiner,
112 print(
"The start score is:", start_score,
"with rmsd of:", start_rmsd)
113 for i
in range(fitting_sols.get_number_of_solutions()):
121 print(
"Fit with index:", i,
" with cc: ", 1. - fitting_sols.get_score(i),
" and rmsd to native of:", rmsd)
124 prot_rb, fitting_sols.get_transformation(i).get_inverse())
void write_pdb(const Selection &mhd, base::TextOutput out, unsigned int model=1)
static FloatKey get_mass_key()
Return the hierarchy leaves under a particle.
void set_log_level(LogLevel l)
Set the current global log level.
void add_radii(Hierarchy d, const ForceFieldParameters *ffp=get_all_atom_CHARMM_parameters(), FloatKey radius_key=FloatKey("radius"))
void set_check_level(CheckLevel tf)
Control runtime checks in the code.
algebra::Vector3D get_centroid(const XYZs &ps)
Get the centroid.
double get_rmsd(const core::XYZs &s0, const core::XYZs &s1, const IMP::algebra::Transformation3D &tr_for_second)
GenericHierarchies get_leaves(Hierarchy mhd)
Get all the leaves of the bit of hierarchy.
Vector3D get_random_vector_in(const Cylinder3D &c)
Generate a random vector in a cylinder with uniform density.
void write_map(DensityMap *m, std::string filename)
Write a density map to a file.
Rotation3D get_rotation_about_axis(const Vector3D &axis, double angle)
Generate a Rotation3D object from a rotation around an axis.
Class for sampling a density map from particles.
static double cross_correlation_coefficient(const DensityMap *grid1, const DensityMap *grid2, float grid2_voxel_data_threshold, bool allow_padding=false, FloatPair norm_factors=FloatPair(0., 0.))
Calculates the cross correlation coefficient between two maps.
void transform(XYZ a, const algebra::Transformation3D &tr)
Apply a transformation to the particle.
Basic utilities for handling cryo-electron microscopy 3D density maps.
DensityMap * read_map(std::string filename)
Read a density map from a file and return it.
static const IMP::core::HierarchyTraits & get_traits()
Get the molecular hierarchy HierarchyTraits.
std::string get_example_path(std::string file_name)
Return the path to installed example data for this module.
Basic functionality that is expected to be used by a wide variety of IMP users.
IMP::core::RigidBody create_rigid_body(Hierarchy h)
Rotation3D get_identity_rotation_3d()
Return a rotation that does not do anything.
VectorD< D > get_random_vector_on(const SphereD< D > &s)
Generate a random vector on a sphere with uniform density.
Select all CA ATOM records.
Functionality for loading, creating, manipulating and scoring atomic structures.
void read_pdb(base::TextInput input, int model, Hierarchy h)
FittingSolutions local_rigid_fitting(kernel::Particle *p, Refiner *refiner, const FloatKey &weight_key, DensityMap *dmap, OptimizerStates display_log, Int number_of_optimization_runs=5, Int number_of_mc_steps=10, Int number_of_cg_steps=100, Float max_translation=2., Float max_rotation=.3, bool fast=true)
Local rigid fitting of a rigid body.
Class for storing model, its restraints, constraints, and particles.