IMP  2.4.0
The Integrative Modeling Platform
Classes | Typedefs | Enumerations | Functions
IMP::saxs Namespace Reference

Support for small angle X-ray scattering (SAXS) data. More...

Detailed Description

Support for small angle X-ray scattering (SAXS) data.

Small angle X-ray scattering (SAXS) is an experimental technique that uses scattering of X-rays at low angles to determine structural information about proteins in solution. This has the advantage that a crystal is not required; however, the information is rotationally averaged.

This module provides a number of classes to handle SAXS profiles. For example, Restraint includes the fit to a SAXS profile as an IMP restraint.

See also IMP::foxs for a command line tool to generate a SAXS profile for a protein and fit it against an experimental profile, or IMP::saxs_merge for a tool to combine multiple experimental profiles.

We provide a number of command line tools to handle SAXS profiles:

cluster_profiles

Cluster SAXS profiles.

compute_chi

Calculate chi value for SAXS profiles.

rg

Compute radius of gyration from SAXS profiles.

validate_profile

Validate SAXS profiles.

Info

Author(s): Dina Schneidman, Seung Joong Kim, Yannick Spill

Maintainer: duhovka

License: LGPL This library is free software; you can redistribute it and/or modify it under the terms of the GNU Lesser General Public License as published by the Free Software Foundation; either version 2 of the License, or (at your option) any later version.

Publications:

Classes

class  ChiFreeScore
 
class  ChiScore
 
class  ChiScoreLog
 
class  DeltaDistributionFunction
 
class  DerivativeCalculator
 
class  Distribution
 
class  FormFactorTable
 
class  Profile
 
class  ProfileClustering
 
class  ProfileFitter
 
class  RadialDistributionFunction
 
class  RadiusOfGyrationRestraint
 Calculate score based on radius of gyration, taken from saxs profile. More...
 
class  Restraint
 Calculate score based on fit to SAXS profile. More...
 
class  RigidBodiesProfileHandler
 Handle the profile for a set of particles, which may include rigid bodies. More...
 
class  SolventAccessibleSurface
 
class  WeightedProfileFitter
 

Typedefs

typedef IMP::base::Vector
< IMP::base::Pointer< Profile > > 
Profiles
 
typedef IMP::base::Vector
< IMP::base::WeakPointer
< Profile > > 
ProfilesTemp
 

Enumerations

enum  FormFactorType { ALL_ATOMS, HEAVY_ATOMS, CA_ATOMS }
 type of the form factors for profile calculations More...
 

Functions

Float compute_max_distance (const kernel::Particles &particles)
 compute max distance More...
 
Float compute_max_distance (const kernel::Particles &particles1, const kernel::Particles &particles2)
 
Profilecompute_profile (IMP::kernel::Particles particles, float min_q=0.0, float max_q=0.5, float delta_q=0.001, FormFactorTable *ft=get_default_form_factor_table(), FormFactorType ff_type=HEAVY_ATOMS, float water_layer_c2=4.0, bool fit=true, bool reciprocal=false, bool ab_initio=false, bool vacuum=false, std::string beam_profile_file="")
 profile calculation for particles and a given set of options More...
 
void get_coordinates (const kernel::Particles &particles, std::vector< algebra::Vector3D > &coordinates)
 
FormFactorTableget_default_form_factor_table ()
 
void get_form_factors (const kernel::Particles &particles, FormFactorTable *ff_table, Floats &form_factors, FormFactorType ff_type)
 
Float radius_of_gyration (const kernel::Particles &particles)
 compute radius_of_gyration More...
 

Standard module functions

All IMP modules have a set of standard functions to help get information about the module and about files associated with the module.

std::string get_module_version ()
 
std::string get_module_name ()
 
std::string get_data_path (std::string file_name)
 Return the full path to installed data. More...
 
std::string get_example_path (std::string file_name)
 Return the path to installed example data for this module. More...
 

Typedef Documentation

Store a set of objects.

Definition at line 290 of file Profile.h.

Pass a set of objects.

See Also
Profile

Definition at line 290 of file Profile.h.

Enumeration Type Documentation

type of the form factors for profile calculations

Definition at line 32 of file FormFactorTable.h.

Function Documentation

Float IMP::saxs::compute_max_distance ( const kernel::Particles &  particles)

compute max distance

Definition at line 39 of file saxs/utility.h.

+ Here is the call graph for this function:

Float IMP::saxs::compute_max_distance ( const kernel::Particles &  particles1,
const kernel::Particles &  particles2 
)

compute max distance between pairs of particles one from particles1 and the other from particles2

Definition at line 55 of file saxs/utility.h.

+ Here is the call graph for this function:

Profile* IMP::saxs::compute_profile ( IMP::kernel::Particles  particles,
float  min_q = 0.0,
float  max_q = 0.5,
float  delta_q = 0.001,
FormFactorTable *  ft = get_default_form_factor_table(),
FormFactorType  ff_type = HEAVY_ATOMS,
float  water_layer_c2 = 4.0,
bool  fit = true,
bool  reciprocal = false,
bool  ab_initio = false,
bool  vacuum = false,
std::string  beam_profile_file = "" 
)

profile calculation for particles and a given set of options

std::string IMP::saxs::get_data_path ( std::string  file_name)

Return the full path to installed data.

Each module has its own data directory, so be sure to use the version of this function in the correct module. To read the data file "data_library" that was placed in the data directory of module "mymodule", do something like

std::ifstream in(IMP::mymodule::get_data_path("data_library"));

This will ensure that the code works when IMP is installed or used via the setup_environment.sh script.

FormFactorTable* IMP::saxs::get_default_form_factor_table ( )

Get the default table.

std::string IMP::saxs::get_example_path ( std::string  file_name)

Return the path to installed example data for this module.

Each module has its own example directory, so be sure to use the version of this function in the correct module. For example to read the file example_protein.pdb located in the examples directory of the IMP::atom module, do

model));

This will ensure that the code works when IMP is installed or used via the setup_environment.sh script.

Float IMP::saxs::radius_of_gyration ( const kernel::Particles &  particles)

compute radius_of_gyration

Definition at line 73 of file saxs/utility.h.

+ Here is the call graph for this function: