35 #ifndef OPENMS_CHEMISTRY_ISOTOPEDISTRIBUTION_H 36 #define OPENMS_CHEMISTRY_ISOTOPEDISTRIBUTION_H 106 void setMaxIsotope(
Size max_isotope);
109 Size getMaxIsotope()
const;
112 void set(
const ContainerType & distribution);
115 const ContainerType & getContainer()
const;
135 void estimateFromPeptideWeight(
double average_weight);
146 void estimateFromPeptideWeightAndS(
double average_weight,
UInt S);
154 void estimateFromRNAWeight(
double average_weight);
161 void estimateFromDNAWeight(
double average_weight);
168 void estimateFromWeightAndComp(
double average_weight,
double C,
double H,
double N,
double O,
double S,
double P);
184 void estimateFromWeightAndCompAndS(
double average_weight,
UInt S,
double C,
double H,
double N,
double O,
double P);
200 void estimateForFragmentFromPeptideWeight(
double average_weight_precursor,
double average_weight_fragment,
const std::set<UInt>& precursor_isotopes);
221 void estimateForFragmentFromPeptideWeightAndS(
double average_weight_precursor,
UInt S_precursor,
double average_weight_fragment,
UInt S_fragment,
const std::set<UInt>& precursor_isotopes);
237 void estimateForFragmentFromRNAWeight(
double average_weight_precursor,
double average_weight_fragment,
const std::set<UInt>& precursor_isotopes);
253 void estimateForFragmentFromDNAWeight(
double average_weight_precursor,
double average_weight_fragment,
const std::set<UInt>& precursor_isotopes);
276 void estimateForFragmentFromWeightAndComp(
double average_weight_precursor,
double average_weight_fragment,
const std::set<UInt>& precursor_isotopes,
double C,
double H,
double N,
double O,
double S,
double P);
308 void trimRight(
double cutoff);
318 void trimLeft(
double cutoff);
347 inline Iterator
begin() {
return distribution_.begin(); }
349 inline Iterator
end() {
return distribution_.end(); }
351 inline ConstIterator
begin()
const {
return distribution_.begin(); }
353 inline ConstIterator
end()
const {
return distribution_.end(); }
355 inline ReverseIterator
rbegin() {
return distribution_.rbegin(); }
357 inline ReverseIterator
rend() {
return distribution_.rend(); }
359 inline ConstReverseIterator
rbegin()
const {
return distribution_.rbegin(); }
361 inline ConstReverseIterator
rend()
const {
return distribution_.rend(); }
367 void convolve_(ContainerType & result,
const ContainerType & left,
const ContainerType & right)
const;
370 void convolvePow_(ContainerType & result,
const ContainerType & input,
Size factor)
const;
373 void convolveSquare_(ContainerType & result,
const ContainerType & input)
const;
381 void calcFragmentIsotopeDist_(ContainerType& result,
const ContainerType& fragment_isotope_dist,
const ContainerType& comp_fragment_isotope_dist,
const std::set<UInt>& precursor_isotopes);
384 ContainerType fillGaps_(
const ContainerType&
id)
const;
395 #endif // OPENMS_CHEMISTRY_ISOTOPEDISTRIBUTION_H ContainerType::iterator Iterator
Definition: IsotopeDistribution.h:71
ContainerType::reverse_iterator reverse_iterator
Definition: IsotopeDistribution.h:75
ReverseIterator rbegin()
Definition: IsotopeDistribution.h:355
Iterator end()
Definition: IsotopeDistribution.h:349
unsigned int UInt
Unsigned integer type.
Definition: Types.h:95
Isotope distribution class.
Definition: IsotopeDistribution.h:62
ContainerType::iterator iterator
Definition: IsotopeDistribution.h:70
Size max_isotope_
maximal isotopes which is used to calculate the distribution
Definition: IsotopeDistribution.h:387
bool operator==(_Iterator< _Val, _Ref, _Ptr > const &, _Iterator< _Val, _Ref, _Ptr > const &)
Definition: KDTree.h:806
ReverseIterator rend()
Definition: IsotopeDistribution.h:357
Main OpenMS namespace.
Definition: FeatureDeconvolution.h:47
ContainerType::reverse_iterator ReverseIterator
Definition: IsotopeDistribution.h:76
ContainerType::const_reverse_iterator const_reverse_iterator
Definition: IsotopeDistribution.h:77
Iterator begin()
Definition: IsotopeDistribution.h:347
ConstReverseIterator rbegin() const
Definition: IsotopeDistribution.h:359
DPosition< D, TCoordinateType > operator*(DPosition< D, TCoordinateType > position, typename DPosition< D, TCoordinateType >::CoordinateType scalar)
Scalar multiplication (a bit inefficient)
Definition: DPosition.h:421
ConstReverseIterator rend() const
Definition: IsotopeDistribution.h:361
ContainerType::const_iterator const_iterator
Definition: IsotopeDistribution.h:72
bool operator!=(_Iterator< _Val, _Ref, _Ptr > const &, _Iterator< _Val, _Ref, _Ptr > const &)
Definition: KDTree.h:824
size_t Size
Size type e.g. used as variable which can hold result of size()
Definition: Types.h:128
ConstIterator begin() const
Definition: IsotopeDistribution.h:351
ContainerType distribution_
stores the isotope distribution
Definition: IsotopeDistribution.h:390
ConstIterator end() const
Definition: IsotopeDistribution.h:353
std::vector< std::pair< Size, double > > ContainerType
container type, first holds the weight of the isotope, second the probability
Definition: IsotopeDistribution.h:69
ContainerType::const_iterator ConstIterator
Definition: IsotopeDistribution.h:73
ContainerType::const_reverse_iterator ConstReverseIterator
Definition: IsotopeDistribution.h:78