pub struct MetabolicPathway {
pub name: String,
pub enzymes: Vec<EnzymeDefinition>,
pub metabolites: Vec<String>,
pub stoichiometry_matrix: Array2<f64>,
pub regulations: Vec<Regulation>,
pub external_metabolites: HashMap<usize, f64>,
}Expand description
Metabolic pathway definition
Fields§
§name: StringPathway name
enzymes: Vec<EnzymeDefinition>Enzyme definitions
metabolites: Vec<String>Metabolite names
stoichiometry_matrix: Array2<f64>Stoichiometric matrix (reactions × metabolites)
regulations: Vec<Regulation>Regulatory relationships
external_metabolites: HashMap<usize, f64>External metabolite concentrations (fixed)
Implementations§
Source§impl MetabolicPathway
impl MetabolicPathway
Sourcepub fn new(_name: String, num_metabolites: usize, numenzymes: usize) -> Self
pub fn new(_name: String, num_metabolites: usize, numenzymes: usize) -> Self
Create a new empty metabolic pathway
Sourcepub fn add_enzyme(&mut self, enzyme: EnzymeDefinition)
pub fn add_enzyme(&mut self, enzyme: EnzymeDefinition)
Add an enzyme to the pathway
Sourcepub fn add_regulation(&mut self, regulation: Regulation)
pub fn add_regulation(&mut self, regulation: Regulation)
Add a regulatory relationship
Sourcepub fn set_external_metabolite(
&mut self,
_metaboliteidx: usize,
concentration: f64,
)
pub fn set_external_metabolite( &mut self, _metaboliteidx: usize, concentration: f64, )
Set external metabolite concentration
Sourcepub fn calculate_reaction_rates(
&self,
concentrations: &Array1<f64>,
) -> Array1<f64>
pub fn calculate_reaction_rates( &self, concentrations: &Array1<f64>, ) -> Array1<f64>
Calculate reaction rates for all enzymes
Sourcepub fn calculate_derivatives(&self, concentrations: &Array1<f64>) -> Array1<f64>
pub fn calculate_derivatives(&self, concentrations: &Array1<f64>) -> Array1<f64>
Calculate concentration time derivatives
Sourcepub fn control_analysis(
&self,
_steady_stateconcentrations: &Array1<f64>,
) -> PathwayAnalysis
pub fn control_analysis( &self, _steady_stateconcentrations: &Array1<f64>, ) -> PathwayAnalysis
Perform metabolic control analysis
Trait Implementations§
Source§impl Clone for MetabolicPathway
impl Clone for MetabolicPathway
Source§fn clone(&self) -> MetabolicPathway
fn clone(&self) -> MetabolicPathway
Returns a duplicate of the value. Read more
1.0.0 · Source§fn clone_from(&mut self, source: &Self)
fn clone_from(&mut self, source: &Self)
Performs copy-assignment from
source. Read moreAuto Trait Implementations§
impl Freeze for MetabolicPathway
impl RefUnwindSafe for MetabolicPathway
impl Send for MetabolicPathway
impl Sync for MetabolicPathway
impl Unpin for MetabolicPathway
impl UnwindSafe for MetabolicPathway
Blanket Implementations§
Source§impl<T> BorrowMut<T> for Twhere
T: ?Sized,
impl<T> BorrowMut<T> for Twhere
T: ?Sized,
Source§fn borrow_mut(&mut self) -> &mut T
fn borrow_mut(&mut self) -> &mut T
Mutably borrows from an owned value. Read more
Source§impl<T> CloneToUninit for Twhere
T: Clone,
impl<T> CloneToUninit for Twhere
T: Clone,
Source§impl<T> IntoEither for T
impl<T> IntoEither for T
Source§fn into_either(self, into_left: bool) -> Either<Self, Self>
fn into_either(self, into_left: bool) -> Either<Self, Self>
Converts
self into a Left variant of Either<Self, Self>
if into_left is true.
Converts self into a Right variant of Either<Self, Self>
otherwise. Read moreSource§fn into_either_with<F>(self, into_left: F) -> Either<Self, Self>
fn into_either_with<F>(self, into_left: F) -> Either<Self, Self>
Converts
self into a Left variant of Either<Self, Self>
if into_left(&self) returns true.
Converts self into a Right variant of Either<Self, Self>
otherwise. Read more