Skip to content

Commit

Permalink
Merge pull request #37 from vlvovch/devel
Browse files Browse the repository at this point in the history
Fix bugs with scaled moments in GUI
  • Loading branch information
vlvovch authored May 6, 2022
2 parents e8784ea + 3997711 commit 0a3d2ba
Show file tree
Hide file tree
Showing 3 changed files with 32 additions and 10 deletions.
2 changes: 1 addition & 1 deletion CMakeLists.txt
Original file line number Diff line number Diff line change
Expand Up @@ -8,7 +8,7 @@ project (ThermalFIST)
# The version number.
set (ThermalFIST_VERSION_MAJOR 1)
set (ThermalFIST_VERSION_MINOR 3)
set (ThermalFIST_VERSION_DEVEL 3)
set (ThermalFIST_VERSION_DEVEL 4)

# configure a header file to pass some of the CMake settings
# to the source code
Expand Down
20 changes: 15 additions & 5 deletions src/gui/QtThermalFIST/correlationsdialog.cpp
Original file line number Diff line number Diff line change
Expand Up @@ -232,7 +232,12 @@ void CorrelationsDialog::recalculate()
if (pdg1 == pdg2) {
qDebug() << pdg1 << " " << corr << " " << N1 << " " << N2 << endl;
}
tableCorr->setItem(i, j, new QTableWidgetItem(QString::number(corr / sqrt(N1 * N2))));
if (i != j) {
tableCorr->setItem(i, j, new QTableWidgetItem("N/A"));
}
else {
tableCorr->setItem(i, j, new QTableWidgetItem(QString::number(corr / N1)));
}
}
// Pearson
else if (comboQuantity->currentIndex() == 3) {
Expand Down Expand Up @@ -303,15 +308,20 @@ void CorrelationsDialog::recalculate()
double corr = model->Susc((ConservedCharge::Name)i, (ConservedCharge::Name)j) * model->Volume() * pow(model->Parameters().T, 3) * pow(xMath::GeVtoifm(), 3);
// Scaled moment
if (comboQuantity->currentIndex() == 2) {
tableCorr->setItem(i, j, new QTableWidgetItem(QString::number(corr / sqrt(N1 * N2))));
if (i != j) {
tableCorr->setItem(i, j, new QTableWidgetItem("N/A"));
}
else {
tableCorr->setItem(i, j, new QTableWidgetItem(QString::number(corr / N1)));
}
}
// Pearson
else if (comboQuantity->currentIndex() == 3) {
double var1 = wn1 * N1, var2 = wn2 * N2;
tableCorr->setItem(i, j, new QTableWidgetItem(QString::number(corr / sqrt(var1 * var2))));
}
// Delta
if (comboQuantity->currentIndex() == 4) {
else if (comboQuantity->currentIndex() == 4) {
double DeltaN1N2 = (N1 * wn2 - N2 * wn1) / (N2 - N1);
tableCorr->setItem(i1, i2, new QTableWidgetItem(QString::number(DeltaN1N2)));
}
Expand Down Expand Up @@ -434,15 +444,15 @@ void CorrelationsDialog::recalculate()

// Scaled moment
if (comboQuantity->currentIndex() == 2) {
tableCorr->setItem(i, i2, new QTableWidgetItem(QString::number(corr / sqrt(N1 * N2))));
tableCorr->setItem(i, i2, new QTableWidgetItem("N/A"));
}
// Pearson
else if (comboQuantity->currentIndex() == 3) {
double var1 = wn1 * N1, var2 = wn2 * N2;
tableCorr->setItem(i, i2, new QTableWidgetItem(QString::number(corr / sqrt(var1 * var2))));
}
// Delta
if (comboQuantity->currentIndex() == 4) {
else if (comboQuantity->currentIndex() == 4) {
double DeltaN1N2 = (N1 * wn2 - N2 * wn1) / (N2 - N1);
tableCorr->setItem(i, i2, new QTableWidgetItem(QString::number(DeltaN1N2)));
}
Expand Down
20 changes: 16 additions & 4 deletions src/library/HRGBase/ThermalModelBase.cpp
Original file line number Diff line number Diff line change
Expand Up @@ -916,15 +916,27 @@ namespace thermalfist {
for (size_t r = 0; r < decayContributions.size(); ++r) {
int rr = decayContributions[r].second;

m_TotalCorrel[i][i] += m_densities[rr] / m_Parameters.T * m_TPS->DecayCumulants()[i][r].first[1];
//m_TotalCorrel[i][i] += m_densities[rr] / m_Parameters.T * m_TPS->Particles()[i].DecayCumulants()[r].first[1];

m_TotalCorrel[i][i] += 2. * m_PrimCorrel[i][rr] * decayContributions[r].first;

for (size_t r2 = 0; r2 < decayContributions.size(); ++r2) {
int rr2 = decayContributions[r2].second;
m_TotalCorrel[i][i] += m_PrimCorrel[rr][rr2] * decayContributions[r].first * decayContributions[r2].first;
}

// Probabilistic decays
m_TotalCorrel[i][i] += m_densities[rr] / m_Parameters.T * m_TPS->DecayCumulants()[i][r].first[1];
//m_TotalCorrel[i][i] += m_densities[rr] / m_Parameters.T * m_TPS->Particles()[i].DecayCumulants()[r].first[1];
//if (rr != i) { // && !m_TPS->Particles()[r].IsStable()) {
// double nij = 0., ni = 0., nj = 0., dnij = 0.;
// const auto& decayDistributions = TPS()->ResonanceFinalStatesDistributions()[rr];
// for (size_t br = 0; br < decayDistributions.size(); ++br) {
// nij += decayDistributions[br].first * decayDistributions[br].second[i] * decayDistributions[br].second[i];
// ni += decayDistributions[br].first * decayDistributions[br].second[i];
// nj += decayDistributions[br].first * decayDistributions[br].second[i];
// }
// dnij = nij - ni * nj;
// m_TotalCorrel[i][i] += m_densities[rr] / Parameters().T * dnij;
//}
}
}

Expand Down Expand Up @@ -958,7 +970,7 @@ namespace thermalfist {
}
}


// Contribution from probabilistic decays
for (int r = 0; r < m_TPS->ComponentsNumber(); ++r) {
if (r != i && r != j) { // && !m_TPS->Particles()[r].IsStable()) {
double nij = 0., ni = 0., nj = 0., dnij = 0.;
Expand Down

0 comments on commit 0a3d2ba

Please sign in to comment.