Implements MassDecomposer interface using algorithm and data structures described in paper "Efficient Mass Decomposition" S. Böcker, Z. Lipták, ACM SAC-BIO, 2004 doi:10.1145/1066677.1066715.
More...
#include <OpenMS/CHEMISTRY/MASSDECOMPOSITION/IMS/IntegerMassDecomposer.h>
template<typename ValueType = long unsigned int, typename DecompositionValueType = unsigned int>
class OpenMS::ims::IntegerMassDecomposer< ValueType, DecompositionValueType >
Implements MassDecomposer interface using algorithm and data structures described in paper "Efficient Mass Decomposition" S. Böcker, Z. Lipták, ACM SAC-BIO, 2004 doi:10.1145/1066677.1066715.
The main idea is instead of using the classical dynamic programming algorithm, store the residues of the smallest decomposable numbers for every modulo of the smallest alphabet mass.
- Template Parameters
-
| ValueType | Type of values to be decomposed. |
| DecompositionValueType | Type of decomposition elements. |
- Author
- Anton Pervukhin Anton.nosp@m..Per.nosp@m.vukhi.nosp@m.n@Ce.nosp@m.BiTec.nosp@m..Uni.nosp@m.-Biel.nosp@m.efel.nosp@m.d.DE
-
Marcel Martin Marce.nosp@m.l.Ma.nosp@m.rtin@.nosp@m.CeBi.nosp@m.Tec.U.nosp@m.ni-B.nosp@m.ielef.nosp@m.eld..nosp@m.DE
-
Henner Sudek Henne.nosp@m.r.Su.nosp@m.dek@C.nosp@m.eBiT.nosp@m.ec.Un.nosp@m.i-Bi.nosp@m.elefe.nosp@m.ld.D.nosp@m.E
◆ decomposition_type
template<typename ValueType = long unsigned int, typename DecompositionValueType = unsigned int>
◆ decomposition_value_type
template<typename ValueType = long unsigned int, typename DecompositionValueType = unsigned int>
Type of decomposition value.
◆ decompositions_type
template<typename ValueType = long unsigned int, typename DecompositionValueType = unsigned int>
Type of container for many decompositions.
◆ residues_table_row_type
template<typename ValueType = long unsigned int, typename DecompositionValueType = unsigned int>
Type of rows of residues table.
◆ residues_table_type
template<typename ValueType = long unsigned int, typename DecompositionValueType = unsigned int>
Type of the residues table.
◆ size_type
template<typename ValueType = long unsigned int, typename DecompositionValueType = unsigned int>
| typedef decomposition_type::size_type size_type |
Type of decomposition's size.
◆ value_type
template<typename ValueType = long unsigned int, typename DecompositionValueType = unsigned int>
Type of value to be decomposed.
◆ witness_vector_type
template<typename ValueType = long unsigned int, typename DecompositionValueType = unsigned int>
◆ IntegerMassDecomposer()
template<typename ValueType , typename DecompositionValueType >
Constructor with weights.
- Parameters
-
| [in] | alphabet | Weights over which masses to be decomposed. |
References IntegerMassDecomposer< ValueType, DecompositionValueType >::ertable_, IntegerMassDecomposer< ValueType, DecompositionValueType >::fillExtendedResidueTable_(), Weights::getWeight(), IntegerMassDecomposer< ValueType, DecompositionValueType >::infty_, IntegerMassDecomposer< ValueType, DecompositionValueType >::lcms_, IntegerMassDecomposer< ValueType, DecompositionValueType >::mass_in_lcms_, Weights::size(), and IntegerMassDecomposer< ValueType, DecompositionValueType >::witness_vector_.
◆ collectDecompositionsRecursively_()
template<typename ValueType , typename DecompositionValueType >
Collects decompositions for mass by recursion.
- Parameters
-
| [in] | mass | Mass to be decomposed. |
| [in] | alphabetMassIndex | An index of the mass in alphabet that is used on this step of recursion. |
| [in] | decomposition | Decomposition which is calculated on this step of recursion. |
| [in] | decompositionsStore | Container where decompositions are collected. |
◆ exist()
template<typename ValueType , typename DecompositionValueType >
◆ fillExtendedResidueTable_()
template<typename ValueType , typename DecompositionValueType >
◆ getAllDecompositions()
template<typename ValueType , typename DecompositionValueType >
◆ getDecomposition()
template<typename ValueType , typename DecompositionValueType >
◆ getNumberOfDecompositions()
template<typename ValueType , typename DecompositionValueType >
Gets number of all possible decompositions for a given mass. Since using getAllDecomposition() the usage of this function could be consuming.
- Parameters
-
| [in] | mass | Mass to be decomposed |
- Returns
- number of decompositions for a given mass.
Gets number of all possible decompositions for a given mass. Since using getAllDecomposition() the usage of this function could be consuming.
Needs the mass to be decomposed and returns the number of decompositions for that mass.
Implements MassDecomposer< ValueType, DecompositionValueType >.
◆ alphabet_
template<typename ValueType = long unsigned int, typename DecompositionValueType = unsigned int>
Weights over which the mass is to be decomposed.
◆ ertable_
template<typename ValueType = long unsigned int, typename DecompositionValueType = unsigned int>
◆ infty_
template<typename ValueType = long unsigned int, typename DecompositionValueType = unsigned int>
◆ lcms_
template<typename ValueType = long unsigned int, typename DecompositionValueType = unsigned int>
◆ mass_in_lcms_
template<typename ValueType = long unsigned int, typename DecompositionValueType = unsigned int>
◆ witness_vector_
template<typename ValueType = long unsigned int, typename DecompositionValueType = unsigned int>