Skip to content
Open
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
84 changes: 41 additions & 43 deletions config/ZExpAxialFormFactorModel.xml
Original file line number Diff line number Diff line change
Expand Up @@ -7,23 +7,18 @@ Configuration sets for the z-expansion axial form factor model.

Algorithm Configurable Parameters:
.........................................................................................
Name Type Optional Comment Default
Name Type Optional Comment Default
.........................................................................................
QEL-T0 double Yes z convergence parameter GPL value: QEL-T0
QEL-Z_A1 double Yes z expansion coefficient GPL value: QEL-Z_A1
QEL-Z_A2 double Yes z expansion coefficient GPL value: QEL-Z_A2
QEL-Z_A3 double Yes z expansion coefficient GPL value: QEL-Z_A3
QEL-Z_A4 double Yes z expansion coefficient GPL value: QEL-Z_A4
QEL-Z_A5 double Yes z expansion coefficient GPL value: QEL-Z_A5
QEL-Z_A6 double Yes z expansion coefficient GPL value: QEL-Z_A6
QEL-Z_A7 double Yes z expansion coefficient GPL value: QEL-Z_A7
QEL-Z_A8 double Yes z expansion coefficient GPL value: QEL-Z_A8
QEL-Z_A9 double Yes z expansion coefficient GPL value: QEL-Z_A9
QEL-Z_A10 double Yes z expansion coefficient GPL value: QEL-Z_A10
QEL-Kmax int Yes max summation index GPL value: QEL-Kmax
QEL-Tcut double Yes ?? GPL value

QEL-Q4limit bool Yes 1/Q^4 limit conditions GPL value: QEL-Q4limit
QEL-T0 double Yes z convergence parameter GPL value: QEL-T0
QEL-Z_A vec-double Yes z expansion coefficient GPL value: QEL-Z_A
QEL-Kmax int Yes max summation index GPL value: QEL-Kmax
QEL-Tcut double Yes ?? GPL value

QEL-Q4limit bool Yes 1/Q^4 limit conditions GPL value: QEL-Q4limit


Only using for reweight
ZExpZAFF@CovarianceMatrix mat-double Yes covariance matrix GPL value: ZExpZAFF@CovarianceMatrix

-->

Expand All @@ -38,27 +33,40 @@ QEL-Q4limit bool Yes 1/Q^4 limit conditions GPL value: QEL-Q4limit
<param type="double" name="QEL-T0"> -0.28 </param>
<param type="double" name="QEL-Tcut"> 0.1764 </param> <!-- 9*m_pi^2 -->

<param type="double" name="QEL-Z_A1"> 2.30 </param>
<param type="double" name="QEL-Z_A2"> -0.6 </param>
<param type="double" name="QEL-Z_A3"> -3.8 </param>
<param type="double" name="QEL-Z_A4"> 2.3 </param>
<!-- more factors can be added, if necessary according to Kmax -->
<param type="vec-double" name="QEL-Z_A" delim=";"> 2.30; -0.6; -3.8; 2.3 </param>
<!-- more factors can be added, if necessary according to Kmax, https://arxiv.org/pdf/1603.03048 -->
<param type="mat-double" name="ZExpZAFF@CovarianceMatrix" importfile="true"> data/covariances/FormFactor/Axial/AxialZExpFF_Deuterium.dat </param>

</param_set>

<param_set name="minerva">
<param_set name="lqcd">

<param type="string" name="CommonParam"> QuasiElastic </param>

<param type="bool" name="QEL-Q4limit"> true </param>
<param type="int" name="QEL-Kmax"> 2 </param>

<param type="double" name="QEL-T0"> -0.5 </param>
<param type="double" name="QEL-Tcut"> 0.161604 </param>

<param type="vec-double" name="QEL-Z_A" delim=";"> 1.72089706; -0.30982708 </param>
<param type="mat-double" name="ZExpZAFF@CovarianceMatrix" importfile="true"> data/covariances/FormFactor/Axial/AxialZExpFF_LQCD.dat </param>
<!-- more factors can be added, if necessary according to Kmax, https://arxiv.org/pdf/2512.14097 -->
</param_set>

<param_set name="minerva">

<param type="string" name="CommonParam"> QuasiElastic </param>

<param type="bool" name="QEL-Q4limit"> true </param>
<param type="int" name="QEL-Kmax"> 2 </param>

<param type="double" name="QEL-T0"> -0.5 </param>
<param type="double" name="QEL-Tcut"> 0.161604 </param> <!-- 9*m_pi0^2 -->

<param type="double" name="QEL-Z_A1"> 1.65 </param>
<param type="double" name="QEL-Z_A2"> -0.94 </param>

<param type="vec-double" name="QEL-Z_A" delim=";"> 1.64778080; -0.94181417 </param>
<param type="mat-double" name="ZExpZAFF@CovarianceMatrix" importfile="true"> data/covariances/FormFactor/Axial/AxialZExpFF_minervaElementaryTarget.dat </param>
<!-- more factors can be added, if necessary according to Kmax, https://arxiv.org/pdf/2512.14097 -->
</param_set>

<param_set name="minervaNature">
Expand All @@ -71,26 +79,16 @@ QEL-Q4limit bool Yes 1/Q^4 limit conditions GPL value: QEL-Q4limit
<param type="double" name="QEL-T0"> -0.75 </param>
<param type="double" name="QEL-Tcut"> 0.1764 </param> <!-- 9*m_pi^2 -->

<param type="double" name="QEL-Z_A1"> 1.50 </param>
<param type="double" name="QEL-Z_A2"> -1.2 </param>
<param type="double" name="QEL-Z_A3"> -0.1 </param>
<param type="double" name="QEL-Z_A4"> 0.2 </param>
<param type="vec-double" name="QEL-Z_A" delim=";"> 1.50; -1.2; -0.1; 0.2 </param>
<param type="mat-double" name="ZExpZAFF@CovarianceMatrix" importfile="true"> data/covariances/FormFactor/Axial/AxialZExpFF_minervaNature4x4.dat </param>
<!-- more factors can be added, if necessary according to Kmax, https://www.nature.com/articles/s41586-022-05478-3 -->
<!--
<param type="int" name="QEL-Kmax"> 2 </param>
<param type="vec-double" name="QEL-Z_A" delim=";"> 1.50; -1.2 </param>
<param type="mat-double" name="ZExpZAFF@CovarianceMatrix" importfile="true"> data/covariances/FormFactor/Axial/AxialZExpFF_minervaNature2x2.dat </param>
-->

</param_set>

<param_set name="lqcd">

<param type="string" name="CommonParam"> QuasiElastic </param>

<param type="bool" name="QEL-Q4limit"> true </param>
<param type="int" name="QEL-Kmax"> 2 </param>

<param type="double" name="QEL-T0"> -0.5 </param>
<param type="double" name="QEL-Tcut"> 0.161604 </param>

<param type="double" name="QEL-Z_A1"> 1.721 </param>
<param type="double" name="QEL-Z_A2"> -0.31 </param>
</param_set>

</alg_conf>

31 changes: 14 additions & 17 deletions config/ZExpELFormFactorModel.xml
Original file line number Diff line number Diff line change
Expand Up @@ -7,24 +7,20 @@ Configuration sets for the z-expansion axial form factor model.

Algorithm Configurable Parameters:
.........................................................................................
Name Type Optional Comment Default
Name Type Optional Comment Default
.........................................................................................
QEL-T0 double Yes z convergence parameter GPL value: QEL-T0
QEL-Z_A1 double Yes z expansion coefficient GPL value: QEL-Z_A1
QEL-Z_A2 double Yes z expansion coefficient GPL value: QEL-Z_A2
QEL-Z_A3 double Yes z expansion coefficient GPL value: QEL-Z_A3
QEL-Z_A4 double Yes z expansion coefficient GPL value: QEL-Z_A4
QEL-Z_A5 double Yes z expansion coefficient GPL value: QEL-Z_A5
QEL-Z_A6 double Yes z expansion coefficient GPL value: QEL-Z_A6
QEL-Z_A7 double Yes z expansion coefficient GPL value: QEL-Z_A7
QEL-Z_A8 double Yes z expansion coefficient GPL value: QEL-Z_A8
QEL-Z_A9 double Yes z expansion coefficient GPL value: QEL-Z_A9
QEL-Z_A10 double Yes z expansion coefficient GPL value: QEL-Z_A10
QEL-Kmax int Yes max summation index GPL value: QEL-Kmax
QEL-Tcut double Yes ?? GPL value

QEL-Q4limit bool Yes 1/Q^4 limit conditions GPL value: QEL-Q4limit

QEL-T0 double Yes z convergence parameter GPL value: QEL-T0
QEL-Z_AP vec-double Yes z expansion coefficient GPL value: QEL-Z_AP
QEL-Z_BP vec-double Yes z expansion coefficient GPL value: QEL-Z_BP
QEL-Z_AN vec-double Yes z expansion coefficient GPL value: QEL-Z_AN
QEL-Z_BN vec-double Yes z expansion coefficient GPL value: QEL-Z_BN
QEL-Kmax int Yes max summation index GPL value: QEL-Kmax
QEL-Tcut double Yes ?? GPL value

QEL-Q4limit bool Yes 1/Q^4 limit conditions GPL value: QEL-Q4limit

Only using for reweight
ZExpELFF@CovarianceMatrix mat-double Yes covariance matrix GPL value: ZExpELFF@CovarianceMatrix
-->

<param_set name="Default">
Expand All @@ -42,6 +38,7 @@ QEL-Q4limit bool Yes 1/Q^4 limit conditions GPL value: QEL-Q4limit
<param type="vec-double" name="QEL-Z_AN" delim=";"> 0.084252682465; -0.278572218873; -0.153916309312; 0.353999966588 </param>
<param type="vec-double" name="QEL-Z_BN" delim=";"> 2.706784556423; -0.424305225602; -2.662453066640; 0.067583076040 </param>
<!-- more factors can be added, if necessary according to Kmax -->
<param type="mat-double" name="ZExpELFF@CovarianceMatrix" importfile="true"> data/covariances/FormFactor/Vector/ELZExpFF.dat </param>

</param_set>
</alg_conf>
Expand Down
8 changes: 0 additions & 8 deletions data/covariances/AxialZExpFF_minervaNature.dat

This file was deleted.

9 changes: 9 additions & 0 deletions data/covariances/FormFactor/Axial/AxialZExpFF_Deuterium.dat
Original file line number Diff line number Diff line change
@@ -0,0 +1,9 @@
% error matrix for z expansion axial form factor
% based on A. Meyer et al (MINERvA), https://arxiv.org/pdf/1603.03048 (LQCD kmax=8, the 4 free parameters)
% See Eq. 31, 32, 33
% Using Eq. 32 and Eq.33 to get covariance matrix
% | an | an is a 4x4 matrix
2.3716000e-04 5.8212000e-03 -6.8285448e-02 6.9629560e-02
5.8212000e-03 1.1664000e+00 -6.3427536e+00 2.9330640e+00
-6.8285448e-02 -6.3427536e+00 4.2771600e+01 -3.3151260e+01
6.9629560e-02 2.9330640e+00 -3.3151260e+01 5.4760000e+01
Original file line number Diff line number Diff line change
Expand Up @@ -3,4 +3,4 @@
% See Eq. 40
% | an | an is a 2x2 matrix
0.00265598 -0.00562374
-0.00562374 0.01596000
-0.00562374 0.01596000
Original file line number Diff line number Diff line change
Expand Up @@ -3,4 +3,4 @@
% See Eq. 32
% | an | an is a 2x2 matrix
0.05554150 -0.03262482
-0.03262482 0.09151761
-0.03262482 0.09151761
Original file line number Diff line number Diff line change
@@ -0,0 +1,6 @@
% error matrix for z expansion axial form factor
% based on MINERvA nature, (kmax=6, the 2 free parameters)
% See Supplementary information Table 4 and Table 5
% | an | an is a 2x2 matrix
0.1089 -0.12045
-0.12045 0.25
Original file line number Diff line number Diff line change
@@ -0,0 +1,8 @@
% error matrix for z expansion axial form factor
% based on MINERvA nature, (kmax=8, the 4 free parameters)
% See Supplementary information Table 4 and Table 5
% | an | an is a 4x4 matrix
9.6100e-02 2.6040e-03 -5.4777e-01 5.6420e-01
2.6040e-03 4.9000e-01 -4.2560e-01 -1.9110e+00
-5.4777e-01 -4.2560e-01 3.6100e+00 -1.7955e+00
5.6420e-01 -1.9110e+00 -1.7955e+00 1.2250e+01
5 changes: 5 additions & 0 deletions data/covariances/Readme
Original file line number Diff line number Diff line change
@@ -0,0 +1,5 @@
This directory contains covariance matrices for the parameters of neutrino–nucleus interaction models.

Now we have
- z expension vector form factor
- z expension axial form factor
6 changes: 0 additions & 6 deletions data/covariances/testmat.dat

This file was deleted.

19 changes: 12 additions & 7 deletions src/Physics/QuasiElastic/XSection/ZExpAxialFormFactorModel.cxx
Original file line number Diff line number Diff line change
Expand Up @@ -42,7 +42,6 @@ AxialFormFactorModelI("genie::ZExpAxialFormFactorModel", config)
//____________________________________________________________________________
ZExpAxialFormFactorModel::~ZExpAxialFormFactorModel()
{
delete[] fZ_An;
}
//____________________________________________________________________________
double ZExpAxialFormFactorModel::FA(const Interaction * interaction) const
Expand Down Expand Up @@ -230,15 +229,21 @@ void ZExpAxialFormFactorModel::LoadConfig(void)
assert(fKmax > 0);

// z expansion coefficients
if (fQ4limit) fZ_An = new double [fKmax+5];
else fZ_An = new double [fKmax+1];

if(fQ4limit){
fZ_An.resize(fKmax+5);
}
else{
fZ_An.resize(fKmax+1);
}
// load the user-defined coefficient values
// -- A0 and An for n<fKmax are calculated from other means
std::vector<double> tmp_Z_A;
if(this->GetParamVect("QEL-Z_A", tmp_Z_A) != fKmax){
LOG("ZExpAxialFormFactorModel",pERROR) << "Wrong size of QEL-Z_A coefficients " << tmp_Z_A.size();
exit(1);
}
for (int ip=1;ip<fKmax+1;ip++) {
ostringstream alg_key;
alg_key << "QEL-Z_A" << ip;
GetParam( alg_key.str(), fZ_An[ip] ) ;
fZ_An[ip] = tmp_Z_A[ip-1];
}

this->FixCoeffs();
Expand Down
3 changes: 1 addition & 2 deletions src/Physics/QuasiElastic/XSection/ZExpAxialFormFactorModel.h
Original file line number Diff line number Diff line change
Expand Up @@ -60,8 +60,7 @@ class ZExpAxialFormFactorModel : public AxialFormFactorModelI {
double fT0;
double fTcut;
double fFA0;
//double fZ_An[11];
double* fZ_An;
std::vector<double> fZ_An;
};

} // genie namespace
Expand Down
1 change: 0 additions & 1 deletion src/Physics/QuasiElastic/XSection/ZExpELFormFactorModel.h
Original file line number Diff line number Diff line change
Expand Up @@ -65,7 +65,6 @@ class ZExpELFormFactorModel : public ELFormFactorsModelI {
double fGmp0;
double fGen0;
double fGmn0;
//double fZ_An[11];
std::vector<double> fZ_APn;
std::vector<double> fZ_BPn;
std::vector<double> fZ_ANn;
Expand Down