m_qtlmap_cli

[ Top ] [ Modules ]

NAME

    m_qtlmap_cli

SYNOPSIS

   A command-line interface (CLI) is a mechanism for interacting with th QTLMap software by typing commands to perform specific tasks.

DESCRIPTION

   This module manage the options give as argument to qtlmap.

NOTES

SEE ALSO


LEN_OPT

[ Top ] [ m_qtlmap_cli ] [ Constants ]

NAME

   LEN_OPT

DESCRIPTION

   Option maximum length

SOURCE

33    integer                            ,parameter,private   :: LEN_OPT         = 44

MARG_HELP

[ Top ] [ m_qtlmap_cli ] [ Constants ]

NAME

   MARG_HELP

DESCRIPTION

   blank to print before the help output

SOURCE

42    integer                            ,parameter,private   :: MARG_HELP       = 30

NQTL_DEFAULT

[ Top ] [ m_qtlmap_cli ] [ Constants ]

NAME

   NQTL_DEFAULT

DESCRIPTION

   default hypothesis number (qtl) to test if is not specified by the user

SOURCE

60    integer                            ,parameter,private   :: NQTL_DEFAULT    = 1

NSIM_DEFAULT

[ Top ] [ m_qtlmap_cli ] [ Constants ]

NAME

   NSIM_DEFAULT

DESCRIPTION

   default simulation number if is not specified by the user

SOURCE

51    integer                            ,parameter,private   :: NSIM_DEFAULT    = 1000

OPT_CALCUL

[ Top ] [ m_qtlmap_cli ] [ Constants ]

NAME

   OPT_CALCUL

DESCRIPTION

   calcul option name

NOTES

   see m_qtlmap_analyse module to have the available analysis

SOURCE

91    character(len=LEN_OPT)             , parameter, private :: OPT_CALCUL       ='--calcul'

OPT_CENSORED_CALCUL

[ Top ] [ m_qtlmap_cli ] [ Constants ]

NAME

   OPT_CENSORED_CALCUL

DESCRIPTION

   censored data option name

NOTES

   Used to take care about a third generation with trait

SOURCE

191    character(len=LEN_OPT)             , parameter, private :: OPT_CENSORED_CALCUL  ='--calcul-cd'

OPT_DEBUG

[ Top ] [ m_qtlmap_cli ] [ Constants ]

NAME

   OPT_DEBUG

DESCRIPTION

   debug output console option name

NOTES

   m_qtlmap_log

SOURCE

237    character(len=LEN_OPT)             , parameter, private :: OPT_DEBUG        ='--debug'

OPT_DEBUG_SHORT

[ Top ] [ m_qtlmap_cli ] [ Constants ]

NAME

   OPT_DEBUG_SHORT

DESCRIPTION

   debug output console short option name

NOTES

   m_qtlmap_log

SOURCE

267    character(len=LEN_OPT)             , parameter, private :: OPT_DEBUG_SHORT  ='-d'

OPT_EQTL

[ Top ] [ m_qtlmap_cli ] [ Constants ]

NAME

   OPT_EQTL

DESCRIPTION

   expression phenotypics values option name

SOURCE

155    character(len=LEN_OPT)             , parameter, private :: OPT_EQTL         ='--data-transcriptomic'

OPT_ESTIME_THRESHOLDS

[ Top ] [ m_qtlmap_cli ] [ Constants ]

NAME

   OPT_ESTIME_THRESHOLDS

DESCRIPTION

   threshold estimation option name

SOURCE

199    character(len=LEN_OPT)             , parameter, private :: OPT_ESTIME_THRESHOLDS = '--estimate-thresholds'

OPT_ESTIME_THRESHOLDS_SHORT

[ Top ] [ m_qtlmap_cli ] [ Constants ]

NAME

   OPT_ESTIME_THRESHOLDS_SHORT

DESCRIPTION

   threshold estimation short option name

SOURCE

207    character(len=LEN_OPT)             , parameter, private :: OPT_ESTIME_THRESHOLDS_SHORT = '-s'

OPT_HAPLOTYPE

[ Top ] [ m_qtlmap_cli ] [ Constants ]

NAME

   OPT_HAPLOTYPE

DESCRIPTION

   haplotype option name

NOTES

   m_qtlmap_haplotype/haplotype to see the availables haplotypes versions

SOURCE

111    character(len=LEN_OPT)             , parameter, private :: OPT_HAPLOTYPE    ='--haplotype'

OPT_HDAM

[ Top ] [ m_qtlmap_cli ] [ Constants ]

NAME

   OPT_HDAM

DESCRIPTION

   haplotype dam option name

NOTES

   LD analysis

SOURCE

181    character(len=LEN_OPT)             , parameter, private :: OPT_HDAM         ='--hdam'

OPT_HELP

[ Top ] [ m_qtlmap_cli ] [ Constants ]

NAME

   OPT_HELP

DESCRIPTION

   help option name

SOURCE

301    character(len=LEN_OPT)             , parameter, private :: OPT_HELP         ='--help'

OPT_HELP_PANALYSE

[ Top ] [ m_qtlmap_cli ] [ Constants ]

NAME

   OPT_HELP_PANALYSE

DESCRIPTION

   help parameter file option name

SOURCE

285    character(len=LEN_OPT)             , parameter, private :: OPT_HELP_PANALYSE = "--help-panalyse"

OPT_HELP_PARAMSIM

[ Top ] [ m_qtlmap_cli ] [ Constants ]

NAME

   OPT_HELP_PARAMSIM

DESCRIPTION

   help simulation parameter file option name

SOURCE

293    character(len=LEN_OPT)             , parameter, private :: OPT_HELP_PARAMSIM = "--help-paramsim"

OPT_NOPOLY

[ Top ] [ m_qtlmap_cli ] [ Constants ]

NAME

   OPT_NOPOLY

DESCRIPTION

   suppprime l'estimation des effets polygeniques

SOURCE

317    character(len=LEN_OPT)             , parameter, private :: OPT_NOPOLY            ='--nopoly'

OPT_NSIM

[ Top ] [ m_qtlmap_cli ] [ Constants ]

NAME

   OPT_NSIM

DESCRIPTION

   number of simulation option name

SOURCE

147    character(len=LEN_OPT)             , parameter, private :: OPT_NSIM         ='--nsim'

OPT_OPTIM

[ Top ] [ m_qtlmap_cli ] [ Constants ]

NAME

   OPT_OPTIM

DESCRIPTION

   optimization option name

NOTES

   see m_qtlmap_optimization

SOURCE

131    character(len=LEN_OPT)             , parameter, private :: OPT_OPTIM        ='--optim'

OPT_PERMUT

[ Top ] [ m_qtlmap_cli ] [ Constants ]

NAME

   OPT_PERMUT

DESCRIPTION

   permutation simulation option name

SOURCE

163    character(len=LEN_OPT)             , parameter, private :: OPT_PERMUT       ='--permute'

OPT_PRINT_CLASSIC

[ Top ] [ m_qtlmap_cli ] [ Constants ]

NAME

   OPT_PRINT_CLASSIC

DESCRIPTION

   classic output result option name

NOTES

   used to print a classical output analysis in a simulation case or expressions phenotypics values analysis.

SOURCE

277    character(len=LEN_OPT)             , parameter, private :: OPT_PRINT_CLASSIC='--print-all'

OPT_QTL

[ Top ] [ m_qtlmap_cli ] [ Constants ]

NAME

   OPT_QTL

DESCRIPTION

   hypothesis option name

NOTES

   Some analysis have limitation with this value.

SOURCE

101    character(len=LEN_OPT)             , parameter, private :: OPT_QTL          ='--qtl'

OPT_QUIET

[ Top ] [ m_qtlmap_cli ] [ Constants ]

NAME

   OPT_QUIET

DESCRIPTION

   quiet output console option name

NOTES

   m_qtlmap_log

SOURCE

217    character(len=LEN_OPT)             , parameter, private :: OPT_QUIET        ='--quiet'

OPT_QUIET_SHORT

[ Top ] [ m_qtlmap_cli ] [ Constants ]

NAME

   OPT_QUIET_SHORT

DESCRIPTION

   quiet output console short option name

NOTES

   m_qtlmap_log

SOURCE

247    character(len=LEN_OPT)             , parameter, private :: OPT_QUIET_SHORT  ='-q'

OPT_SIBF

[ Top ] [ m_qtlmap_cli ] [ Constants ]

NAME

   OPT_SIBF

DESCRIPTION

   family option name

NOTES

SOURCE

121    character(len=LEN_OPT)             , parameter, private :: OPT_SIBF         ='--family'

OPT_SIM

[ Top ] [ m_qtlmap_cli ] [ Constants ]

NAME

   OPT_SIM

DESCRIPTION

   random simulation option name

SOURCE

139    character(len=LEN_OPT)             , parameter, private :: OPT_SIM          ='--simulation'

OPT_SNP

[ Top ] [ m_qtlmap_cli ] [ Constants ]

NAME

   OPT_SNP

DESCRIPTION

   snp option name

SOURCE

171    character(len=LEN_OPT)             , parameter, private :: OPT_SNP          ='--snp'

OPT_VERBOSE

[ Top ] [ m_qtlmap_cli ] [ Constants ]

NAME

   OPT_VERBOSE

DESCRIPTION

   verbose output console option name

NOTES

   m_qtlmap_log

SOURCE

227    character(len=LEN_OPT)             , parameter, private :: OPT_VERBOSE      ='--verbose'

OPT_VERBOSE_SHORT

[ Top ] [ m_qtlmap_cli ] [ Constants ]

NAME

   OPT_VERBOSE_SHORT

DESCRIPTION

   verbose output console short option name

NOTES

   m_qtlmap_log

SOURCE

257    character(len=LEN_OPT)             , parameter, private :: OPT_VERBOSE_SHORT='-v'

OPT_XML

[ Top ] [ m_qtlmap_cli ] [ Constants ]

NAME

   OPT_XML

DESCRIPTION

   xml output result file option name

SOURCE

309    character(len=LEN_OPT)             , parameter, private :: OPT_XML             ='--output-xml'

OPTIM_DEFAULT

[ Top ] [ m_qtlmap_cli ] [ Constants ]

NAME

   OPTIM_DEFAULT

DESCRIPTION

   default optimization method using by qtlmap ( LA optimized analysis )

SOURCE

78    integer                            ,parameter,private   :: OPTIM_DEFAULT   = 1 ! NAG

SIB_DEFAULT

[ Top ] [ m_qtlmap_cli ] [ Constants ]

NAME

   SIB_DEFAULT

DESCRIPTION

   default value of the family option (full sib family is the default).

SOURCE

69    integer                            ,parameter,private   :: SIB_DEFAULT     = 2

cli_get_analyse

[ Top ] [ m_qtlmap_cli ] [ Subroutines ]

NAME

    cli_get_analyse

DESCRIPTION

   Get the analyse type

NOTES

SOURCE

627       function cli_get_analyse() result(type)
628          integer                :: type
629          character(len=LEN_DEF)   :: value
630 
631          type = 0
632          call get_key_value(OPT_CALCUL,value)
633          type = to_integer(value)
634          if (type == 0) type = 1  ! Default first option analyse
635 
636       end function cli_get_analyse

cli_get_family

[ Top ] [ m_qtlmap_cli ] [ Subroutines ]

NAME

    cli_get_family

DESCRIPTION

    Get the type of family to analyse

NOTES

SOURCE

857       function cli_get_family() result(o_sib)
858         integer     :: o_sib
859         character(len=LEN_DEF)   :: value
860 
861         o_sib = SIB_DEFAULT ! default value
862         call get_key_value(OPT_SIBF,value)
863         if (trim(value)/='') then
864             o_sib = to_integer(value)
865             if (o_sib /= 1 .and. o_sib /= 2) then
866                print *,'bad value defined :'// trim(value) //'['//trim(OPT_SIBF)//']'
867                call cli_print_help
868                stop
869             end if
870         end if
871       end function cli_get_family

cli_get_haplotype

[ Top ] [ m_qtlmap_cli ] [ Subroutines ]

NAME

    cli_get_haplotype

DESCRIPTION

   Get the Haplotype version

NOTES

SOURCE

646       function cli_get_haplotype() result(type)
647         integer                :: type
648          character(len=LEN_DEF)   :: value
649 
650          type = 0
651          call get_key_value(OPT_HAPLOTYPE,value)
652          type = to_integer(value)
653          if (type /= huge(type)) then
654             if (type == 0) then
655                if (key_exist(OPT_SNP)) then
656                  type = VERSION_HAPLOTYPE_SNP
657                else
658                  type = VERSION_HAPLOTYPE_V3  ! Default first option haplotype
659                end if
660             end if
661             return
662          end if
663 
664          print *,trim(get_binary_name()),' can not find ['//trim(OPT_HAPLOTYPE)//'] argument.'
665          call cli_print_help
666          stop
667 
668       end function cli_get_haplotype

cli_get_nqtl

[ Top ] [ m_qtlmap_cli ] [ Subroutines ]

NAME

    cli_get_nqtl

DESCRIPTION

    Get the number of the qtl hypothesis to test

NOTES

SOURCE

833       function cli_get_nqtl() result(nqtl)
834         integer     :: nqtl
835         character(len=LEN_DEF)   :: value
836 
837         nqtl = NQTL_DEFAULT ! default value
838         call get_key_value(OPT_QTL,value)
839         if (trim(value)/='') then
840             nqtl = to_integer(value)
841             if (nqtl == huge(nqtl)) then
842                print *,'bad value defined :'// trim(value) //'['//trim(OPT_QTL)//']'
843                call cli_print_help
844                stop
845             end if
846         end if
847       end function cli_get_nqtl

cli_get_nsim

[ Top ] [ m_qtlmap_cli ] [ Subroutines ]

NAME

    cli_get_nsim

DESCRIPTION

    Get the number of the simulation

NOTES

SOURCE

810       function cli_get_nsim() result(nsim)
811         integer     :: nsim
812         character(len=LEN_DEF)   :: value
813         nsim = NSIM_DEFAULT ! default value
814         call get_key_value(OPT_NSIM,value)
815         if (trim(value)/='') then
816             nsim = to_integer(value)
817             if (nsim == huge(nsim)) then
818                print *,'bad value defined :'// trim(value) //'['//trim(OPT_NSIM)//']'
819                call cli_print_help
820                stop
821             end if
822         end if
823       end function cli_get_nsim

cli_get_optimization

[ Top ] [ m_qtlmap_cli ] [ Subroutines ]

NAME

    cli_get_optimization

DESCRIPTION

    Get the optimization number id for LA analysis with optimized method

NOTES

    see m_qtlmap_optimization

SOURCE

882       function cli_get_optimization() result(o_optim)
883         integer     :: o_optim
884         character(len=LEN_DEF)   :: value
885 
886         o_optim = OPTIM_DEFAULT ! default value
887         call get_key_value(OPT_OPTIM,value)
888         if (trim(value)/='') then
889             o_optim = to_integer(value)
890         end if
891       end function cli_get_optimization

cli_get_parameters_file

[ Top ] [ m_qtlmap_cli ] [ Subroutines ]

NAME

    cli_get_parameters_file

DESCRIPTION

    Get the analyse parameters file

NOTES

SOURCE

608       function cli_get_parameters_file() result(f)
609               character(len=LENGTH_MAX_FILE) :: f
610               if (get_nb_arg() <=0) then
611                  print *,trim(get_binary_name()),' can not find parameters file analyse (first argument).'
612                  call cli_print_help
613                  stop
614               end if
615 
616               call get_arg(1,f)
617       end function cli_get_parameters_file

cli_is_calcul_cd

[ Top ] [ m_qtlmap_cli ] [ Subroutines ]

NAME

    cli_is_calcul_cd

DESCRIPTION

    True if the user ask to compute a CD from a third generation with trait value

NOTES

SOURCE

758       function cli_is_calcul_cd() result(val)
759         logical :: val
760         val = key_exist(OPT_CENSORED_CALCUL)
761       end function cli_is_calcul_cd

cli_is_debug

[ Top ] [ m_qtlmap_cli ] [ Subroutines ]

NAME

    cli_is_debug

DESCRIPTION

    True if the user ask debug information

SOURCE

952       function cli_is_debug() result(val)
953           logical :: val
954           val = key_exist(OPT_DEBUG)
955           if (.not. val) val = key_exist(OPT_DEBUG_SHORT)
956       end function cli_is_debug

cli_is_estimate_thresholds

[ Top ] [ m_qtlmap_cli ] [ Subroutines ]

NAME

    cli_is_estimate_thresholds

DESCRIPTION

   True if the user want estimate rejection threholds of the current analysis

  OUTPUT
   nsim : the number of simulation

NOTES

SOURCE

694      function cli_is_estimate_thresholds(nsim) result(val)
695         logical :: val
696         integer, intent(out)   :: nsim
697         character(len=LEN_DEF)   :: value
698 
699         val = key_exist(OPT_ESTIME_THRESHOLDS)
700         if ( val ) then
701             call get_key_value(OPT_ESTIME_THRESHOLDS,value)
702         else
703           val = key_exist(OPT_ESTIME_THRESHOLDS_SHORT)
704           if ( val ) then
705             call get_key_value(OPT_ESTIME_THRESHOLDS_SHORT,value)
706           end if
707         end if
708 
709         nsim = 0
710         if ( .not. val ) return
711 
712         nsim = NSIM_DEFAULT ! default value
713         if (trim(value)/='') then
714             nsim = to_integer(value)
715             if (nsim == huge(nsim)) then
716                print *,'bad value defined :'// trim(value) //'['//trim(OPT_NSIM)//']'
717                call cli_print_help
718                stop
719             end if
720         end if
721 
722      end function cli_is_estimate_thresholds

cli_is_hdam

[ Top ] [ m_qtlmap_cli ] [ Subroutines ]

NAME

    cli_is_hdam

DESCRIPTION

    True if the user ask to take care about haplotype dam in the model LD and derivated LD analysis

NOTES

SOURCE

771       function cli_is_hdam() result(val)
772         logical :: val
773         val = key_exist(OPT_HDAM)
774       end function cli_is_hdam

cli_is_help

[ Top ] [ m_qtlmap_cli ] [ Subroutines ]

NAME

    cli_is_help

DESCRIPTION

    True if the user ask help message

NOTES

SOURCE

595       function cli_is_help() result(val)
596          logical :: val
597          val = key_exist(OPT_HELP)
598       end function cli_is_help

cli_is_help_panalyse

[ Top ] [ m_qtlmap_cli ] [ Subroutines ]

NAME

    cli_is_help_panalyse

DESCRIPTION

    True if the user ask help p_analyse information

SOURCE

965       function  cli_is_help_panalyse() result(val)
966           logical :: val
967           val = key_exist(OPT_HELP_PANALYSE)
968 
969       end function  cli_is_help_panalyse

cli_is_help_paramsim

[ Top ] [ m_qtlmap_cli ] [ Subroutines ]

NAME

    cli_is_help_paramsim

DESCRIPTION

    True if the user ask help paramsim information

SOURCE

978      function cli_is_help_paramsim() result(val)
979           logical :: val
980           val = key_exist(OPT_HELP_PARAMSIM)
981      end function  cli_is_help_paramsim

cli_is_nopoly

[ Top ] [ m_qtlmap_cli ] [ Subroutines ]

NAME

    cli_is_nopoly

DESCRIPTION

    True if the user ask to avoid the estimation of polygenic effect

NOTES

SOURCE

784       function cli_is_nopoly() result(val)
785         logical :: val
786         val = key_exist(OPT_NOPOLY)
787       end function cli_is_nopoly

cli_is_nsim

[ Top ] [ m_qtlmap_cli ] [ Subroutines ]

NAME

    cli_is_nsim

DESCRIPTION

    True if the user ask an iteration and so a simulation

NOTES

SOURCE

797       function cli_is_nsim() result(val)
798         logical :: val
799         val = key_exist(OPT_NSIM)
800       end function cli_is_nsim

cli_is_permute

[ Top ] [ m_qtlmap_cli ] [ Subroutines ]

NAME

    cli_is_permute

DESCRIPTION

   True if the user ask permutation for the current simulation

NOTES

SOURCE

745       function cli_is_permute() result(val)
746         logical :: val
747         val = key_exist(OPT_PERMUT)
748       end function cli_is_permute

cli_is_print_all

[ Top ] [ m_qtlmap_cli ] [ Subroutines ]

NAME

    cli_is_print_all

DESCRIPTION

    True if the user ask to print all information

SOURCE

940       function cli_is_print_all() result(val)
941           logical :: val
942           val = key_exist(OPT_PRINT_CLASSIC)
943       end function cli_is_print_all

cli_is_quiet

[ Top ] [ m_qtlmap_cli ] [ Subroutines ]

NAME

    cli_is_quiet

DESCRIPTION

    True if the user ask none information

SOURCE

912       function cli_is_quiet() result(val)
913           logical :: val
914           val = key_exist(OPT_QUIET)
915           if (.not. val) val = key_exist(OPT_QUIET_SHORT)
916       end function cli_is_quiet

cli_is_simulation

[ Top ] [ m_qtlmap_cli ] [ Subroutines ]

NAME

    cli_is_simulation

DESCRIPTION

   True if the user ask a simulation

NOTES

SOURCE

678       function cli_is_simulation() result(val)
679        logical :: val
680        val = key_exist(OPT_SIM)
681       end function cli_is_simulation

cli_is_transcriptomic_data

[ Top ] [ m_qtlmap_cli ] [ Subroutines ]

NAME

    cli_is_transcriptomic_data

DESCRIPTION

   True if the user ask a transcriptomic analysis/simulation

NOTES

SOURCE

732       function cli_is_transcriptomic_data() result(val)
733         logical :: val
734         val = key_exist(OPT_EQTL)
735       end function cli_is_transcriptomic_data

cli_is_verbose

[ Top ] [ m_qtlmap_cli ] [ Subroutines ]

NAME

    cli_is_verbose

DESCRIPTION

    True if the user ask verbose information

SOURCE

925       function cli_is_verbose() result(val)
926           logical :: val
927           val = key_exist(OPT_VERBOSE)
928           if (.not. val) then
929              val = key_exist(OPT_VERBOSE_SHORT)
930           end if
931       end function cli_is_verbose

cli_is_xmloutput

[ Top ] [ m_qtlmap_cli ] [ Subroutines ]

NAME

    cli_is_xmloutput

DESCRIPTION

    True if the user ask xml output format

SOURCE

900       function cli_is_xmloutput() result(val)
901           logical :: val
902           val = key_exist(OPT_XML)
903       end function cli_is_xmloutput

cli_print_help

[ Top ] [ m_qtlmap_cli ] [ Subroutines ]

NAME

    cli_print_help

DESCRIPTION

    Print command line interface help

NOTES

SOURCE

437         subroutine cli_print_help
438         integer        :: i,nlopt,iopt
439         character(len=200) , dimension(40)  :: info
440         external :: get_nb_opti_nlopt_qtlmap,info_nlopt_qtlmap
441 
442         print *,'Usage: ',trim(get_binary_name()),' [FILE_ANALYSE] [OPTIONS]...'
443         print *,'QTLmap is a linkage analysis software dedicated to the analysis of outbred population in an experimental design.'
444         print *,''
445 
446         !----------- ANALYSIS ----------
447         print *,'Analysis options'
448         print *,'----------------'
449         print *,trim(OPT_CALCUL)   ,'='
450         print *                    ,(' ',i=1,MARG_HELP),trim(str(ANALYSE_UNITRAIT)),&
451                                        ' : Analyse Trait by trait (precorrected data) - qtl={1,2} '
452         print *                    ,(' ',i=1,MARG_HELP),trim(str(ANALYSE_UNITRAIT_MODLIN)) &
453                              ,' : Analyse Trait by trait with fixed effects, covariates and qtl interaction with fixed effect',&
454                               ' - qtl={1} '
455         print *                    ,(' ',i=1,MARG_HELP),trim(str(ANALYSE_UNITRAIT_LINEAR_LA_HOMO)),&
456         ' : Linear homoscedastic LA with fixed effects and covariates (using the most probable genotype dam)  - qtl={1,..,n}'
457         print *                    ,(' ',i=1,MARG_HELP),trim(str(ANALYSE_UNITRAIT_LINEAR_LA_HETERO)),&
458         ' : Linear heteroscedastic LA with fixed effects and covariates (using the most probable genotype dam) - qtl={1,..,n}'
459         print *                    ,(' ',i=1,MARG_HELP),trim(str(ANALYSE_MULTITRAIT)), &
460                                        ' : Join traits analysis (precorrected data) - qtl={1} '
461         print *                    ,(' ',i=1,MARG_HELP),trim(str(ANALYSE_MULTITRAIT_DA)),' : Joint analysis of the traits',&
462         ' using a discriminant function (precorrected data) - qtl={1} - Only avalaible in NAG environment.'
463         print *                    ,(' ',i=1,MARG_HELP),trim(str(ANALYSE_UNITRAIT_MODLIN_COX)),' : survival analysis with fixed ',&
464                                    'effects and covariates (Cox model) - qtl={1}'
465         print *                    ,(' ',i=1,MARG_HELP),trim(str(ANALYSE_UNITRAIT_LD)),' : LD analysis with fixed effects',&
466                                  ' , covariates and qtl interaction with fixed effect - qtl={1} '
467         print *                    ,(' ',i=1,MARG_HELP),trim(str(ANALYSE_UNITRAIT_LDLA)),' : LDLA analysis with fixed effects',&
468                                  ' , covariates and qtl interaction with fixed effect - qtl={1} '
469         print *                    ,(' ',i=1,MARG_HELP),trim(str(ANALYSE_UNITRAIT_LDJH)),' : LDJH analysis(dev jm) ',&
470                                   'with fixed effects , covariates and qtl interaction with fixed effect - qtl={1} '
471         print *                    ,(' ',i=1,MARG_HELP),trim(str(ANALYSE_UNITRAIT_CONTINGENCE)) &
472                              ,' : Analyse Trait by trait with fixed effects and covariates  - qtl={1,..,n} '
473         print *                    ,(' ',i=1,MARG_HELP),trim(str(ANALYSE_MULTITRAIT_INCIDENCE)), &
474                                        ' : Join traits analysis with fixed effects, covariates - qtl={1,..,n} '
475         print *                    ,(' ',i=1,MARG_HELP),trim(str(ANALYSE_UNITRAIT_LINEAR_LD_HOMO)),&
476         ' : Linear homoscedastic LD with fixed effects and covariates (using the most probable genotype dam)  - qtl={1,..,n}'
477         print *                    ,(' ',i=1,MARG_HELP),trim(str(ANALYSE_UNITRAIT_LINEAR_LD_HETERO)),&
478         ' : Linear heteroscedastic LD with fixed effects and covariates (using the most probable genotype dam) - qtl={1,..,n}'
479         print *                    ,(' ',i=1,MARG_HELP),trim(str(ANALYSE_UNITRAIT_LINEAR_LDLA_HOMO)),&
480         ' : Linear homoscedastic LDLA with fixed effects and covariates (using the most probable genotype dam)  - qtl={1,..,n}'
481         print *                    ,(' ',i=1,MARG_HELP),trim(str(ANALYSE_UNITRAIT_LINEAR_LDLA_HETERO)),&
482         ' : Linear heteroscedastic LDLA with fixed effects and covariates (using the most probable genotype dam) - qtl={1,..,n}'
483 
484         print *,trim(OPT_QTL)      ,'='
485         print *                    ,(' ',i=1,MARG_HELP),'1 : single QTL detection: test 0 versus 1 QTL (default)'
486         print *                    ,(' ',i=1,MARG_HELP),'N : N-QTL detection: test 0 versus N QTL and 1 versus N QTL... '
487         print *,trim(OPT_HDAM)
488         print *                    ,(' ',i=1,MARG_HELP),'Add haplotype dam in the LD/LDLA model analysis.'
489         print *,trim(OPT_CENSORED_CALCUL)
490         print *                    ,(' ',i=1,MARG_HELP),'Calcul the cd of each kd from the 3th generation.'
491         print *,trim(OPT_EQTL)
492         print *                    ,(' ',i=1,MARG_HELP),'Perform an analysis with transcriptomic datas.'
493         print *                    ,(' ',i=1,MARG_HELP),'The Traits file is reading by line and the result',&
494         ' log is significantly different than a classic analysis'
495         print *,trim(OPT_SNP)
496         print *                    ,(' ',i=1,MARG_HELP),'Perform an analysis with SNP markers.'
497         print *,trim(OPT_ESTIME_THRESHOLDS),',',trim(OPT_ESTIME_THRESHOLDS_SHORT)
498         print *                    ,(' ',i=1,MARG_HELP),'Estimate the rejection thresholds.'
499         !----------- SIMUL ----------
500         print *,''
501         print *,'Simulation options'
502         print *,'------------------'
503         print *,trim(OPT_SIM)
504 !        print *                    ,(' ',i=1,MARG_HELP),'To perform a simulation for a threshold estimation or',&
505 !        ' looking for a design optimization.'
506         print *,trim(OPT_NSIM)     ,'='
507         print *              ,(' ',i=1,MARG_HELP),'Number of simulation ','[ default=',trim(str(NSIM_DEFAULT)),'].'
508 
509         print *,trim(OPT_PERMUT)
510         print *                    ,(' ',i=1,MARG_HELP),'To permut performances and associated effects between genotyped',&
511         ' animals within half or full-sib families..'
512 
513         !-----------OUTPUT ----------
514         print *,''
515         print *,'Output options'
516         print *,'------------------'
517         print *,trim(OPT_XML)
518         print *                    ,(' ',i=1,MARG_HELP),'XML format output file.'
519         print *,trim(OPT_QUIET),',',trim(OPT_QUIET_SHORT)
520 
521         print *                    ,(' ',i=1,MARG_HELP),'Display only warning and error messages.'
522         print *,trim(OPT_VERBOSE),',',trim(OPT_VERBOSE_SHORT)
523         print *                    ,(' ',i=1,MARG_HELP),'Display verbose message.'
524 
525         print *,trim(OPT_DEBUG) ,',',trim(OPT_DEBUG_SHORT)
526         print *                    ,(' ',i=1,MARG_HELP),'Display debug and warning message.'
527         print *,trim(OPT_PRINT_CLASSIC)
528         print *                    ,(' ',i=1,MARG_HELP),'Print all information in the result file (useful for eqtl analysis).'
529 
530         !----------- ADNVANCED OPTION ----------
531         print *,''
532         print *,'Advanced options'
533         print *,'------------------'
534         print *,trim(OPT_SIBF)      ,'='
535         print *                    ,(' ',i=1,MARG_HELP),'1 : Half Sib family'
536         print *                    ,(' ',i=1,MARG_HELP),'2 : Mixture of full and half sib family (default)'
537         print *,trim(OPT_OPTIM)      ,'='
538         print *                    ,(' ',i=1,MARG_HELP),'1 : * NAG * E04JYF '
539         print *                    ,(' ',i=1,MARG_HELP),'2 : * L-BFGS-B * Broyden–Fletcher–Goldfarb–Shanno update',&
540                                ' to approximate the Hessian matrix (L-BFGS stands for (limited memory BFGS))'
541 #ifdef HAVE_NLOPT
542         call get_nb_opti_nlopt_qtlmap(nlopt)
543         info=''
544         call info_nlopt_qtlmap(info)
545 
546         do iopt=1,nlopt
547            print *                    ,(' ',i=1,MARG_HELP),trim(str(OPTI_LAST+iopt))//' : * NLopt * ',trim(info(iopt))
548         end do
549 #endif
550         print *,''
551         !----------- DEVEL ----------
552         print *,'Devel options'
553         print *,'-------------'
554         print *,trim(OPT_HAPLOTYPE),'='
555         print *                    ,(' ',i=1,MARG_HELP),'0 : parents phases are given by the user',&
556         ' [reading order in the genotype file]'
557         print *                    ,(' ',i=1,MARG_HELP),'1 : old implementation'
558         print *                    ,(' ',i=1,MARG_HELP),'2 : PDEGM_V4,PDEGP_V4,PDED_V4'
559         print *                    ,(' ',i=1,MARG_HELP),'3 : PDEGM_V4,PDEGP_V4,PDED_V5'
560         print *                    ,(' ',i=1,MARG_HELP),'4 : PHASE FAST, PDED_V5 (--snp)'
561         print *                    ,(' ',i=1,MARG_HELP),'5 : PHASE SYM2SAT,PDED_V5'
562         !-----------  HELP ---------
563         print *,'Help'
564         print *,'----'
565         print *,trim(OPT_HELP_PANALYSE)
566         print *                    ,(' ',i=1,MARG_HELP),'Print help to build p_analyse file.'
567         print *,trim(OPT_HELP_PARAMSIM)
568         print *                    ,(' ',i=1,MARG_HELP),'Print help to build simulation parameter file.'
569         print *,trim(OPT_HELP)
570         print *                    ,(' ',i=1,MARG_HELP),'Display this message.'
571 
572         print *,''
573         print *,'The QTLMAP software is developed at INRA (french National Institute for Agronomical Research) to map QTL'
574         print *,'following linkage analyses approaches in various experimental populations. Specific models were implemented to'
575         print *,'take maximum advantage of large data sets now available for QTL detection and get fine locus descriptions'
576         print *,'(indications of pleiotropy, of linked loci…) to facilitate further explorations. In QTLMAP, '
577         print *,'the basis of the QTL detection technique is an interval mapping applied to half-sib families or a mixture '
578         print *,'of full- and half- sib families where the exact computation of phase probability is undertaken from a 2 or 3'
579         print *,'generation pedigree. The test statistics are computed either using exact calculation of likelihood ratios '
580         print *,'or using partial linear approximations of the likelihood or complete regression on marker genotypes. '
581         print *,''
582         print *,'   ***  support : send email to qtlmap-users@listes.inra.fr. *** '
583         print *,'                              *                                  '
584 
585       end subroutine cli_print_help

cli_print_qtlmap_version

[ Top ] [ m_qtlmap_cli ] [ Subroutines ]

NAME

    cli_print_qtlmap_version

DESCRIPTION

    Print the version of qtlmap and the date of the binary build.

NOTES

SOURCE

421        subroutine cli_print_qtlmap_version
422 #ifdef QTLMAP_VERSION
423 #ifdef DATE_BUILD
424             print *,'Release-Build:',QTLMAP_VERSION,'-',DATE_BUILD
425 #endif
426 #endif
427        end subroutine cli_print_qtlmap_version

get_arg

[ Top ] [ m_qtlmap_cli ] [ Subroutines ]

NAME

    get_arg

DESCRIPTION

    get the argument value of the ith argument

SOURCE

1023       subroutine get_arg(it,value)
1024        integer , intent(in)                    :: it
1025        character(len=*),intent(out)      :: value
1026 
1027 #ifdef AIX_SYS
1028         call GETARG(it,value)
1029 #else
1030         call GET_COMMAND_ARGUMENT(it,value)
1031 #endif
1032       end subroutine get_arg

get_binary_name

[ Top ] [ m_qtlmap_cli ] [ Subroutines ]

NAME

    get_binary_name

DESCRIPTION

    Get the name of the binary

SOURCE

1041       function get_binary_name() result(name)
1042         character(len=LEN_OPT) :: v
1043         character(len=LEN_DEF)   :: name
1044         integer                :: id
1045 
1046         call get_arg(0,v)
1047         name=trim(v)
1048         id=SCAN(name,'/')
1049         do while(id>0 .and. (id+1)<=LEN(name))
1050           name = trim(EXTRACT(name,id+1,LEN(name)))
1051           id=SCAN(name,'/')
1052         end do
1053         return
1054       end function get_binary_name

get_key_value

[ Top ] [ m_qtlmap_cli ] [ Subroutines ]

NAME

    get_key_value

DESCRIPTION

    Get value according to the key give in parameter

SOURCE

1063       subroutine get_key_value(keysearch,value)
1064          character(len=LEN_OPT) ,intent(in)   :: keysearch
1065          character(len=LEN_DEF) ,intent(out)    :: value
1066 
1067          integer                :: i,id
1068          character(len=LEN_OPT) :: v
1069          character(len=LEN_DEF)   :: option,key
1070 
1071          value=''
1072 
1073          do i=1,get_nb_arg()
1074             call get_arg(i,v)
1075             if (trim(v) == '') cycle
1076             option = v
1077             id=SCAN(option,'=')
1078             if (id<=0) cycle
1079             key = trim(EXTRACT(option,1,id-1))
1080 
1081             if (key == keysearch) then
1082                value = trim(EXTRACT(option,id+1,LEN(option)))
1083                return
1084             end if
1085          end do
1086 
1087       end subroutine get_key_value

get_nb_arg

[ Top ] [ m_qtlmap_cli ] [ Subroutines ]

NAME

    get_nb_arg

DESCRIPTION

    get the number of option give in the command line

SOURCE

 995       function get_nb_arg() result(nb)
 996          integer           :: nb
 997 
 998 #ifdef AIX_SYS
 999          character(len=LEN_OPT) :: v
1000          v=''
1001          nb = 0
1002          call GETARG(nb+1,v)
1003          v = trim(v)
1004          do while (v/='')
1005            nb = nb+1
1006            call getarg(nb+1,v)
1007            v = trim(v)
1008          end do
1009 #else
1010          nb = COMMAND_ARGUMENT_COUNT()
1011 #endif
1012          return
1013 
1014       end function get_nb_arg

key_exist

[ Top ] [ m_qtlmap_cli ] [ Subroutines ]

NAME

    key_exist

DESCRIPTION

    True if the key exist in the argument command line

SOURCE

1096       function key_exist(keysearch) result(vexist)
1097          character(len=LEN_OPT) ,intent(in)   :: keysearch
1098 
1099          logical                :: vexist
1100          integer                :: i,id
1101          character(len=LEN_OPT) :: v
1102          character(len=LEN_DEF)   :: option,key
1103 
1104          vexist=.false.
1105          do i=1,get_nb_arg()
1106             call get_arg(i,v)
1107             if (trim(v) == '') cycle
1108             if (trim(v) == keysearch) then
1109                vexist = .true.
1110                return
1111             end if
1112             option = v
1113             id=SCAN(option,'=')
1114             if (id<=0) cycle
1115             key = trim(EXTRACT(option,1,id-1))
1116             if (key == keysearch) then
1117                vexist = .true.
1118                return
1119             end if
1120          end do
1121       end function key_exist

to_integer

[ Top ] [ m_qtlmap_cli ] [ Subroutines ]

NAME

    to_integer

DESCRIPTION

     Get the integer conversion of value (string) if value is not a integer, get HUGE(integer)....

SOURCE

1130       function to_integer(value) result(res_int)
1131              character(len=*),intent(in)      :: value
1132              integer                              :: res_int
1133              integer                              :: ios
1134              res_int=0
1135              read (value,FMT_INT,IOSTAT=ios) res_int
1136              if (  ios /= 0 ) res_int = 0
1137 
1138       end function