NAME

Metabolomics::Fragment::Annotation - Perl extension for fragment annotation in metabolomics

VERSION

Version 0.01

SYNOPSIS

use Metabolomics::Fragment::Annotation;

DESCRIPTION

Metabolomics::Fragment::Annotation is a full package for Perl dev allowing full annotation of fragments.

EXPORT

SUBROUTINES/METHODS

METHOD refFragment

## Description : set a new fragment
## Input : NA	
## Output : $refFragment
## Usage : my ( $refFragment ) = refFragment() ;

METHOD _getANNOTATION_IN_NEG_MODE

## Description : _getANNOTATION_IN_NEG_MODE
## Input : void
## Output : $ANNOTATION_IN_NEG_MODE
## Usage : my ( $ANNOTATION_IN_NEG_MODE ) = _getANNOTATION_IN_NEG_MODE () ;

METHOD _getANNOTATION_IN_POS_MODE

## Description : _getANNOTATION_IN_POS_MODE
## Input : void
## Output : $ANNOTATION_IN_POS_MODE
## Usage : my ( $ANNOTATION_IN_POS_MODE ) = _getANNOTATION_IN_POS_MODE () ;

METHOD _getDELTA_MASS

## Description : _getDELTA_MASS
## Input : void
## Output : $DELTA_MASS
## Usage : my ( $DELTA_MASS ) = _getDELTA_MASS () ;

METHOD _getTYPE

## Description : _getTYPE
## Input : void
## Output : $TYPE
## Usage : my ( $TYPE ) = _getTYPE () ;

METHOD _getLOSSES_OR_GAINS

## Description : _getLOSSES_OR_GAINS
## Input : void
## Output : $LOSSES_OR_GAINS
## Usage : my ( $LOSSES_OR_GAINS ) = _getLOSSES_OR_GAINS () ;

METHOD refPeak

## Description : set a new theorical peak
## Input : NA	
## Output : refPeak
## Usage : my ( refPeak ) = refPeak() ;

METHOD _setCOMPUTED_MONOISOTOPIC_MASS

## Description : _setCOMPUTED_MONOISOTOPIC_MASS
## Input : $COMPUTED_MONOISOTOPIC_MASS
## Output : TRUE
## Usage : _setCOMPUTED_MONOISOTOPIC_MASS ( $COMPUTED_MONOISOTOPIC_MASS ) ;

METHOD _getCOMPUTED_MONOISOTOPIC_MASS

## Description : _getCOMPUTED_MONOISOTOPIC_MASS
## Input : void
## Output : $COMPUTED_MONOISOTOPIC_MASS
## Usage : my ( $COMPUTED_MONOISOTOPIC_MASS ) = _getCOMPUTED_MONOISOTOPIC_MASS () ;

METHOD _setMESURED_MONOISOTOPIC_MASS

## Description : _setMESURED_MONOISOTOPIC_MASS
## Input : $MESURED_MONOISOTOPIC_MASS
## Output : TRUE
## Usage : _setMESURED_MONOISOTOPIC_MASS ( $MESURED_MONOISOTOPIC_MASS ) ;

METHOD _getMESURED_MONOISOTOPIC_MASS

## Description : _getMESURED_MONOISOTOPIC_MASS
## Input : void
## Output : $MESURED_MONOISOTOPIC_MASS
## Usage : my ( $MESURED_MONOISOTOPIC_MASS ) = _getMESURED_MONOISOTOPIC_MASS () ;

METHOD _setANNOTATION_IN_NEG_MODE

## Description : _setANNOTATION_IN_NEG_MODE
## Input : $ANNOTATION_IN_NEG_MODE
## Output : TRUE
## Usage : _setANNOTATION_IN_NEG_MODE ( $ANNOTATION_IN_NEG_MODE ) ;

METHOD _setANNOTATION_DA_ERROR

## Description : _setANNOTATION_DA_ERROR
## Input : $MMU_ERROR
## Output : TRUE
## Usage : _setANNOTATION_DA_ERROR ( $MMU_ERROR ) ;

METHOD _setANNOTATION_PPM_ERROR

## Description : _setANNOTATION_PPM_ERROR
## Input : $PPM_ERROR
## Output : TRUE
## Usage : _setANNOTATION_PPM_ERROR ( $PPM_ERROR ) ;

METHOD _setANNOTATION_IN_NEG_MODE

## Description : _setANNOTATION_IN_NEG_MODE
## Input : $ANNOTATION_IN_POS_MODE
## Output : TRUE
## Usage : _setANNOTATION_IN_POS_MODE ( $ANNOTATION_IN_POS_MODE ) ;

METHOD _setANNOTATION_TYPE

## Description : _setANNOTATION_TYPE
## Input : $ANNOTATION_TYPE
## Output : TRUE
## Usage : _setANNOTATION_TYPE ( $ANNOTATION_TYPE ) ;

METHOD _getANNOTATION_TYPE

## Description : _getANNOTATION_TYPE
## Input : void
## Output : $ANNOTATION_TYPE
## Usage : my ( $TYPE ) = _getANNOTATION_TYPE () ;

METHOD _setANNOTATION_NAME

## Description : _setANNOTATION_NAME
## Input : $ANNOTATION_NAME
## Output : TRUE
## Usage : _setANNOTATION_NAME ( $ANNOTATION_NAME ) ;

METHOD _getANNOTATION_NAME

## Description : _getANNOTATION_NAME
## Input : void
## Output : $ANNOTATION_NAME
## Usage : my ( $ANNOTATION_NAME ) = _getANNOTATION_NAME () ;

METHOD _getANNOTATION_ID

## Description : _getANNOTATION_ID
## Input : void
## Output : $ANNOTATION_ID
## Usage : my ( $ANNOTATION_ID ) = _getANNOTATION_ID () ;

METHOD _setANNOTATION_ID

## Description : _setANNOTATION_ID
## Input : $ANNOTATION_ID
## Output : TRUE
## Usage : _setANNOTATION_ID ( $ANNOTATION_ID ) ;

METHOD refBank

## Description : set a new list of fragments as a bank
## Input : NA
## Output : $Fragments
## Usage : my ( $Fragments ) = refBank ( ) ;

METHOD refContaminants

## Description : set a new list of contaminants as a bank
## Input : NA
## Output : $Contaminants
## Usage : my ( $Contaminants ) = refContaminants ( ) ;

METHOD refContaminant

## Description : set a new contaminant
## Input : NA	
## Output : $refContaminant
## Usage : my ( $refContaminant ) = refContaminant() ;

METHOD refContaminantExtensive

## Description : set a new contaminant extensive version
## Input : NA	
## Output : $refContaminantExtensive
## Usage : my ( $refContaminantExtensive ) = refContaminantExtensive() ;

METHOD _setContaminantExtREFERENCE

## Description : _setContaminantExtREFERENCE
## Input : $REFERENCE
## Output : TRUE
## Usage : _setContaminantExtREFERENCE ( $ION_FORM ) ;

METHOD _getContaminantExtION_MODE

## Description : _getContaminantExtION_MODE
## Input : void
## Output : $ION_MODE
## Usage : my ( $ION_MODE ) = _getContaminantExtION_MODE () ;

METHOD _setContaminantExtION_MODE

## Description : _setContaminantExtION_MODE
## Input : $ION_MODE
## Output : TRUE
## Usage : _setContaminantExtION_MODE ( $ION_FORM ) ;

METHOD _setContaminantExtEXACT_ADDUCT_MASS

## Description : _setContaminantExtEXACT_ADDUCT_MASS
## Input : $EXACT_ADDUCT_MASS
## Output : TRUE
## Usage : _setContaminantExtEXACT_ADDUCT_MASS ( $ION_FORM ) ;

METHOD _getContaminantExtEXACT_ADDUCT_MASS

## Description : _getContaminantExtEXACT_ADDUCT_MASS
## Input : void
## Output : $EXACT_ADDUCT_MASS
## Usage : my ( $EXACT_ADDUCT_MASS ) = _getContaminantExtEXACT_ADDUCT_MASS () ;

METHOD _getContaminantExtION_FORM

## Description : _getContaminantExtION_FORM
## Input : void
## Output : $ION_FORM
## Usage : my ( $ION_FORM ) = _getContaminantExtION_FORM () ;

METHOD _setContaminantExtION_FORM

## Description : _setContaminantExtION_FORM
## Input : $ION_FORM
## Output : TRUE
## Usage : _setContaminantExtION_FORM ( $ION_FORM ) ;

METHOD _getContaminantExtMZ

## Description : _getContaminantExtMZ
## Input : void
## Output : $MZ
## Usage : my ( $EXACT_ADDUCT_MASS ) = _getContaminantExtMZ () ;

METHOD _setContaminantExtMZ

## Description : _setContaminantExtMZ
## Input : $MZ
## Output : TRUE
## Usage : _setContaminantExtMZ ( $MZ ) ;

METHOD _getContaminantExtINSTRUMENT_TYPES

## Description : _getContaminantExtINSTRUMENT_TYPES
## Input : void
## Output : $INSTRUMENT_TYPE
## Usage : my ( $INSTRUMENT_TYPE ) = _getContaminantExtINSTRUMENT_TYPES () ;

METHOD _setContaminantExtINSTRUMENT_TYPE

## Description : _setContaminantExtINSTRUMENT_TYPE
## Input : $INSTRUMENT_TYPE
## Output : TRUE
## Usage : _setContaminantExtINSTRUMENT_TYPE ( $INSTRUMENT_TYPE ) ;

METHOD _getContaminantExtINSTRUMENTS

## Description : _getContaminantExtINSTRUMENTS
## Input : void
## Output : $INSTRUMENT
## Usage : my ( $INSTRUMENT ) = _getContaminantExtINSTRUMENTS () ;

METHOD _setContaminantExtINSTRUMENT

## Description : _setContaminantExtINSTRUMENT
## Input : $INSTRUMENT
## Output : TRUE
## Usage : _setContaminantExtINSTRUMENT ( $INSTRUMENT ) ;

METHOD _setContaminantExtCHROMATOGRAPHY

## Description : _setContaminantExtCHROMATOGRAPHY
## Input : $CHROMATOGRAPHY
## Output : TRUE
## Usage : _setContaminantExtCHROMATOGRAPHY ( $CHROMATOGRAPHY ) ;

METHOD _setContaminantExtION_SOURCE_TYPE

## Description : _setContaminantExtION_SOURCE_TYPE
## Input : $ION_SOURCE_TYPE
## Output : TRUE
## Usage : _setContaminantExtION_SOURCE_TYPE ( $ION_SOURCE_TYPE ) ;

METHOD _getContaminantExtTYPE_OF_CONTAMINANT

## Description : _getContaminantExtTYPE_OF_CONTAMINANT
## Input : void
## Output : $TYPE_OF_CONTAMINANT
## Usage : my ( $TYPE_OF_CONTAMINANT ) = _getContaminantExtTYPE_OF_CONTAMINANT () ;

METHOD _setContaminantTYPE_OF_CONTAMINANT

## Description : _setContaminantTYPE_OF_CONTAMINANT
## Input : $TYPE_OF_CONTAMINANT
## Output : TRUE
## Usage : _setContaminantTYPE_OF_CONTAMINANT ( $TYPE_OF_CONTAMINANT ) ;

METHOD _setContaminantPUBCHEM_CID

## Description : _setContaminantPUBCHEM_CID
## Input : $PUBCHEM_CID
## Output : TRUE
## Usage : _setContaminantPUBCHEM_CID ( $PUBCHEM_CID ) ;

METHOD _setContaminantSTD_INCHI_KEY

## Description : _setContaminantSTD_INCHI_KEY
## Input : $STD_INCHI_KEY
## Output : TRUE
## Usage : _setContaminantSTD_INCHI_KEY ( $STD_INCHI_KEY ) ;

METHOD _setContaminantSTD_INCHI

## Description : _setContaminantSTD_INCHI
## Input : $STD_INCHI
## Output : TRUE
## Usage : _setContaminantSTD_INCHI ( $STD_INCHI ) ;

METHOD _getContaminantEXACT_MASS

## Description : _getContaminantEXACT_MASS
## Input : void
## Output : $EXACT_MASS
## Usage : my ( $EXACT_MASS ) = _getContaminantEXACT_MASS () ;

METHOD _setContaminantEXACT_MASS

## Description : _setContaminantEXACT_MASS
## Input : $EXACT_MASS
## Output : TRUE
## Usage : _setContaminantEXACT_MASS ( $EXACT_MASS ) ;

METHOD _setContaminantFORMULA

## Description : _setContaminantFORMULA
## Input : $FORMULA
## Output : TRUE
## Usage : _setContaminantFORMULA ( $FORMULA ) ;

METHOD _getContaminantNAME

## Description : _getContaminantNAME
## Input : void
## Output : $NAME
## Usage : my ( $NAME ) = _getContaminantNAME () ;

METHOD _setContaminantNAME

## Description : _setContaminantNAME
## Input : $NAME
## Output : TRUE
## Usage : _setContaminantNAME ( $NAME ) ;

METHOD _getContaminantID

## Description : _getContaminantID
## Input : void
## Output : $ID
## Usage : my ( $ID ) = _getContaminantID () ;

METHOD _setContaminantID

## Description : _setContaminantID
## Input : $ID
## Output : TRUE
## Usage : _setContaminantID ( $ID ) ;

METHOD _addContaminant

## Description : _addContaminant
## Input : $self, $contaminant ;
## Ouput :  NA
## Usage : _addContaminant($contaminant);

METHOD _addFragment

## Description : _addFragment
## Input : $self, $fragment ;
## Ouput :  NA
## Usage : _addFragment($fragment);

METHOD _addPeakList

## Description : _addPeakList
## Input : $self, $type, $peakList ;
## Ouput : NA;
## Usage : _addPeakList($type, $peakList);

METHOD _getFragments

## Description : get the list of fragments from the bank object
## Input : $self
## Output : $fragments
## Usage : my ( $fragments ) = $obank->_getFragments () ;

METHOD _getContaminants

## Description : get the list of contaminants from the bank object
## Input : $self
## Output : $contaminants
## Usage : my ( $contaminants ) = $obank->_getContaminants () ;

METHOD _getPeakList

## Description : get the list of fragments from the bank object
## Input : $self, $type
## Output : $peakList
## Usage : my ( $peakList ) = $obank->_getPeakList ($type) ;

METHOD getFragmentsFromSource

## Description : get the list of theorical fragmets from $source file
## Input : $source
## Output : $theoFragments
## Usage : my ( $theoFragments ) = getFragmentsFromSource ( $conf ) ;

METHOD getContaminantsFromSource

## Description : get all contaminants information from the MaConDa resources v01
## Input : $source
## Output : $oBank
## Usage : my ( $oBank ) = getContaminantsFromSource ( $source ) ;

METHOD getContaminantsFromSource

## Description : get all contaminants information from the MaConDa extensive resources v01
## Input : $source
## Output : $oBank
## Usage : my ( $oBank ) = getContaminantsFromSource ( $source ) ;

METHOD extractContaminantTypes

## Description : extract contaminant types listing from contaminants object
## Input : $oContaminants
## Output : $contaminantTypes
## Usage : my ( $contaminantTypes ) = extractContaminantTypes ( $oContaminants ) ;

METHOD extractContaminantInstruments

## Description : extract instruments listing from contaminants object
## Input : $oContaminants
## Output : $contaminantInstruments
## Usage : my ( $contaminantInstruments ) = extractContaminantInstruments ( $oContaminants ) ;

METHOD extractContaminantInstrumentTypes

## Description : extract instrument types listing from contaminants object
## Input : $oContaminants
## Output : $contaminantInstrumentTypes
## Usage : my ( $contaminantInstrumentTypes ) = extractContaminantInstrumentTypes ( $oContaminants ) ;

METHOD filterContaminantIonMode

## Description : filtering contaminants by their ion mode (POS|NEG|BOTH)
## Input : $oBank, $ionMode
## Output : $oFilteredBank
## Usage : my ( $oFilteredBank ) = filterContaminantIonMode ( $oBank, $ionMode ) ;

METHOD filterContaminantInstruments

## Description : filtering contaminants by their instrument (array)
## Input : $oBank, $instruments
## Output : $oFilteredBank, $totalEntryNum, $fiteredEntryNum
## Usage : my ( $oFilteredBank ) = filterContaminantInstruments ( $oBank, $instruments ) ;

METHOD filterContaminantInstrumentTypes

## Description : filtering contaminants by their instrument types (array)
## Input : $oBank, $instrumentTypes
## Output : $oFilteredBank
## Usage : my ( $oFilteredBank ) = filterContaminantInstrumentTypes ( $oBank, $instrumentTypes ) ;

METHOD buildTheoPeakBankFromFragments

## Description : building a bank integrating each potential fragments from a parent ion
## Input : $refBank, $mzParent
## Output : $ionBank
## Usage : my ( $ionBank ) = buildTheoPeakBankFromFragments ( $refBank, $mzParent ) ;

METHOD buildTheoPeakBankFromContaminants

## Description : building a bank integrating each potential ion from contaminants
## Input : $refBank, $oContaminants, $queryMode
## Output : $ionBank
## Usage : my ( $ionBank ) = buildTheoPeakBankFromContaminants ( $refBank, $oContaminants, $queryMode ) ;

METHOD parsingMsFragments

## Description : get a list of Ms fragment from a experimental mesureament.
## Input : $oBank, $Xfile, $is_header, $column
## Output : $msFragBank
## Usage : $oBank->parsingMsFragments ( $Xfile, $is_header, $column ) ;

METHOD _parsingW4mTabularFile

## Description : parsing a full W4M variable metadata tabular file and create a array of arrats object
## Input : $inputTabularFile
## Output : $oVariableMetadataTable
## Usage : my ( $oVariableMetadataTable ) = parsingW4mTabularFile ( $inputTabularFile ) ;

METHOD compareExpMzToTheoMzList

## Description : comparing two lists of mzs (theo and experimental) with a delta
## Input : $oBank, $deltaValue, $deltaType
## Output : NA
## Usage : my ( $var4 ) = compareExpMzToTheoMzList ( $var3 ) ;

METHOD writeTabularWithPeakBankObject

## Description : write a full tabular file from a template and mapping peak bank objects features
## Input : $oBank, $templateTabular, $tabular
## Output : $tabular
## Usage : my ( $tabular ) = $oBank->writeTabularWithPeakBankObject ( $templateTabular, $tabular ) ;

METHOD writeFullTabularWithPeakBankObject

## Description : write a output containing the input data and new column concerning annotation work
## Input : $oBank, $inputData, $templateTabular, $tabular
## Output : $tabular
## Usage : my ( $tabular ) = $oBank->writeFullTabularWithPeakBankObject ( $inputData, $templateTabular, $tabular ) ;

METHOD _getTEMPLATE_TABULAR_FIELDS

## Description : get all fields of the tabular template file
## Input : $template
## Output : $fields
## Usage : my ( $fields ) = _getTEMPLATE_TABULAR_FIELDS ( $template ) ;

METHOD _mapPeakListWithTemplateFields

## Description : map any PeakList with any template fields from tabular
## Input : $fields, $peakList
## Output : $rows
## Usage : my ( $rows ) = _mapPeakListWithTemplateFields ( $fields, $peakList ) ;

METHOD utilsAsConf

## Description : build a conf from a conf file with KEY=VALUE structure
## Input : $file
## Ouput : $oConf (a hash)
## Usage : my ( $oConf ) = utilsAsConf( $file ) ;

METHOD _getSmallestDecimalPartOf2Numbers

## Description : get the smallest decimal part of two numbers
## Input : $float01, $float02
## Output : $commonLenghtDecimalPart
## Usage : my ( $commonLenghtDecimalPart ) = _getSmallestDecimalPartOf2Numbers ( $float01, $float02 ) ;

METHOD _mz_delta_conversion

## Description : returns the minimum and maximum mass according to the delta
## Input : \$mass, \$delta_type, \$mz_delta
## Output : \$min, \$max
## Usage : ($min, $max)= mz_delta_conversion($mass, $delta_type, $mz_delta) ;

METHOD _computeMzDeltaInMmu

## Description : compute a delta (Da) between exp. mz and calc. mz
## based on http://www.waters.com/waters/en_GB/Mass-Accuracy-and-Resolution/nav.htm?cid=10091028&locale=en_GB
## Other ref : https://www.sciencedirect.com/science/article/pii/S1044030510004022
## Input : $expMz, $calcMz
## Output : $mzDeltaDa
## Usage : my ( $mzDeltaDa ) = _computeMzDeltaInMmu ( $expMz, $calcMz ) ;

METHOD computeMzDeltaInPpm

## Description : compute a delta (PPM) between exp. mz and calc. mz - Δm/Monoisotopic calculated exact mass ×106 
## Input : $expMz, $calcMz
## Output : $mzDeltaPpm
## Usage : my ( $mzDeltaPpm ) = computeMzDeltaInPpm ( $expMz, $calcMz ) ;

METHOD _roundFloat

## Description : round a float by the sended decimal
## Input : $number, $decimal
## Output : $round_num
## Usage : my ( $round_num ) = round_num( $number, $decimal ) ;

AUTHOR

Franck Giacomoni, <franck.giacomoni at inra.fr>

SEE ALSO

All information about FragNot should be find here: https://services.pfem.clermont.inra.fr/gitlab/fgiacomoni/fragnot

BUGS

Please report any bugs or feature requests to bug-metabolomics-fragnot at rt.cpan.org, or through the web interface at https://rt.cpan.org/NoAuth/ReportBug.html?Queue=Metabolomics-FragNot. I will be notified, and then you'll automatically be notified of progress on your bug as I make changes.

SUPPORT

You can find documentation for this module with the perldoc command.

perldoc Metabolomics::Fragment::Annotation

ACKNOWLEDGEMENTS

LICENSE AND COPYRIGHT

CeCILL Copyright (C) 2019 by Franck Giacomoni

Initiated by Franck Giacomoni

followed by INRA PFEM team

Web Site = INRA PFEM

1 POD Error

The following errors were encountered while parsing the POD:

Around line 2675:

Non-ASCII character seen before =encoding in 'Δm/Monoisotopic'. Assuming CP1252