Rosetta  2020.37
 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Friends Macros Pages
Public Member Functions | Private Types | Private Member Functions | Private Attributes | List of all members
core::conformation::membrane::ImplicitLipidInfo Class Reference

Definition of an implicit membrane with parameters for different lipid compositions. More...

#include <ImplicitLipidInfo.hh>

Inheritance diagram for core::conformation::membrane::ImplicitLipidInfo:
Inheritance graph
[legend]

Public Member Functions

 ImplicitLipidInfo (std::string lipid_composition_name, core::Real temperature)
 Custom constructor for ImplicitLipidInfo. More...
 
 ImplicitLipidInfo (ImplicitLipidInfo const &src)
 
ImplicitLipidInfooperator= (ImplicitLipidInfo const &src)
 
 ~ImplicitLipidInfo () override
 
ImplicitLipidInfoOP clone () const
 
virtual void show (std::ostream &output) const
 Generate a string representation of information represented by ths Lipid MembraneInfo. More...
 
std::string chain_type () const
 Number of carbons and degrees of saturation in the chains. More...
 
std::string headgroup_type () const
 Chemical name of the headgroup. More...
 
std::string lipid_composition_name () const
 Abbreviated name of the lipid composition. More...
 
std::string lipid_composition_name_long () const
 Full name of the lipid composiiton. More...
 
core::Real degrees_of_saturation () const
 Number of degrees of saturation in the overall lipid. More...
 
core::Real temperature () const
 Temperature at which the Db parameter was measured/calculated (in celcius) More...
 
bool has_pore () const
 Does this protein have a water-filled pore? More...
 
void has_pore (bool const is_there_a_pore)
 
bool is_helical () const
 Is the protein alpha helical or beta barrel. More...
 
void is_helical (bool const is_helical)
 
void make_no_pore_parameters ()
 Make a set of parameters for the case with no pore. More...
 
core::Real pore_center_x (core::Real const zcoord) const
 Membrane Aqueous pore center - h parameter. More...
 
core::Real pore_center_y (core::Real const zcoord) const
 Membrane aqueous pore center - k parameter. More...
 
core::Real pore_major_radius (core::Real const zcoord) const
 Membrane aqueous pore - major radius. More...
 
core::Real pore_minor_radius (core::Real const zcoord) const
 Membrane aqueous pore - minor radius. More...
 
numeric::MathMatrix< core::Realpore_rotation (core::Real const zcoord) const
 Membrane aqueous pore - rotation matrix. More...
 
void set_aqueous_pore_parameters (AqueousPoreParametersOP aqueous_pore)
 Set membrane aqueous pore parameters. More...
 
core::Real per_atom_lipid_accessibility (core::Size rsd, core::Size atom) const
 Per-atom accessibility to membrane lipids (0 = not exposed, 50 = exposed) More...
 
void set_per_atom_lipid_accessibility (utility::vector1< utility::vector1< core::Real > > v)
 Per-atom accessibility to membrane lipids (0 = not exposed, 50 = exposed) More...
 
core::Real water_thickness () const
 Water thickness of the membrane Thickness of the membrane, defined by the pair of z coordinates with a water density of 50% (SAXS Db value) More...
 
core::Real water_steepness () const
 Change in water density from membrane core to water bulk water Steepness defined by the number of waters lost per increase in z from the membrane center (s = b) More...
 
void water_steepness (core::Real const v)
 Access function to change the value of the transition steepness Only change the steepness for the alpha v. beta case. More...
 
core::Real water_pseudo_thickness () const
 Pseudo-thickness parameter. More...
 
void water_pseudo_thickness (core::Real const p)
 Access function to change the value of the pseudo-thickness parameter. More...
 
core::Real f_depth (core::Real const z) const
 UNDER CONSTRUCTION - Derivative functions ///. More...
 
core::Real f_depth_gradient (core::Real const z) const
 Ccalcculate the gradient of f_depth. More...
 
core::Real f_cavity (numeric::xyzVector< core::Real > const &p) const
 Calculate the hydration of an atom based on its location relative to an aqueous pore or cavity. More...
 
core::Real f_cavity_gradient (core::Real const r) const
 Calculate the derivative of f_cavity (without any r(x,y,z) dependence) More...
 
core::Real g_radius (numeric::xyzVector< core::Real > const &p) const
 Calculate the location of an atom relative to the pore structure. More...
 
core::Real g_radius_gradient (numeric::xyzVector< core::Real > const &p) const
 Calcuclate the gradient of f_cavity More...
 
core::Real f_hydration (numeric::xyzVector< core::Real > const &p) const
 Overall hydration given the atomic depth and cavity structure. More...
 
core::Real f_hydration_gradient (numeric::xyzVector< core::Real > const &p) const
 Gradient. More...
 
void initialize_implicit_lipid_parameters ()
 Helper function to initialize the lipid composiiton data. More...
 

Private Types

typedef utility::vector1
< numeric::CubicPolynomial > 
piecewise_poly
 

Private Member Functions

 ImplicitLipidInfo ()
 

Private Attributes

core::Real water_thickness_
 
core::Real change_in_water_density_
 
core::Real transformed_water_thickness_
 
std::string chain_type_
 
std::string headgroup_type_
 
std::string lipid_composition_name_
 
std::string lipid_composition_name_long_
 
core::Real degrees_of_saturation_
 
core::Real temperature_
 
bool has_pore_
 
bool is_helical_
 
AqueousPoreParametersOP pore_params_
 
core::Real pore_transition_steepness_
 
utility::vector1
< utility::vector1< core::Real > > 
per_atom_lipid_accessibility_
 

Detailed Description

Definition of an implicit membrane with parameters for different lipid compositions.

Member Typedef Documentation

typedef utility::vector1< numeric::CubicPolynomial > core::conformation::membrane::ImplicitLipidInfo::piecewise_poly
private

Constructor & Destructor Documentation

core::conformation::membrane::ImplicitLipidInfo::ImplicitLipidInfo ( std::string  lipid_composition_name,
core::Real  temperature 
)

Custom constructor for ImplicitLipidInfo.

References initialize_implicit_lipid_parameters().

core::conformation::membrane::ImplicitLipidInfo::ImplicitLipidInfo ( ImplicitLipidInfo const &  src)
core::conformation::membrane::ImplicitLipidInfo::~ImplicitLipidInfo ( )
override
core::conformation::membrane::ImplicitLipidInfo::ImplicitLipidInfo ( )
private

Referenced by clone().

Member Function Documentation

std::string core::conformation::membrane::ImplicitLipidInfo::chain_type ( ) const

Number of carbons and degrees of saturation in the chains.

References chain_type_.

Referenced by initialize_implicit_lipid_parameters().

ImplicitLipidInfoOP core::conformation::membrane::ImplicitLipidInfo::clone ( ) const

References ImplicitLipidInfo().

core::Real core::conformation::membrane::ImplicitLipidInfo::degrees_of_saturation ( ) const

Number of degrees of saturation in the overall lipid.

References degrees_of_saturation_.

Referenced by initialize_implicit_lipid_parameters().

core::Real core::conformation::membrane::ImplicitLipidInfo::f_cavity ( numeric::xyzVector< core::Real > const &  p) const

Calculate the hydration of an atom based on its location relative to an aqueous pore or cavity.

References g_radius(), and pore_transition_steepness_.

Referenced by f_hydration(), and f_hydration_gradient().

core::Real core::conformation::membrane::ImplicitLipidInfo::f_cavity_gradient ( core::Real const  r) const

Calculate the derivative of f_cavity (without any r(x,y,z) dependence)

References pore_transition_steepness_.

Referenced by g_radius_gradient().

core::Real core::conformation::membrane::ImplicitLipidInfo::f_depth ( core::Real const  z) const

UNDER CONSTRUCTION - Derivative functions ///.

Calcuclate the hydration of an atom based on its location in a lipid-specific implicit bilayer.

Calcuclate the hydration of an atom based on its location in a lipid-specific implicit bilayer

References core::pose::motif::a(), protocols::match::upstream::b, change_in_water_density_, and transformed_water_thickness_.

Referenced by f_hydration(), and f_hydration_gradient().

core::Real core::conformation::membrane::ImplicitLipidInfo::f_depth_gradient ( core::Real const  z) const
core::Real core::conformation::membrane::ImplicitLipidInfo::f_hydration ( numeric::xyzVector< core::Real > const &  p) const

Overall hydration given the atomic depth and cavity structure.

References f_cavity(), f_depth(), has_pore_, and protocols::analysis::total.

core::Real core::conformation::membrane::ImplicitLipidInfo::f_hydration_gradient ( numeric::xyzVector< core::Real > const &  p) const
core::Real core::conformation::membrane::ImplicitLipidInfo::g_radius ( numeric::xyzVector< core::Real > const &  p) const

Calculate the location of an atom relative to the pore structure.

References pore_center_x(), pore_center_y(), pore_major_radius(), pore_minor_radius(), and pore_params_.

Referenced by f_cavity(), and g_radius_gradient().

core::Real core::conformation::membrane::ImplicitLipidInfo::g_radius_gradient ( numeric::xyzVector< core::Real > const &  p) const

Calcuclate the gradient of f_cavity

References f_cavity_gradient(), g_radius(), pore_params_, and protocols::hybridization::t.

Referenced by f_hydration_gradient().

bool core::conformation::membrane::ImplicitLipidInfo::has_pore ( ) const

Does this protein have a water-filled pore?

Are we accommodating the aqueous pore?

References has_pore_.

void core::conformation::membrane::ImplicitLipidInfo::has_pore ( bool const  is_there_a_pore)

References has_pore_.

std::string core::conformation::membrane::ImplicitLipidInfo::headgroup_type ( ) const

Chemical name of the headgroup.

References headgroup_type_.

Referenced by initialize_implicit_lipid_parameters().

void core::conformation::membrane::ImplicitLipidInfo::initialize_implicit_lipid_parameters ( )
bool core::conformation::membrane::ImplicitLipidInfo::is_helical ( ) const

Is the protein alpha helical or beta barrel.

References is_helical_.

Referenced by is_helical().

void core::conformation::membrane::ImplicitLipidInfo::is_helical ( bool const  is_helical)

References is_helical(), and is_helical_.

std::string core::conformation::membrane::ImplicitLipidInfo::lipid_composition_name ( ) const

Abbreviated name of the lipid composition.

References lipid_composition_name_.

Referenced by initialize_implicit_lipid_parameters().

std::string core::conformation::membrane::ImplicitLipidInfo::lipid_composition_name_long ( ) const

Full name of the lipid composiiton.

References lipid_composition_name_long_.

Referenced by initialize_implicit_lipid_parameters().

void core::conformation::membrane::ImplicitLipidInfo::make_no_pore_parameters ( )

Make a set of parameters for the case with no pore.

Make empty pore parameters.

References pore_params_.

ImplicitLipidInfo & core::conformation::membrane::ImplicitLipidInfo::operator= ( ImplicitLipidInfo const &  src)
core::Real core::conformation::membrane::ImplicitLipidInfo::per_atom_lipid_accessibility ( core::Size  rsd,
core::Size  atom 
) const

Per-atom accessibility to membrane lipids (0 = not exposed, 50 = exposed)

Per-atom accessibility to membrane lipids (0 = not exposed, 15 = exposed)

References per_atom_lipid_accessibility_.

core::Real core::conformation::membrane::ImplicitLipidInfo::pore_center_x ( core::Real const  zcoord) const

Membrane Aqueous pore center - h parameter.

References pore_params_.

Referenced by g_radius().

core::Real core::conformation::membrane::ImplicitLipidInfo::pore_center_y ( core::Real const  zcoord) const

Membrane aqueous pore center - k parameter.

References pore_params_.

Referenced by g_radius().

core::Real core::conformation::membrane::ImplicitLipidInfo::pore_major_radius ( core::Real const  zcoord) const

Membrane aqueous pore - major radius.

References pore_params_.

Referenced by g_radius().

core::Real core::conformation::membrane::ImplicitLipidInfo::pore_minor_radius ( core::Real const  zcoord) const

Membrane aqueous pore - minor radius.

References pore_params_.

Referenced by g_radius().

numeric::MathMatrix< core::Real > core::conformation::membrane::ImplicitLipidInfo::pore_rotation ( core::Real const  zcoord) const

Membrane aqueous pore - rotation matrix.

References pore_params_.

void core::conformation::membrane::ImplicitLipidInfo::set_aqueous_pore_parameters ( AqueousPoreParametersOP  aqueous_pore)

Set membrane aqueous pore parameters.

References pore_params_.

void core::conformation::membrane::ImplicitLipidInfo::set_per_atom_lipid_accessibility ( utility::vector1< utility::vector1< core::Real > >  v)

Per-atom accessibility to membrane lipids (0 = not exposed, 50 = exposed)

Per-atom accessibility to membrane lipids.

References per_atom_lipid_accessibility_.

void core::conformation::membrane::ImplicitLipidInfo::show ( std::ostream &  output) const
virtual
core::Real core::conformation::membrane::ImplicitLipidInfo::temperature ( ) const

Temperature at which the Db parameter was measured/calculated (in celcius)

References temperature_.

Referenced by initialize_implicit_lipid_parameters().

core::Real core::conformation::membrane::ImplicitLipidInfo::water_pseudo_thickness ( ) const

Pseudo-thickness parameter.

A parameter in the expotential membrane definition t = -(1/b) * ln(1/A)

References transformed_water_thickness_.

void core::conformation::membrane::ImplicitLipidInfo::water_pseudo_thickness ( core::Real const  p)
inline

Access function to change the value of the pseudo-thickness parameter.

A parameter in the logistic membrane definition

References transformed_water_thickness_.

core::Real core::conformation::membrane::ImplicitLipidInfo::water_steepness ( ) const

Change in water density from membrane core to water bulk water Steepness defined by the number of waters lost per increase in z from the membrane center (s = b)

References change_in_water_density_.

void core::conformation::membrane::ImplicitLipidInfo::water_steepness ( core::Real const  v)
inline

Access function to change the value of the transition steepness Only change the steepness for the alpha v. beta case.

References change_in_water_density_.

core::Real core::conformation::membrane::ImplicitLipidInfo::water_thickness ( ) const

Water thickness of the membrane Thickness of the membrane, defined by the pair of z coordinates with a water density of 50% (SAXS Db value)

References water_thickness_.

Referenced by initialize_implicit_lipid_parameters().

Member Data Documentation

std::string core::conformation::membrane::ImplicitLipidInfo::chain_type_
private
core::Real core::conformation::membrane::ImplicitLipidInfo::change_in_water_density_
private
core::Real core::conformation::membrane::ImplicitLipidInfo::degrees_of_saturation_
private
bool core::conformation::membrane::ImplicitLipidInfo::has_pore_
private
std::string core::conformation::membrane::ImplicitLipidInfo::headgroup_type_
private
bool core::conformation::membrane::ImplicitLipidInfo::is_helical_
private

Referenced by is_helical(), operator=(), and show().

std::string core::conformation::membrane::ImplicitLipidInfo::lipid_composition_name_
private
std::string core::conformation::membrane::ImplicitLipidInfo::lipid_composition_name_long_
private
utility::vector1< utility::vector1< core::Real > > core::conformation::membrane::ImplicitLipidInfo::per_atom_lipid_accessibility_
private
AqueousPoreParametersOP core::conformation::membrane::ImplicitLipidInfo::pore_params_
private
core::Real core::conformation::membrane::ImplicitLipidInfo::pore_transition_steepness_
private
core::Real core::conformation::membrane::ImplicitLipidInfo::temperature_
private
core::Real core::conformation::membrane::ImplicitLipidInfo::transformed_water_thickness_
private
core::Real core::conformation::membrane::ImplicitLipidInfo::water_thickness_
private

The documentation for this class was generated from the following files: