m_qtlmap_cli
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