Okay, today is bad for me, but I can start looking at this soon.
In the meantime, we should just go ahead and invite Igor to join GENIE. He seems like a really useful and passionate user of the code. I'm only sort of half joking here...
pax
Gabe
> On Feb 16, 2017, at 06:49, Costas Andreopoulos <[log in to unmask]> wrote:
>
> Hi GENIE
>
> Please see below. The first seems particularly severe, and probably explains some oddities we
> saw when we used the configuration with the Nieves model to compare with bubble chamber data.
>
> cheers
> C
>
> Begin forwarded message:
>
> From: Игорь Какорин <[log in to unmask]<mailto:[log in to unmask]>>
> Subject: Re: CC QEL Double differential cross sections
> Date: 12 February 2017 at 20:56:15 GMT
> To: "Roda, Marco" <[log in to unmask]<mailto:[log in to unmask]>>
> Cc: "[log in to unmask]<mailto:[log in to unmask]>" <[log in to unmask]<mailto:[log in to unmask]>>
>
> Hello Costas and Marco,
>
> I would like to report you about some bugs in Nieves models.
> The first and the most important bug is that NievesQELCC can't generate event "antineutrino on hydrogen", because of the condition in the line 141 of the file QELEventGenerator.cxx:
> 140 // Skip if not a nuclear target
> 141 if(interaction->InitState<http://classgenie_1_1interaction.html/#aafa184d80e706dc606f7dd335c4065a0>().Tgt<http://classgenie_1_1initialstate.html/#a480a87f76cce1bdf36a6767528b6a330>().IsNucleus<http://classgenie_1_1target.html/#a1349533340e11f54fa62e6f12e4f1866>())
>
> The case 'not a nuclar target' is not processed at all.
>
> The other bugs is memory leaks. To fix them you should:
> 1.Add the following lines in the destructor INukeHadroData::~INukeHadroData() [INukeHadroData.cxx]:
> // p/n+p/n hA x-section splines
> delete fXSecPp_Tot;
> delete fXSecPp_Elas;
> delete fXSecPp_Reac;
> delete fXSecPn_Tot;
> delete fXSecPn_Elas;
> delete fXSecPn_Reac;
> delete fXSecNn_Tot;
> delete fXSecNn_Elas;
> delete fXSecNn_Reac;
>
>
> // K+A x-section fraction splines
> delete fFracKA_Tot;
> delete fFracKA_Elas;
> delete fFracKA_Inel;
> delete fFracKA_Abs;
>
> 2.Add the following lines in the destructor MECHadronTensor::~MECHadronTensor() [MECHadronTensor.cxx]:
> vector<int>::const_iterator it=fKnownTensors.begin();
> for( ; it!=fKnownTensors.end(); ++it)
> {
> MECHadronTensor::MECHadronTensorTable table = fTargetTensorTables[*it];
> for(int tensorType = 0; tensorType <= MECHadronTensor::kMHTValenciaDeltapn; ++tensorType)
> {
> vector<genie::BLI2DNonUnifGrid*> Grids = table.Table[(MECHadronTensor::MECHadronTensorType_t)tensorType];
> for (vector<genie::BLI2DNonUnifGrid*>::iterator gridit = Grids.begin() ; gridit != Grids.end(); ++gridit)
> {
> genie::BLI2DNonUnifGrid *hadTensorGrid = *gridit;
> if(hadTensorGrid)
> {
> delete hadTensorGrid;
> hadTensorGrid=0;
> }
> }
> }
> }
>
> 3.Add the line#136 in the method void QELEventGenerator::ProcessEventRecord(GHepRecord * evrec) const [QELEventGenerator.cxx] :
> delete interaction;
>
> (before the lines:
> LOG("QELEvent", pWARN)
> << "Couldn't select a valid (pF, w, Q^2) tuple after " << iter << " iterations";
> evrec->EventFlags()->SetBitNumber(kKineGenErr, true);
> genie::exceptions::EVGThreadException exception;
> exception.SetReason("Couldn't select kinematics");
> exception.SwitchOnFastForward();
> ).
>
>
> Could you help me, please, and give an advise how to fix bug#1 correctly. I'm not an expert in Nieves model, so I don't have an idea how do it.
>
> And one more question, which INTRANUKE is better to use (more robust and tested) default one,2014 or 2015?
>
>
> Thanks in advance!
>
>
> Sincerly yours,
> Igor Kakorin
>
|