200 likes | 211 Views
The LHAPDF interface - V2 – status report Mike Whalley – Durham Univ. To recap … LHAPDF originated from the 2001 Les Houches meeting as a potential replacement for PDFLIB, which was: - not maintained any more by its authors
E N D
The LHAPDF interface - V2 – status report Mike Whalley – Durham Univ. • To recap… • LHAPDF originated from the 2001 Les Houches meeting as a potential replacement for PDFLIB, which was: - not maintained any more by its authors - would become too unwieldy with the inclusion of the error sets • The Les Houches Accord #2 – to explicitly include access to the error sets. • Version 1 of LHAPDF was written by Walter Giele and has been available through the web site http://vircol.fnal.gov/index.html for some time. • V1 made available through GENSER in Nov 2003(?).
The LHAPDF V1 web site written by Walter Giele http://vircol.fnal.gov/index.html
The LHAPDF interface - V2 – status report • To recap some more… • In 2003, following a MC meeting in Durham, I agreed to take over responsibility for the long-term maintenance and development of LHAPDF (since my work already involves the ongoing upkeep of the HEPDATA databases and its PDF server this is somewhat natural move). • Several problems have been identified with V1. - many PDF sets missing - problems with evolution codes in some cases - unsatisfactory dual compilation - it is very slow in some situations • At the MC meeting at CERN in July 2003, Walter and I began developing Version 2 to solve the problems and increase the number of PDF sets available.
Philosophy of the LHAPDF V1 method • In PDFLIB the PDFs were stored as interpolation tables in x and Q^2. • - interpolation code and tables as provided by the PDF authors • In LHAPDF the PDFs are stored as much smaller arrays of parameters supplied by the PDF fitters, which define, as a function of x, the PDF starting values at Q=Q0. The program then carries out the evolution to any value of x and Q^2 requested. • LHAPDF needs an evolution code program which is not by design part of the LHAPDF code itself. - default is QCDNUM - also EVLCTQ for CTEQ • No need to recompile as new sets become available – just a new parameter file – (in theory)
Example of a parameter file MRST2001 (first half)
Using LHAPDF in FORTRAN code This will be exactly the same in all versions • Using LHAPDF is simple and involves calling three basic routines: call initPDFset(name) – called once at the beginning of the code with the name of the external parameter file. call initPDF(member) – called to initialise a specific member of the PDF set. call evolvePDF(x,Q,f) – returns the PDF momentum distributions in the array f for any x and Q Remember that a PDF set can have many members, eg error sets f(-6:6)is a double precision array where the partons are defined in the standard way: 0 = gluon; 1(-1) = up(bar); 2(-2) = down(bar) 3(-3) = strange(bar); 4(-4) =charm(bar) 5(-5) = bottom(bar); 6(-6) = top(bar.
Call alphasPDF(Q) Returns the value of alpha_s at the scale Q call numberPDF(Nmem) The integer Nmem will contain the number of PDF members, excluding the best fit member (0) call getDesc() Prints out the PDF description given at the beginning of the PDF file + others (see the user guide) Using LHAPDF in FORTRAN code Some other routines
Example of LHAPDF in a FORTRAN programme program example1 implicit real*8 (a-h,o-z) character name*50 real*8 f(-6:6) name=‘../PDFsets/MRST2001E.LHpdf’ call InitPDFset(name) call numberPDF(n) do i=0,n-1 call InitPDF(i) do x=0.01d0,0.095d0,0.01d0 Q=10d0 call evolvePDF(x,Q,f) g1 = f(0) write(*,*) x,Q,g1 enddo enddo end The name of the PDF set Initialize the PDF set Find the number of members in the set Initialize the member Get the value of PDF momentum distribution at x and Q
Problems with LHAPDF – Version 1 • Using an evolution code different from that used in the original fits by the authors of the PDFs leads to slight difference in the output PDFs from those given by the authors original interpolation code. MRST with QCDNUM (the default for LHAPDF) gives 0.2-0.5% differences – small but significant – (original V1 code used incorrect alpha_s evolution fo MRST – this has been fixed in V2 and improves the situation but only to the above levels - note that we have modified the QCDNUM slightly to do this! ) • Calling InitPDF (to change to a different member of a set) is very slow. up to ~2 seconds (pentium 4 – 1 Ghz – g77) for each call. • Not all PDFs are included. This is relatively easy to fix for the latest PDFs but….. • Difficulty in getting the parameter values for the older PDF sets. • Separate compilation for evolution codes eg EVLCTQ and QCDNUM has the potential for confusion
Comparison of PDFs obtained with MRST2001 from LHAPDF and from MRST2001 code directly (LHAPDF-MRST2001)/MRST2001 in % 10 Gev^2 1000 Gev^2 1000000 Gev^2 +2% -2%
Comparison of PDFs obtained with MRST2002 from LHAPDF and from MRST2002 code directly (LHAPDF-MRST2002)/MRST2002 in % +2% -2%
Comparison of PDFs obtained with CTEQ6 from LHAPDF and from CTEQ6 code directly (LHAPDF-CTEQ6)/CTEQ6 in % 1000 GeV^2 1000000 GeV^2 10 GeV^2 +2% 0 up down -2% upbar downbar strange charm bottom gluon
LHAPDF Version 2 – The Solution • The solution implemented in V2 to solve all the problems of V1 is to allow access to the original interpolation files and interpolation codes of the authors of the PDFs, as well as the parameter files (as in V1). • Advantages: - no problems with evolution codes - calling InitPDF is very fast - older PDF codes can be easily incorporated • Disadvantages: - the table files are much larger than the parameter files • What does not change: - the calling routines (InitPDFset, InitPDF, EvolvePDF) - having external files (now two types .LHpdf and .Lhgrid) (seamless changing between them) • What does change: - additional directory structure in the code. - only one compilation for all.
Comparison of cpu times for parameter and table methods in LHAPDF 1 GHz Linux machine using g77 File sizes in LHAPDFv2
LHAPDF Version 2 – Download the Code/Files LHAPDFfullv2.tar.gz Everything – 11.7 Mbytes LHAPDFcodev2.tar.gz Code (fortran) only – 0.3 Mbytes LHAPDFpartv2.tar.gz Code+.LHpdf files – 0.8 Mbytes Select PDFs from archive – - separate web page PDFsets.tar.gz– 11.4 Mbyte Examples.tar Example progammes – 0.2Mbyte
Downloading the code – V2 \PDFsets .LHpdf Alekhin_1000 Alekhin_100 Botje_1000 Botje_100 cteq61 Cteq6 cteq6m cteq6l cteq6ll Fermi2002_1000 Fermi2002_100 MRST2001 MRST2002nlo MRST98 .LHgrid a02_lo_v a02_nlo_v a02_nnlo_v cteq5m1 cteq5m Cteq61 cteq6mE MRST2001E MRST2001lo MRST2001nlo MRST2001nnlo MRST2002nlo LHAfullv2.0.tar unpacks to:- LHAPDFv2 CUSTOM EVLCTEQ QCDNUM Examples LHAPDFv2 libLHAPDF.a Makefile PDFsets \CUSTOM Wrap02.f Wrapcteq5.f Wrapcteq6.f Wrapevolve.f Wrapmrst.f \EVLCTEQ EVLCTEQ.f wrapEVLCTEQ.f \QCDNUM qcdnum.f Sqcdnum.f wrapQCDNUM.f \LHAPDFv2 alphas.f description.f evolution.f inputPDF.f LHpdflib.f parameter.f parmsetup.f \Examples Example1.f Example2.f Example3.f Makefile
LHAPDF V2 - Summary • The following new features and improvements have been incorporated • into Version 2 of LHAPDF • PDFs obtained using interpolation tables/codes of the PDF authors as well as the parameter files of V1 - this fixes both the evolution code problem and the speed of calling InitPDF • All code is compiled at one time. • Many new PDF sets added • Correct alpha_s evolution in MRST (modified QCDNUM) • New V2 web site at http://durpdg.dur.ac.uk/lhapdf/