Commit of the Meissner-state-simulation code using an asymmetric energy spectrum
This commit is contained in:
parent
a9d6370ba7
commit
2fe5c035e5
340
src/external/libFitPofB/test/simulation/COPYING
vendored
Normal file
340
src/external/libFitPofB/test/simulation/COPYING
vendored
Normal file
@ -0,0 +1,340 @@
|
||||
GNU GENERAL PUBLIC LICENSE
|
||||
Version 2, June 1991
|
||||
|
||||
Copyright (C) 1989, 1991 Free Software Foundation, Inc.
|
||||
51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA
|
||||
Everyone is permitted to copy and distribute verbatim copies
|
||||
of this license document, but changing it is not allowed.
|
||||
|
||||
Preamble
|
||||
|
||||
The licenses for most software are designed to take away your
|
||||
freedom to share and change it. By contrast, the GNU General Public
|
||||
License is intended to guarantee your freedom to share and change free
|
||||
software--to make sure the software is free for all its users. This
|
||||
General Public License applies to most of the Free Software
|
||||
Foundation's software and to any other program whose authors commit to
|
||||
using it. (Some other Free Software Foundation software is covered by
|
||||
the GNU Library General Public License instead.) You can apply it to
|
||||
your programs, too.
|
||||
|
||||
When we speak of free software, we are referring to freedom, not
|
||||
price. Our General Public Licenses are designed to make sure that you
|
||||
have the freedom to distribute copies of free software (and charge for
|
||||
this service if you wish), that you receive source code or can get it
|
||||
if you want it, that you can change the software or use pieces of it
|
||||
in new free programs; and that you know you can do these things.
|
||||
|
||||
To protect your rights, we need to make restrictions that forbid
|
||||
anyone to deny you these rights or to ask you to surrender the rights.
|
||||
These restrictions translate to certain responsibilities for you if you
|
||||
distribute copies of the software, or if you modify it.
|
||||
|
||||
For example, if you distribute copies of such a program, whether
|
||||
gratis or for a fee, you must give the recipients all the rights that
|
||||
you have. You must make sure that they, too, receive or can get the
|
||||
source code. And you must show them these terms so they know their
|
||||
rights.
|
||||
|
||||
We protect your rights with two steps: (1) copyright the software, and
|
||||
(2) offer you this license which gives you legal permission to copy,
|
||||
distribute and/or modify the software.
|
||||
|
||||
Also, for each author's protection and ours, we want to make certain
|
||||
that everyone understands that there is no warranty for this free
|
||||
software. If the software is modified by someone else and passed on, we
|
||||
want its recipients to know that what they have is not the original, so
|
||||
that any problems introduced by others will not reflect on the original
|
||||
authors' reputations.
|
||||
|
||||
Finally, any free program is threatened constantly by software
|
||||
patents. We wish to avoid the danger that redistributors of a free
|
||||
program will individually obtain patent licenses, in effect making the
|
||||
program proprietary. To prevent this, we have made it clear that any
|
||||
patent must be licensed for everyone's free use or not licensed at all.
|
||||
|
||||
The precise terms and conditions for copying, distribution and
|
||||
modification follow.
|
||||
|
||||
GNU GENERAL PUBLIC LICENSE
|
||||
TERMS AND CONDITIONS FOR COPYING, DISTRIBUTION AND MODIFICATION
|
||||
|
||||
0. This License applies to any program or other work which contains
|
||||
a notice placed by the copyright holder saying it may be distributed
|
||||
under the terms of this General Public License. The "Program", below,
|
||||
refers to any such program or work, and a "work based on the Program"
|
||||
means either the Program or any derivative work under copyright law:
|
||||
that is to say, a work containing the Program or a portion of it,
|
||||
either verbatim or with modifications and/or translated into another
|
||||
language. (Hereinafter, translation is included without limitation in
|
||||
the term "modification".) Each licensee is addressed as "you".
|
||||
|
||||
Activities other than copying, distribution and modification are not
|
||||
covered by this License; they are outside its scope. The act of
|
||||
running the Program is not restricted, and the output from the Program
|
||||
is covered only if its contents constitute a work based on the
|
||||
Program (independent of having been made by running the Program).
|
||||
Whether that is true depends on what the Program does.
|
||||
|
||||
1. You may copy and distribute verbatim copies of the Program's
|
||||
source code as you receive it, in any medium, provided that you
|
||||
conspicuously and appropriately publish on each copy an appropriate
|
||||
copyright notice and disclaimer of warranty; keep intact all the
|
||||
notices that refer to this License and to the absence of any warranty;
|
||||
and give any other recipients of the Program a copy of this License
|
||||
along with the Program.
|
||||
|
||||
You may charge a fee for the physical act of transferring a copy, and
|
||||
you may at your option offer warranty protection in exchange for a fee.
|
||||
|
||||
2. You may modify your copy or copies of the Program or any portion
|
||||
of it, thus forming a work based on the Program, and copy and
|
||||
distribute such modifications or work under the terms of Section 1
|
||||
above, provided that you also meet all of these conditions:
|
||||
|
||||
a) You must cause the modified files to carry prominent notices
|
||||
stating that you changed the files and the date of any change.
|
||||
|
||||
b) You must cause any work that you distribute or publish, that in
|
||||
whole or in part contains or is derived from the Program or any
|
||||
part thereof, to be licensed as a whole at no charge to all third
|
||||
parties under the terms of this License.
|
||||
|
||||
c) If the modified program normally reads commands interactively
|
||||
when run, you must cause it, when started running for such
|
||||
interactive use in the most ordinary way, to print or display an
|
||||
announcement including an appropriate copyright notice and a
|
||||
notice that there is no warranty (or else, saying that you provide
|
||||
a warranty) and that users may redistribute the program under
|
||||
these conditions, and telling the user how to view a copy of this
|
||||
License. (Exception: if the Program itself is interactive but
|
||||
does not normally print such an announcement, your work based on
|
||||
the Program is not required to print an announcement.)
|
||||
|
||||
These requirements apply to the modified work as a whole. If
|
||||
identifiable sections of that work are not derived from the Program,
|
||||
and can be reasonably considered independent and separate works in
|
||||
themselves, then this License, and its terms, do not apply to those
|
||||
sections when you distribute them as separate works. But when you
|
||||
distribute the same sections as part of a whole which is a work based
|
||||
on the Program, the distribution of the whole must be on the terms of
|
||||
this License, whose permissions for other licensees extend to the
|
||||
entire whole, and thus to each and every part regardless of who wrote it.
|
||||
|
||||
Thus, it is not the intent of this section to claim rights or contest
|
||||
your rights to work written entirely by you; rather, the intent is to
|
||||
exercise the right to control the distribution of derivative or
|
||||
collective works based on the Program.
|
||||
|
||||
In addition, mere aggregation of another work not based on the Program
|
||||
with the Program (or with a work based on the Program) on a volume of
|
||||
a storage or distribution medium does not bring the other work under
|
||||
the scope of this License.
|
||||
|
||||
3. You may copy and distribute the Program (or a work based on it,
|
||||
under Section 2) in object code or executable form under the terms of
|
||||
Sections 1 and 2 above provided that you also do one of the following:
|
||||
|
||||
a) Accompany it with the complete corresponding machine-readable
|
||||
source code, which must be distributed under the terms of Sections
|
||||
1 and 2 above on a medium customarily used for software interchange; or,
|
||||
|
||||
b) Accompany it with a written offer, valid for at least three
|
||||
years, to give any third party, for a charge no more than your
|
||||
cost of physically performing source distribution, a complete
|
||||
machine-readable copy of the corresponding source code, to be
|
||||
distributed under the terms of Sections 1 and 2 above on a medium
|
||||
customarily used for software interchange; or,
|
||||
|
||||
c) Accompany it with the information you received as to the offer
|
||||
to distribute corresponding source code. (This alternative is
|
||||
allowed only for noncommercial distribution and only if you
|
||||
received the program in object code or executable form with such
|
||||
an offer, in accord with Subsection b above.)
|
||||
|
||||
The source code for a work means the preferred form of the work for
|
||||
making modifications to it. For an executable work, complete source
|
||||
code means all the source code for all modules it contains, plus any
|
||||
associated interface definition files, plus the scripts used to
|
||||
control compilation and installation of the executable. However, as a
|
||||
special exception, the source code distributed need not include
|
||||
anything that is normally distributed (in either source or binary
|
||||
form) with the major components (compiler, kernel, and so on) of the
|
||||
operating system on which the executable runs, unless that component
|
||||
itself accompanies the executable.
|
||||
|
||||
If distribution of executable or object code is made by offering
|
||||
access to copy from a designated place, then offering equivalent
|
||||
access to copy the source code from the same place counts as
|
||||
distribution of the source code, even though third parties are not
|
||||
compelled to copy the source along with the object code.
|
||||
|
||||
4. You may not copy, modify, sublicense, or distribute the Program
|
||||
except as expressly provided under this License. Any attempt
|
||||
otherwise to copy, modify, sublicense or distribute the Program is
|
||||
void, and will automatically terminate your rights under this License.
|
||||
However, parties who have received copies, or rights, from you under
|
||||
this License will not have their licenses terminated so long as such
|
||||
parties remain in full compliance.
|
||||
|
||||
5. You are not required to accept this License, since you have not
|
||||
signed it. However, nothing else grants you permission to modify or
|
||||
distribute the Program or its derivative works. These actions are
|
||||
prohibited by law if you do not accept this License. Therefore, by
|
||||
modifying or distributing the Program (or any work based on the
|
||||
Program), you indicate your acceptance of this License to do so, and
|
||||
all its terms and conditions for copying, distributing or modifying
|
||||
the Program or works based on it.
|
||||
|
||||
6. Each time you redistribute the Program (or any work based on the
|
||||
Program), the recipient automatically receives a license from the
|
||||
original licensor to copy, distribute or modify the Program subject to
|
||||
these terms and conditions. You may not impose any further
|
||||
restrictions on the recipients' exercise of the rights granted herein.
|
||||
You are not responsible for enforcing compliance by third parties to
|
||||
this License.
|
||||
|
||||
7. If, as a consequence of a court judgment or allegation of patent
|
||||
infringement or for any other reason (not limited to patent issues),
|
||||
conditions are imposed on you (whether by court order, agreement or
|
||||
otherwise) that contradict the conditions of this License, they do not
|
||||
excuse you from the conditions of this License. If you cannot
|
||||
distribute so as to satisfy simultaneously your obligations under this
|
||||
License and any other pertinent obligations, then as a consequence you
|
||||
may not distribute the Program at all. For example, if a patent
|
||||
license would not permit royalty-free redistribution of the Program by
|
||||
all those who receive copies directly or indirectly through you, then
|
||||
the only way you could satisfy both it and this License would be to
|
||||
refrain entirely from distribution of the Program.
|
||||
|
||||
If any portion of this section is held invalid or unenforceable under
|
||||
any particular circumstance, the balance of the section is intended to
|
||||
apply and the section as a whole is intended to apply in other
|
||||
circumstances.
|
||||
|
||||
It is not the purpose of this section to induce you to infringe any
|
||||
patents or other property right claims or to contest validity of any
|
||||
such claims; this section has the sole purpose of protecting the
|
||||
integrity of the free software distribution system, which is
|
||||
implemented by public license practices. Many people have made
|
||||
generous contributions to the wide range of software distributed
|
||||
through that system in reliance on consistent application of that
|
||||
system; it is up to the author/donor to decide if he or she is willing
|
||||
to distribute software through any other system and a licensee cannot
|
||||
impose that choice.
|
||||
|
||||
This section is intended to make thoroughly clear what is believed to
|
||||
be a consequence of the rest of this License.
|
||||
|
||||
8. If the distribution and/or use of the Program is restricted in
|
||||
certain countries either by patents or by copyrighted interfaces, the
|
||||
original copyright holder who places the Program under this License
|
||||
may add an explicit geographical distribution limitation excluding
|
||||
those countries, so that distribution is permitted only in or among
|
||||
countries not thus excluded. In such case, this License incorporates
|
||||
the limitation as if written in the body of this License.
|
||||
|
||||
9. The Free Software Foundation may publish revised and/or new versions
|
||||
of the General Public License from time to time. Such new versions will
|
||||
be similar in spirit to the present version, but may differ in detail to
|
||||
address new problems or concerns.
|
||||
|
||||
Each version is given a distinguishing version number. If the Program
|
||||
specifies a version number of this License which applies to it and "any
|
||||
later version", you have the option of following the terms and conditions
|
||||
either of that version or of any later version published by the Free
|
||||
Software Foundation. If the Program does not specify a version number of
|
||||
this License, you may choose any version ever published by the Free Software
|
||||
Foundation.
|
||||
|
||||
10. If you wish to incorporate parts of the Program into other free
|
||||
programs whose distribution conditions are different, write to the author
|
||||
to ask for permission. For software which is copyrighted by the Free
|
||||
Software Foundation, write to the Free Software Foundation; we sometimes
|
||||
make exceptions for this. Our decision will be guided by the two goals
|
||||
of preserving the free status of all derivatives of our free software and
|
||||
of promoting the sharing and reuse of software generally.
|
||||
|
||||
NO WARRANTY
|
||||
|
||||
11. BECAUSE THE PROGRAM IS LICENSED FREE OF CHARGE, THERE IS NO WARRANTY
|
||||
FOR THE PROGRAM, TO THE EXTENT PERMITTED BY APPLICABLE LAW. EXCEPT WHEN
|
||||
OTHERWISE STATED IN WRITING THE COPYRIGHT HOLDERS AND/OR OTHER PARTIES
|
||||
PROVIDE THE PROGRAM "AS IS" WITHOUT WARRANTY OF ANY KIND, EITHER EXPRESSED
|
||||
OR IMPLIED, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF
|
||||
MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE. THE ENTIRE RISK AS
|
||||
TO THE QUALITY AND PERFORMANCE OF THE PROGRAM IS WITH YOU. SHOULD THE
|
||||
PROGRAM PROVE DEFECTIVE, YOU ASSUME THE COST OF ALL NECESSARY SERVICING,
|
||||
REPAIR OR CORRECTION.
|
||||
|
||||
12. IN NO EVENT UNLESS REQUIRED BY APPLICABLE LAW OR AGREED TO IN WRITING
|
||||
WILL ANY COPYRIGHT HOLDER, OR ANY OTHER PARTY WHO MAY MODIFY AND/OR
|
||||
REDISTRIBUTE THE PROGRAM AS PERMITTED ABOVE, BE LIABLE TO YOU FOR DAMAGES,
|
||||
INCLUDING ANY GENERAL, SPECIAL, INCIDENTAL OR CONSEQUENTIAL DAMAGES ARISING
|
||||
OUT OF THE USE OR INABILITY TO USE THE PROGRAM (INCLUDING BUT NOT LIMITED
|
||||
TO LOSS OF DATA OR DATA BEING RENDERED INACCURATE OR LOSSES SUSTAINED BY
|
||||
YOU OR THIRD PARTIES OR A FAILURE OF THE PROGRAM TO OPERATE WITH ANY OTHER
|
||||
PROGRAMS), EVEN IF SUCH HOLDER OR OTHER PARTY HAS BEEN ADVISED OF THE
|
||||
POSSIBILITY OF SUCH DAMAGES.
|
||||
|
||||
END OF TERMS AND CONDITIONS
|
||||
|
||||
How to Apply These Terms to Your New Programs
|
||||
|
||||
If you develop a new program, and you want it to be of the greatest
|
||||
possible use to the public, the best way to achieve this is to make it
|
||||
free software which everyone can redistribute and change under these terms.
|
||||
|
||||
To do so, attach the following notices to the program. It is safest
|
||||
to attach them to the start of each source file to most effectively
|
||||
convey the exclusion of warranty; and each file should have at least
|
||||
the "copyright" line and a pointer to where the full notice is found.
|
||||
|
||||
<one line to give the program's name and a brief idea of what it does.>
|
||||
Copyright (C) <year> <name of author>
|
||||
|
||||
This program is free software; you can redistribute it and/or modify
|
||||
it under the terms of the GNU General Public License as published by
|
||||
the Free Software Foundation; either version 2 of the License, or
|
||||
(at your option) any later version.
|
||||
|
||||
This program is distributed in the hope that it will be useful,
|
||||
but WITHOUT ANY WARRANTY; without even the implied warranty of
|
||||
MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
|
||||
GNU General Public License for more details.
|
||||
|
||||
You should have received a copy of the GNU General Public License
|
||||
along with this program; if not, write to the Free Software
|
||||
Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA
|
||||
|
||||
|
||||
Also add information on how to contact you by electronic and paper mail.
|
||||
|
||||
If the program is interactive, make it output a short notice like this
|
||||
when it starts in an interactive mode:
|
||||
|
||||
Gnomovision version 69, Copyright (C) year name of author
|
||||
Gnomovision comes with ABSOLUTELY NO WARRANTY; for details type `show w'.
|
||||
This is free software, and you are welcome to redistribute it
|
||||
under certain conditions; type `show c' for details.
|
||||
|
||||
The hypothetical commands `show w' and `show c' should show the appropriate
|
||||
parts of the General Public License. Of course, the commands you use may
|
||||
be called something other than `show w' and `show c'; they could even be
|
||||
mouse-clicks or menu items--whatever suits your program.
|
||||
|
||||
You should also get your employer (if you work as a programmer) or your
|
||||
school, if any, to sign a "copyright disclaimer" for the program, if
|
||||
necessary. Here is a sample; alter the names:
|
||||
|
||||
Yoyodyne, Inc., hereby disclaims all copyright interest in the program
|
||||
`Gnomovision' (which makes passes at compilers) written by James Hacker.
|
||||
|
||||
<signature of Ty Coon>, 1 April 1989
|
||||
Ty Coon, President of Vice
|
||||
|
||||
This General Public License does not permit incorporating your program into
|
||||
proprietary programs. If your program is a subroutine library, you may
|
||||
consider it more useful to permit linking proprietary applications with the
|
||||
library. If this is what you want to do, use the GNU Library General
|
||||
Public License instead of this License.
|
49
src/external/libFitPofB/test/simulation/Makefile.simDataFullSpec
vendored
Normal file
49
src/external/libFitPofB/test/simulation/Makefile.simDataFullSpec
vendored
Normal file
@ -0,0 +1,49 @@
|
||||
#---------------------------------------------------
|
||||
# get compilation and library flags from root-config
|
||||
|
||||
ROOTCFLAGS = $(shell $(ROOTSYS)/bin/root-config --cflags)
|
||||
ROOTLIBS = $(shell $(ROOTSYS)/bin/root-config --libs)
|
||||
|
||||
#---------------------------------------------------
|
||||
|
||||
CXX = g++
|
||||
CXXFLAGS = -g -O3 -Wall
|
||||
LOCALINCLUDE =
|
||||
ROOTINCLUDE = $(ROOTSYS)/include
|
||||
INCLUDES = -I$(ROOTINCLUDE)
|
||||
LD = g++
|
||||
LDFLAGS = -O
|
||||
|
||||
# the output from the root-config script:
|
||||
CXXFLAGS += $(ROOTCFLAGS)
|
||||
LDFLAGS +=
|
||||
|
||||
# the ROOT, BMW, and MUSR libraries
|
||||
LIBS = $(ROOTLIBS) -lXMLParser -lMathMore -lBMWtools -lFitPofB -lfftw3 -lfftw3f -fopenmp -lm -lPMusr
|
||||
|
||||
EXEC = simDataFullSpec
|
||||
|
||||
# some definitions: headers, sources, objects,...
|
||||
OBJS =
|
||||
OBJS += $(EXEC).o
|
||||
|
||||
# make the executable:
|
||||
#
|
||||
all: $(EXEC)
|
||||
|
||||
$(EXEC): $(OBJS)
|
||||
@echo "---> Building $(EXEC) ..."
|
||||
$(LD) $(LDFLAGS) $(OBJS) -o $(EXEC) $(LIBS)
|
||||
@echo "done"
|
||||
|
||||
# clean up: remove all object file (and core files)
|
||||
# semicolon needed to tell make there is no source
|
||||
# for this target!
|
||||
#
|
||||
clean:; @rm -f $(OBJS)
|
||||
@echo "---> removing $(OBJS)"
|
||||
|
||||
#
|
||||
$(OBJS): %.o: %.cpp
|
||||
$(CXX) $(INCLUDES) $(CXXFLAGS) -c $<
|
||||
|
BIN
src/external/libFitPofB/test/simulation/lem08_1351_ImpSpectrum_15kV.root
vendored
Normal file
BIN
src/external/libFitPofB/test/simulation/lem08_1351_ImpSpectrum_15kV.root
vendored
Normal file
Binary file not shown.
BIN
src/external/libFitPofB/test/simulation/lem08_1351_convTofMuon_15kV.root
vendored
Normal file
BIN
src/external/libFitPofB/test/simulation/lem08_1351_convTofMuon_15kV.root
vendored
Normal file
Binary file not shown.
500
src/external/libFitPofB/test/simulation/simDataFullSpec.cpp
vendored
Normal file
500
src/external/libFitPofB/test/simulation/simDataFullSpec.cpp
vendored
Normal file
@ -0,0 +1,500 @@
|
||||
/***************************************************************************
|
||||
|
||||
simDataFullSpec.cpp
|
||||
|
||||
Author: Bastian M. Wojek
|
||||
|
||||
$Id$
|
||||
|
||||
***************************************************************************/
|
||||
|
||||
/***************************************************************************
|
||||
* Copyright (C) 2011 by Bastian M. Wojek *
|
||||
* *
|
||||
* *
|
||||
* This program is free software; you can redistribute it and/or modify *
|
||||
* it under the terms of the GNU General Public License as published by *
|
||||
* the Free Software Foundation; either version 2 of the License, or *
|
||||
* (at your option) any later version. *
|
||||
* *
|
||||
* This program is distributed in the hope that it will be useful, *
|
||||
* but WITHOUT ANY WARRANTY; without even the implied warranty of *
|
||||
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the *
|
||||
* GNU General Public License for more details. *
|
||||
* *
|
||||
* You should have received a copy of the GNU General Public License *
|
||||
* along with this program; if not, write to the *
|
||||
* Free Software Foundation, Inc., *
|
||||
* 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA. *
|
||||
***************************************************************************/
|
||||
|
||||
#include "TFile.h"
|
||||
#include "TH1.h"
|
||||
#include "TMath.h"
|
||||
#include "TFolder.h"
|
||||
|
||||
#include "TBofZCalc.h"
|
||||
#include "TPofTCalc.h"
|
||||
#include "TLemRunHeader.h"
|
||||
|
||||
#include <iostream>
|
||||
#include <fstream>
|
||||
#include <vector>
|
||||
#include <cmath>
|
||||
#include <map>
|
||||
#include <string>
|
||||
#include <sstream>
|
||||
#include <iomanip>
|
||||
|
||||
using namespace std;
|
||||
|
||||
#include <boost/lexical_cast.hpp>
|
||||
|
||||
int main(int argc, char *argv[]) {
|
||||
// check the number of arguments: run number, energy (keV), field (G), lambda (nm), dead layer (nm), broadening (G), asymmetry[, sigmaLambda (lambda)]
|
||||
if (argc < 8) {
|
||||
cerr << "Please give all necessary parameters: run number, energy (keV), field (G), lambda (nm), dead layer (nm), broadening (G), asymmetry[, sigmaLambda (lambda)]" << endl;
|
||||
return 0;
|
||||
}
|
||||
|
||||
// fill the specified paramters into the corresponding variables
|
||||
unsigned int runNumber;
|
||||
double impEnergy;
|
||||
double field;
|
||||
double lambda;
|
||||
double deadlayer;
|
||||
double broadening;
|
||||
double asymmetry;
|
||||
double sigmaLambda(0.0);
|
||||
try {
|
||||
runNumber = boost::lexical_cast<unsigned int>(argv[1]);
|
||||
impEnergy = boost::lexical_cast<double>(argv[2]);
|
||||
field = boost::lexical_cast<double>(argv[3]);
|
||||
lambda = boost::lexical_cast<double>(argv[4]);
|
||||
deadlayer = boost::lexical_cast<double>(argv[5]);
|
||||
broadening = boost::lexical_cast<double>(argv[6]);
|
||||
asymmetry = boost::lexical_cast<double>(argv[7]);
|
||||
if (argc == 9) {
|
||||
sigmaLambda = boost::lexical_cast<double>(argv[8])*lambda;
|
||||
}
|
||||
}
|
||||
catch(boost::bad_lexical_cast &) {
|
||||
cerr << endl;
|
||||
cerr << "Please specify parameters with a meaning:" << endl;
|
||||
cerr << "run number, energy (keV), field (G), lambda (nm), dead layer (nm), broadening (G), asymmetry" << endl;
|
||||
return -1;
|
||||
}
|
||||
|
||||
// Read in the root file containing the transport energy spectrum
|
||||
|
||||
string fileName("lem08_1351_ImpSpectrum_15kV.root");
|
||||
|
||||
TFile *rootFile = new TFile(fileName.c_str());
|
||||
|
||||
if (rootFile != NULL) {
|
||||
cout << "Opened root file: " << fileName << endl;
|
||||
} else {
|
||||
cout << "Could not open root file: " << fileName << endl;
|
||||
return 1;
|
||||
}
|
||||
|
||||
TH1F* impSpec = static_cast<TH1F*>(rootFile->Get("fEnergyHisto"));
|
||||
|
||||
map<double, pair<double, int> > spectrum; // E, (weight, t0shift)
|
||||
|
||||
const double dE(0.1);
|
||||
const double peakEnergy(11.25);
|
||||
const double peakEnergyTrans(14.1);
|
||||
const double peakEnergyFinal(impEnergy);
|
||||
double eDiff(peakEnergyTrans-peakEnergy);
|
||||
double eDiffFinal(peakEnergyFinal-peakEnergyTrans);
|
||||
|
||||
const double muMass(105658.370); // keV/c^2
|
||||
const double speedOfLight(299.792458); // mm/ns
|
||||
const double driftLength(1160.); // mm
|
||||
const double res(0.1953125); // ns
|
||||
double coeff0(driftLength/(speedOfLight*res));
|
||||
|
||||
pair<double, int> tmpPair;
|
||||
unsigned int peakBin; // see lem-svn:analysis/root/macros/lemStart.C for the conversion between Etrans and TOF
|
||||
peakBin = static_cast<unsigned int>(floor(coeff0/sqrt(1.0-1.0/pow(peakEnergy/muMass + 1.0, 2.0))));
|
||||
|
||||
for (double E(5.95); E <= 15.0; E += dE) {
|
||||
// // Debug: use only the peak energy
|
||||
// if (fabs(E - peakEnergy) > 0.01)
|
||||
// continue;
|
||||
if (peakEnergyTrans - (E+eDiff) >= peakEnergyFinal)
|
||||
continue; // forget about the reflected muons with too low energies in the tail
|
||||
tmpPair.first = impSpec->GetBinContent(impSpec->FindBin(E));
|
||||
tmpPair.second = static_cast<int>(floor(coeff0/sqrt(1.0-1.0/pow(E/muMass + 1.0, 2.0)))) - peakBin; // t-shift relativ to peak
|
||||
spectrum[E+eDiff] = tmpPair;
|
||||
}
|
||||
|
||||
// normalize spectrum
|
||||
double tmpNorm(0.0);
|
||||
for (map<double, pair<double, int> >::const_iterator it(spectrum.begin()); it != spectrum.end(); ++it) {
|
||||
tmpNorm += it->second.first;
|
||||
}
|
||||
for (map<double, pair<double, int> >::iterator it(spectrum.begin()); it != spectrum.end(); ++it) {
|
||||
it->second.first /= tmpNorm;
|
||||
}
|
||||
|
||||
// calculate phaseMag on the fly when the histogram is filled
|
||||
// in order not to rewrite all the FakeData-routine, use it as implemented in TPofTCalc to create separate files for each energy
|
||||
// in the end, add the histograms of the files together to create the resulting simulated histograms
|
||||
|
||||
// read in the TrimSP files
|
||||
string rge_path("/home/l_wojek/TrimSP/YBCOxtal/Espread-40eV/YBCOxtal-50000-");
|
||||
vector<string> energy_labels;
|
||||
ostringstream tmpLabel;
|
||||
for (unsigned int i(0); i < 30; ++i) {
|
||||
tmpLabel.clear();
|
||||
tmpLabel.str("");
|
||||
tmpLabel.fill('0');
|
||||
tmpLabel.setf(ios::internal, ios::adjustfield);
|
||||
tmpLabel.width(2);
|
||||
tmpLabel << i;
|
||||
tmpLabel << "_";
|
||||
for (unsigned int j(0); j < 10; ++j) {
|
||||
if (!((i == 0) && (j == 0))) {
|
||||
energy_labels.push_back(tmpLabel.str());
|
||||
energy_labels.back().append(boost::lexical_cast<string>(j));
|
||||
}
|
||||
}
|
||||
}
|
||||
energy_labels.push_back("30_0");
|
||||
|
||||
map<double,string> energy_vec;
|
||||
|
||||
for (unsigned int i(0); i < energy_labels.size(); ++i) {
|
||||
energy_vec[static_cast<double>(i+1)*0.1] = energy_labels[i];
|
||||
}
|
||||
|
||||
TTrimSPData calcData(rge_path, energy_vec, true);
|
||||
|
||||
// parameters for the London model calculations
|
||||
|
||||
vector<double> par_vec;
|
||||
par_vec.resize(5, 0.0); // phase (deg), energy (keV), applied field (G), deadlayer (nm), lambda (nm)
|
||||
par_vec[2] = field;
|
||||
par_vec[3] = deadlayer;
|
||||
par_vec[4] = lambda;
|
||||
|
||||
vector<double> interfaces;
|
||||
interfaces.push_back(par_vec[3]); // deadlayer
|
||||
|
||||
vector<double> parForBofZ;
|
||||
for (unsigned int i(2); i<par_vec.size(); ++i)
|
||||
parForBofZ.push_back(par_vec[i]);
|
||||
|
||||
vector<double> parForPofB;
|
||||
parForPofB.resize(6, 0.0); // dt (us), dB (G), energy (keV), bkg-field (G), bkg-width (G), bkg-fraction (here from deadlayer)
|
||||
parForPofB[0] = 0.005; // dt
|
||||
parForPofB[1] = 0.05; // dB
|
||||
parForPofB[3] = field; // bkg-field
|
||||
parForPofB[4] = 0.1; // bkg-width
|
||||
|
||||
vector<double> parForPofT;
|
||||
parForPofT.resize(3, 0.0); // phase, dt, dB
|
||||
parForPofT[1] = 0.005; //dt
|
||||
parForPofT[2] = 0.05; //dB
|
||||
|
||||
vector<double> parForFakeData; // par(dt, dB, timeres, channels, asyms, phases, t0s, N0s, bgs)
|
||||
parForFakeData.resize(14, 0.0);
|
||||
parForFakeData[0] = 0.005;//dt for FFT
|
||||
parForFakeData[1] = 0.05;//dB
|
||||
parForFakeData[2] = res*1.e-3;//timeres
|
||||
parForFakeData[3] = 66601.;//channels
|
||||
parForFakeData[4] = asymmetry;//asys -- fixed for the moment but in principle also energy-dependent
|
||||
parForFakeData[5] = asymmetry;
|
||||
|
||||
const double N0L(115.), N0R(100.), bgL(9.), bgR(8.), t0Peak(3000.);
|
||||
|
||||
TLondon1D_HS *BofZ = new TLondon1D_HS(parForBofZ);
|
||||
TPofBCalc *PofB = new TPofBCalc(parForPofB);
|
||||
TPofTCalc *PofT = new TPofTCalc(PofB, "/home/l_wojek/analysis/WordsOfWisdom.dat", parForPofT);
|
||||
|
||||
double tmpE, tmpTransportE, tmpPhase;
|
||||
ostringstream tmpFile;
|
||||
ostringstream tmpDouble;
|
||||
|
||||
const double phaseApp(16.0); // phaseSep ~ 9 deg, phaseCryo ~ 7 deg
|
||||
const double gamma_mu(TMath::TwoPi()*0.0135538817); // MHz/G
|
||||
double coeff1(1.30406); // m/s -> for v = sqrt(2E/m) = 1.30406e6 m/s sqrt(E[keV]) no "e6" because gamma_mu is in MHz/G
|
||||
double coeff2(0.13123); // m -> for phaseMag = gamma_mu/v Int {B(x) dx} = coeff2 * B * gamma_mu/v
|
||||
double coeff3(gamma_mu*field*coeff2/coeff1);
|
||||
|
||||
map<int, double> GssWeight;
|
||||
if (sigmaLambda) { // If Gaussian spread of lambdas around the specified value
|
||||
for (int i(1); i < 16; ++i) {
|
||||
GssWeight[i] = GssWeight[-i] = exp(-0.02*static_cast<double>(i)*static_cast<double>(i));
|
||||
}
|
||||
GssWeight[0] = 1.0;
|
||||
// Normalize
|
||||
double tmpSum(0.0);
|
||||
for (map<int, double>::const_iterator it(GssWeight.begin()); it != GssWeight.end(); ++it) {
|
||||
tmpSum += it->second;
|
||||
}
|
||||
for (map<int, double>::iterator it(GssWeight.begin()); it != GssWeight.end(); ++it) {
|
||||
it->second /= tmpSum;
|
||||
}
|
||||
}
|
||||
|
||||
unsigned int index(0);
|
||||
for (map<double, pair<double, int> >::const_iterator it(spectrum.begin()); it != spectrum.end(); ++it) {
|
||||
|
||||
tmpTransportE = it->first;
|
||||
tmpE = eDiffFinal + tmpTransportE;
|
||||
|
||||
cout << "tmpTransportE = " << tmpTransportE << ", tmpE = " << tmpE << endl;
|
||||
|
||||
tmpPhase = coeff3/sqrt(tmpTransportE)*180.0/TMath::Pi() + phaseApp;
|
||||
|
||||
parForPofB[2] = tmpE;
|
||||
parForPofB[5] = calcData.LayerFraction(tmpE, 1, interfaces); // Fraction of muons in the deadlayer
|
||||
// replace this expression by 1.0 if you are interested only in the background (reference above Tc)
|
||||
|
||||
parForPofT[0] = tmpPhase;
|
||||
|
||||
parForFakeData[6] = tmpPhase;//phases
|
||||
parForFakeData[7] = parForFakeData[6] + 165.;
|
||||
parForFakeData[8] = t0Peak + spectrum[tmpTransportE].second;//t0s
|
||||
parForFakeData[9] = parForFakeData[8];
|
||||
parForFakeData[10] = N0L*spectrum[tmpTransportE].first;//N0s
|
||||
parForFakeData[11] = N0R*spectrum[tmpTransportE].first;
|
||||
parForFakeData[12] = bgL*spectrum[tmpTransportE].first;//bgs
|
||||
parForFakeData[13] = bgR*spectrum[tmpTransportE].first;
|
||||
|
||||
if (GssWeight.empty()) {
|
||||
PofB->UnsetPBExists();
|
||||
PofB->Calculate(BofZ, &calcData, parForPofB);
|
||||
} else {
|
||||
// calculate P(B) for the Gaussian distribution of lambdas and finally add them together
|
||||
vector<double> *pb = 0;
|
||||
double *tmpPB;
|
||||
|
||||
for (map<int, double>::iterator it(GssWeight.begin()); it != GssWeight.end(); ++it) {
|
||||
delete BofZ;
|
||||
parForBofZ.back() = lambda + 0.2*it->first*sigmaLambda;
|
||||
BofZ = new TLondon1D_HS(parForBofZ);
|
||||
PofB->UnsetPBExists();
|
||||
PofB->Calculate(BofZ, &calcData, parForPofB);
|
||||
|
||||
if (it == GssWeight.begin()) {
|
||||
pb = new vector<double>(PofB->DataPB(), PofB->DataPB() + PofB->GetPBSize());
|
||||
for (unsigned int i(0); i < pb->size(); ++i) {
|
||||
(*pb)[i] *= it->second;
|
||||
}
|
||||
} else if (pb) {
|
||||
tmpPB = PofB->DataPB();
|
||||
for (unsigned int i(0); i < pb->size(); ++i) {
|
||||
(*pb)[i] += tmpPB[i]*it->second;
|
||||
}
|
||||
}
|
||||
}
|
||||
PofB->SetPB(*pb);
|
||||
delete pb;
|
||||
pb = 0;
|
||||
}
|
||||
|
||||
PofB->ConvolveGss(broadening);
|
||||
|
||||
// // debug: check the calculated field distribution
|
||||
// const double *b(PofB->DataB());
|
||||
// double *pB(PofB->DataPB());
|
||||
// unsigned int s(PofB->GetPBSize());
|
||||
//
|
||||
// ofstream ofx("test-pB.dat");
|
||||
// for (unsigned int i(0); i < s; ++i) {
|
||||
// ofx << b[i] << " " << pB[i] << endl;
|
||||
// }
|
||||
// ofx.close();
|
||||
// return 100;
|
||||
|
||||
tmpFile.clear();
|
||||
tmpFile.str("");
|
||||
tmpFile.fill('0');
|
||||
tmpFile.setf(ios::internal, ios::adjustfield);
|
||||
tmpFile.width(2);
|
||||
tmpFile << index;
|
||||
tmpFile << "tempFile.root";
|
||||
|
||||
PofT->DoFFT();
|
||||
PofT->FakeData(tmpFile.str(), parForFakeData, 0);
|
||||
|
||||
++index;
|
||||
}
|
||||
|
||||
delete BofZ;
|
||||
BofZ = 0;
|
||||
delete PofB;
|
||||
PofB = 0;
|
||||
delete PofT;
|
||||
PofT = 0;
|
||||
|
||||
// read back the written files and add the decay histograms
|
||||
|
||||
// get the first histogram, copy it and add the rest of them
|
||||
vector<TFile*> rootTmpFile;
|
||||
rootTmpFile.push_back(new TFile("00tempFile.root"));
|
||||
|
||||
TFolder *tmpFolder;
|
||||
rootTmpFile.back()->GetObject("histos", tmpFolder);
|
||||
if (!tmpFolder) {
|
||||
cerr << endl << "No histogram folder found in 00tempFile.root" << endl;
|
||||
rootTmpFile.back()->Close();
|
||||
return -1;
|
||||
}
|
||||
|
||||
TH1F *tmpHist = dynamic_cast<TH1F*>(tmpFolder->FindObjectAny("hDecay00"));
|
||||
|
||||
vector<TH1F*> finalHistos;
|
||||
finalHistos.push_back(dynamic_cast<TH1F*>(tmpHist->Clone()));
|
||||
|
||||
|
||||
|
||||
tmpHist = dynamic_cast<TH1F*>(tmpFolder->FindObjectAny("hDecay01"));
|
||||
finalHistos.push_back(dynamic_cast<TH1F*>(tmpHist->Clone()));
|
||||
|
||||
|
||||
// rootTmpFile->Close();
|
||||
|
||||
// delete rootTmpFile;
|
||||
|
||||
|
||||
|
||||
// ostringstream tmpStrStream;
|
||||
// tmpStrStream << "hDecay0";
|
||||
// string tmpString;
|
||||
|
||||
for (unsigned int i(1); i < index; ++i) {
|
||||
tmpFile.clear();
|
||||
tmpFile.str("");
|
||||
tmpFile.fill('0');
|
||||
tmpFile.setf(ios::internal, ios::adjustfield);
|
||||
tmpFile.width(2);
|
||||
tmpFile << i;
|
||||
tmpFile << "tempFile.root";
|
||||
|
||||
rootTmpFile.push_back(new TFile(tmpFile.str().c_str()));
|
||||
|
||||
rootTmpFile.back()->GetObject("histos", tmpFolder);
|
||||
if (!tmpFolder) {
|
||||
cerr << endl << "No histogram folder found in " << tmpFile.str() << endl;
|
||||
rootTmpFile.back()->Close();
|
||||
return -1;
|
||||
}
|
||||
|
||||
for(unsigned int j(0); j < finalHistos.size(); ++j) {
|
||||
// tmpString = tmpStrStream.str().append(boost::lexical_cast<string>(j));
|
||||
tmpHist = dynamic_cast<TH1F*>(tmpFolder->FindObjectAny(finalHistos[j]->GetName()));
|
||||
finalHistos[j]->Add(tmpHist);
|
||||
}
|
||||
|
||||
// rootTmpFile->Close();
|
||||
// delete rootTmpFile;
|
||||
}
|
||||
|
||||
// save everything to the final ROOT file
|
||||
// create run info folder and content
|
||||
TFolder *runInfoFolder = new TFolder("RunInfo", "Run Info");
|
||||
TLemRunHeader *runHeader = new TLemRunHeader();
|
||||
|
||||
runHeader->SetRunTitle("Simulated Data");
|
||||
runHeader->SetImpEnergy(peakEnergyFinal);
|
||||
runHeader->SetSampleBField(field, 0.0f);
|
||||
|
||||
runHeader->SetTimeResolution(res);
|
||||
runHeader->SetNChannels(66601);
|
||||
runHeader->SetNHist(finalHistos.size());
|
||||
double *t0array = new double[finalHistos.size()];
|
||||
for (unsigned int i(0); i<finalHistos.size(); ++i)
|
||||
t0array[i] = t0Peak;
|
||||
runHeader->SetTimeZero(t0array);
|
||||
if (t0array) {
|
||||
delete[] t0array;
|
||||
t0array = 0;
|
||||
}
|
||||
runInfoFolder->Add(runHeader);
|
||||
|
||||
// create decay histo folder and content
|
||||
TFolder *histoFolder = new TFolder("histos", "histos");
|
||||
TFolder *decayAnaModule = new TFolder("DecayAnaModule", "DecayAnaModule");
|
||||
histoFolder->Add(decayAnaModule);
|
||||
// non post pileup corrected (NPP)
|
||||
for (unsigned int i(0); i<finalHistos.size(); ++i)
|
||||
decayAnaModule->Add(finalHistos[i]);
|
||||
// post pileup corrected (PPC)
|
||||
vector<TH1F*> finalHistosPPC;
|
||||
TString name;
|
||||
for (unsigned int i(0); i<finalHistos.size(); ++i) {
|
||||
finalHistosPPC.push_back(dynamic_cast<TH1F*>(finalHistos[i]->Clone()));
|
||||
if (i < 10)
|
||||
name = "hDecay2";
|
||||
else
|
||||
name = "hDecay";
|
||||
name += i;
|
||||
finalHistosPPC[i]->SetNameTitle(name.Data(), name.Data());
|
||||
decayAnaModule->Add(finalHistosPPC[i]);
|
||||
}
|
||||
|
||||
// write file
|
||||
tmpFile.clear();
|
||||
tmpFile.str("");
|
||||
tmpFile << "LEMsimulation-YBCO-London-lambda" << fixed << setprecision(0) << par_vec[4] << "nm-dl" << fixed << setprecision(0) << par_vec[3] << "nm_";
|
||||
tmpFile.fill('0');
|
||||
tmpFile.setf(ios::internal, ios::adjustfield);
|
||||
tmpFile.width(4);
|
||||
tmpFile << runNumber;
|
||||
tmpFile << ".root";
|
||||
|
||||
TFile fdf(tmpFile.str().c_str(), "recreate");
|
||||
runInfoFolder->Write("RunInfo", TObject::kSingleKey);
|
||||
histoFolder->Write();
|
||||
fdf.Close();
|
||||
|
||||
// clean up
|
||||
|
||||
for (unsigned int i(0); i<finalHistos.size(); ++i) {
|
||||
delete finalHistos[i];
|
||||
delete finalHistosPPC[i];
|
||||
}
|
||||
finalHistos.clear();
|
||||
finalHistosPPC.clear();
|
||||
|
||||
for (unsigned int i(0); i<rootTmpFile.size(); ++i) {
|
||||
rootTmpFile[i]->Close();
|
||||
delete rootTmpFile[i];
|
||||
}
|
||||
rootTmpFile.clear();
|
||||
|
||||
histoFolder->Clear();
|
||||
delete histoFolder; histoFolder = 0;
|
||||
decayAnaModule->Clear();
|
||||
delete decayAnaModule; decayAnaModule = 0;
|
||||
|
||||
runInfoFolder->Clear();
|
||||
delete runInfoFolder; runInfoFolder = 0;
|
||||
delete runHeader; runHeader = 0;
|
||||
|
||||
|
||||
// // debug: check read in file and normalization
|
||||
// tmpNorm = 0.0;
|
||||
// for (map<double, pair<double, int> >::const_iterator it(spectrum.begin()); it != spectrum.end(); ++it) {
|
||||
// tmpNorm += it->second.first;
|
||||
// }
|
||||
// cout << "E normalizer: " << tmpNorm << endl;
|
||||
// ofstream of0("test-spec.dat");
|
||||
// for (map<double, pair<double, int> >::const_iterator it(spectrum.begin()); it != spectrum.end(); ++it) {
|
||||
// of0 << it->first << " " << it->second.first << " " << it->second.second << " " << coeff3/sqrt(it->first)*180.0/TMath::Pi() << endl;
|
||||
// }
|
||||
// of0.close();
|
||||
|
||||
rootFile->Close();
|
||||
delete rootFile;
|
||||
rootFile = 0;
|
||||
impSpec = 0;
|
||||
spectrum.clear();
|
||||
|
||||
return 0;
|
||||
}
|
126
src/external/libFitPofB/test/simulation/simulateFiles.sh
vendored
Normal file
126
src/external/libFitPofB/test/simulation/simulateFiles.sh
vendored
Normal file
@ -0,0 +1,126 @@
|
||||
#!/bin/bash
|
||||
|
||||
# script for the data generation -- also serves as "run log"
|
||||
|
||||
#arguments: run number, energy (keV), field (G), lambda (nm), dead layer (nm), broadening (G), asymmetry
|
||||
|
||||
#./simDataFullSpec 1 2.0 50.0 100.0 5.0 1.174 0.060
|
||||
#./simDataFullSpec 2 3.6 50.0 100.0 5.0 1.174 0.065
|
||||
#./simDataFullSpec 3 5.0 50.0 100.0 5.0 1.174 0.075
|
||||
#./simDataFullSpec 4 7.5 50.0 100.0 5.0 1.174 0.085
|
||||
#./simDataFullSpec 5 10.0 50.0 100.0 5.0 1.174 0.095
|
||||
#./simDataFullSpec 6 14.1 50.0 100.0 5.0 1.174 0.100
|
||||
#./simDataFullSpec 7 17.8 50.0 100.0 5.0 1.174 0.105
|
||||
#./simDataFullSpec 8 21.1 50.0 100.0 5.0 1.174 0.110
|
||||
#./simDataFullSpec 9 23.1 50.0 100.0 5.0 1.174 0.115
|
||||
#./simDataFullSpec 10 24.6 50.0 100.0 5.0 1.174 0.120
|
||||
|
||||
#./simDataFullSpec 11 2.0 50.0 100.0 5.0 5.87 0.060
|
||||
#./simDataFullSpec 12 3.6 50.0 100.0 5.0 5.87 0.065
|
||||
#./simDataFullSpec 13 5.0 50.0 100.0 5.0 5.87 0.075
|
||||
#./simDataFullSpec 14 7.5 50.0 100.0 5.0 5.87 0.085
|
||||
#./simDataFullSpec 15 10.0 50.0 100.0 5.0 5.87 0.095
|
||||
#./simDataFullSpec 16 14.1 50.0 100.0 5.0 5.87 0.100
|
||||
#./simDataFullSpec 17 17.8 50.0 100.0 5.0 5.87 0.105
|
||||
#./simDataFullSpec 18 21.1 50.0 100.0 5.0 5.87 0.110
|
||||
#./simDataFullSpec 19 23.1 50.0 100.0 5.0 5.87 0.115
|
||||
#./simDataFullSpec 20 24.6 50.0 100.0 5.0 5.87 0.12
|
||||
|
||||
#./simDataFullSpec 21 2.0 100.0 100.0 5.0 1.174 0.060
|
||||
#./simDataFullSpec 22 3.6 100.0 100.0 5.0 1.174 0.065
|
||||
#./simDataFullSpec 23 5.0 100.0 100.0 5.0 1.174 0.075
|
||||
#./simDataFullSpec 24 7.5 100.0 100.0 5.0 1.174 0.085
|
||||
#./simDataFullSpec 25 10.0 100.0 100.0 5.0 1.174 0.095
|
||||
#./simDataFullSpec 26 14.1 100.0 100.0 5.0 1.174 0.100
|
||||
#./simDataFullSpec 27 17.8 100.0 100.0 5.0 1.174 0.105
|
||||
#./simDataFullSpec 28 21.1 100.0 100.0 5.0 1.174 0.110
|
||||
#./simDataFullSpec 29 23.1 100.0 100.0 5.0 1.174 0.115
|
||||
#./simDataFullSpec 30 24.6 100.0 100.0 5.0 1.174 0.120
|
||||
|
||||
#./simDataFullSpec 31 2.0 100.0 100.0 5.0 8.218 0.060
|
||||
#./simDataFullSpec 32 3.6 100.0 100.0 5.0 8.218 0.065
|
||||
#./simDataFullSpec 33 5.0 100.0 100.0 5.0 8.218 0.075
|
||||
#./simDataFullSpec 34 7.5 100.0 100.0 5.0 8.218 0.085
|
||||
#./simDataFullSpec 35 10.0 100.0 100.0 5.0 8.218 0.095
|
||||
#./simDataFullSpec 36 14.1 100.0 100.0 5.0 8.218 0.100
|
||||
#./simDataFullSpec 37 17.8 100.0 100.0 5.0 8.218 0.105
|
||||
#./simDataFullSpec 38 21.1 100.0 100.0 5.0 8.218 0.110
|
||||
#./simDataFullSpec 39 23.1 100.0 100.0 5.0 8.218 0.115
|
||||
#./simDataFullSpec 40 24.6 100.0 100.0 5.0 8.218 0.120
|
||||
|
||||
#./simDataFullSpec 41 2.0 200.0 100.0 5.0 11.74 0.060
|
||||
#./simDataFullSpec 42 3.6 200.0 100.0 5.0 11.74 0.065
|
||||
#./simDataFullSpec 43 5.0 200.0 100.0 5.0 11.74 0.075
|
||||
#./simDataFullSpec 44 7.5 200.0 100.0 5.0 11.74 0.085
|
||||
#./simDataFullSpec 45 10.0 200.0 100.0 5.0 11.74 0.095
|
||||
#./simDataFullSpec 46 14.1 200.0 100.0 5.0 11.74 0.100
|
||||
#./simDataFullSpec 47 17.8 200.0 100.0 5.0 11.74 0.105
|
||||
#./simDataFullSpec 48 21.1 200.0 100.0 5.0 11.74 0.110
|
||||
#./simDataFullSpec 49 23.1 200.0 100.0 5.0 11.74 0.115
|
||||
#./simDataFullSpec 50 24.6 200.0 100.0 5.0 11.74 0.120
|
||||
|
||||
#./simDataFullSpec 51 2.0 25.0 100.0 5.0 3.522 0.060
|
||||
#./simDataFullSpec 52 3.6 25.0 100.0 5.0 3.522 0.065
|
||||
#./simDataFullSpec 53 5.0 25.0 100.0 5.0 3.522 0.075
|
||||
#./simDataFullSpec 54 7.5 25.0 100.0 5.0 3.522 0.085
|
||||
#./simDataFullSpec 55 10.0 25.0 100.0 5.0 3.522 0.095
|
||||
#./simDataFullSpec 56 14.1 25.0 100.0 5.0 3.522 0.100
|
||||
#./simDataFullSpec 57 17.8 25.0 100.0 5.0 3.522 0.105
|
||||
#./simDataFullSpec 58 21.1 25.0 100.0 5.0 3.522 0.110
|
||||
#./simDataFullSpec 59 23.1 25.0 100.0 5.0 3.522 0.115
|
||||
#./simDataFullSpec 60 24.6 25.0 100.0 5.0 3.522 0.120
|
||||
|
||||
#./simDataFullSpec 61 2.0 50.0 250.0 5.0 5.87 0.060
|
||||
#./simDataFullSpec 62 3.6 50.0 250.0 5.0 5.87 0.065
|
||||
#./simDataFullSpec 63 5.0 50.0 250.0 5.0 5.87 0.075
|
||||
#./simDataFullSpec 64 7.5 50.0 250.0 5.0 5.87 0.085
|
||||
#./simDataFullSpec 65 10.0 50.0 250.0 5.0 5.87 0.095
|
||||
#./simDataFullSpec 66 14.1 50.0 250.0 5.0 5.87 0.100
|
||||
#./simDataFullSpec 67 17.8 50.0 250.0 5.0 5.87 0.105
|
||||
#./simDataFullSpec 68 21.1 50.0 250.0 5.0 5.87 0.110
|
||||
#./simDataFullSpec 69 23.1 50.0 250.0 5.0 5.87 0.115
|
||||
#./simDataFullSpec 70 24.6 50.0 250.0 5.0 5.87 0.120
|
||||
|
||||
#./simDataFullSpec 71 2.0 100.0 250.0 5.0 8.218 0.060
|
||||
#./simDataFullSpec 72 3.6 100.0 250.0 5.0 8.218 0.065
|
||||
#./simDataFullSpec 73 5.0 100.0 250.0 5.0 8.218 0.075
|
||||
#./simDataFullSpec 74 7.5 100.0 250.0 5.0 8.218 0.085
|
||||
#./simDataFullSpec 75 10.0 100.0 250.0 5.0 8.218 0.095
|
||||
#./simDataFullSpec 76 14.1 100.0 250.0 5.0 8.218 0.100
|
||||
#./simDataFullSpec 77 17.8 100.0 250.0 5.0 8.218 0.105
|
||||
#./simDataFullSpec 78 21.1 100.0 250.0 5.0 8.218 0.110
|
||||
#./simDataFullSpec 79 23.1 100.0 250.0 5.0 8.218 0.115
|
||||
#./simDataFullSpec 80 24.6 100.0 250.0 5.0 8.218 0.120
|
||||
|
||||
#./simDataFullSpec 81 2.0 200.0 250.0 5.0 11.74 0.060
|
||||
#./simDataFullSpec 82 3.6 200.0 250.0 5.0 11.74 0.065
|
||||
#./simDataFullSpec 83 5.0 200.0 250.0 5.0 11.74 0.075
|
||||
#./simDataFullSpec 84 7.5 200.0 250.0 5.0 11.74 0.085
|
||||
#./simDataFullSpec 85 10.0 200.0 250.0 5.0 11.74 0.095
|
||||
#./simDataFullSpec 86 14.1 200.0 250.0 5.0 11.74 0.100
|
||||
#./simDataFullSpec 87 17.8 200.0 250.0 5.0 11.74 0.105
|
||||
#./simDataFullSpec 88 21.1 200.0 250.0 5.0 11.74 0.110
|
||||
#./simDataFullSpec 89 23.1 200.0 250.0 5.0 11.74 0.115
|
||||
#./simDataFullSpec 90 24.6 200.0 250.0 5.0 11.74 0.120
|
||||
|
||||
#./simDataFullSpec 91 2.0 25.0 250.0 5.0 3.522 0.060
|
||||
#./simDataFullSpec 92 3.6 25.0 250.0 5.0 3.522 0.065
|
||||
#./simDataFullSpec 93 5.0 25.0 250.0 5.0 3.522 0.075
|
||||
#./simDataFullSpec 94 7.5 25.0 250.0 5.0 3.522 0.085
|
||||
#./simDataFullSpec 95 10.0 25.0 250.0 5.0 3.522 0.095
|
||||
#./simDataFullSpec 96 14.1 25.0 250.0 5.0 3.522 0.100
|
||||
#./simDataFullSpec 97 17.8 25.0 250.0 5.0 3.522 0.105
|
||||
#./simDataFullSpec 98 21.1 25.0 250.0 5.0 3.522 0.110
|
||||
#./simDataFullSpec 99 23.1 25.0 250.0 5.0 3.522 0.115
|
||||
#./simDataFullSpec 100 24.6 25.0 250.0 5.0 3.522 0.120
|
||||
|
||||
./simDataFullSpec 101 2.0 25.0 100.0 5.0 5.87 0.060
|
||||
./simDataFullSpec 102 3.6 25.0 100.0 5.0 5.87 0.065
|
||||
./simDataFullSpec 103 5.0 25.0 100.0 5.0 5.87 0.075
|
||||
./simDataFullSpec 104 7.5 25.0 100.0 5.0 5.87 0.085
|
||||
./simDataFullSpec 105 10.0 25.0 100.0 5.0 5.87 0.095
|
||||
./simDataFullSpec 106 14.1 25.0 100.0 5.0 5.87 0.100
|
||||
./simDataFullSpec 107 17.8 25.0 100.0 5.0 5.87 0.105
|
||||
./simDataFullSpec 108 21.1 25.0 100.0 5.0 5.87 0.110
|
||||
./simDataFullSpec 109 23.1 25.0 100.0 5.0 5.87 0.115
|
||||
./simDataFullSpec 110 24.6 25.0 100.0 5.0 5.87 0.120
|
Loading…
x
Reference in New Issue
Block a user