diff --git a/Documentation/Examples/CMakeLists.txt b/Documentation/Examples/CMakeLists.txt index 5ac721c54ac3d755bd013d241c9960c33252c1da..50c937f1415e3c4115c6299970664a795a42092c 100644 --- a/Documentation/Examples/CMakeLists.txt +++ b/Documentation/Examples/CMakeLists.txt @@ -8,12 +8,8 @@ target_link_libraries (particle_list_example CORSIKAparticles CORSIKAunits CORSI CORSIKA_ADD_EXAMPLE (geometry_example) target_link_libraries (geometry_example CORSIKAgeometry CORSIKAunits) -CORSIKA_ADD_EXAMPLE (logger_example) -target_link_libraries (logger_example CORSIKAunits CORSIKAlogging) - CORSIKA_ADD_EXAMPLE (stack_example) -target_link_libraries (stack_example SuperStupidStack CORSIKAunits - CORSIKAlogging) +target_link_libraries (stack_example SuperStupidStack CORSIKAunits) # address sanitizer is making this example too slow, so we only do "undefined" CORSIKA_ADD_EXAMPLE (boundary_example) @@ -43,6 +39,7 @@ target_link_libraries (cascade_example CORSIKAlogging CORSIKArandom ProcessSibyll + ProcessProposal CORSIKAcascade ProcessEnergyLoss ProcessTrackWriter @@ -95,13 +92,18 @@ if (Pythia8_FOUND) CORSIKAlogging CORSIKArandom CORSIKAcascade + ProcessProposal + ProcessPythia8 ProcessObservationPlane ProcessInteractionCounter ProcessTrackWriter + ProcessEnergyLoss ProcessTrackingLine ProcessParticleCut + ProcessOnShellCheck ProcessStackInspector ProcessLongitudinalProfile + ProcessCONEXSourceCut CORSIKAprocesses CORSIKAcascade CORSIKAparticles @@ -127,3 +129,34 @@ target_link_libraries (staticsequence_example CORSIKAunits CORSIKAgeometry CORSIKAlogging) + + +CORSIKA_ADD_EXAMPLE (proposal_example RUN_OPTIONS 100.) +target_link_libraries (proposal_example + SuperStupidStack + CORSIKAunits + CORSIKAlogging + CORSIKArandom + ProcessSibyll + ProcessPythia8 + ProcessUrQMD + ProcessSwitch + CORSIKAcascade + ProcessCONEXSourceCut + ProcessEnergyLoss + ProcessObservationPlane + ProcessInteractionCounter + ProcessTrackWriter + ProcessProposal + ProcessTrackingLine + ProcessParticleCut + ProcessOnShellCheck + ProcessStackInspector + ProcessLongitudinalProfile + CORSIKAprocesses + CORSIKAcascade + CORSIKAparticles + CORSIKAgeometry + CORSIKAenvironment + CORSIKAprocesssequence + ) diff --git a/Documentation/Examples/boundary_example.cc b/Documentation/Examples/boundary_example.cc index caaa087a4fb1e32b52daf54276c23626b419d4f0..26a8239bda592c1b9d45ed2536677cdf31f00e34 100644 --- a/Documentation/Examples/boundary_example.cc +++ b/Documentation/Examples/boundary_example.cc @@ -118,7 +118,7 @@ int main() { process::sibyll::Interaction sibyll; process::sibyll::Decay decay; - process::particle_cut::ParticleCut cut(20_GeV); + process::particle_cut::ParticleCut cut(20_GeV, true, true); process::track_writer::TrackWriter trackWriter("tracks.dat"); MyBoundaryCrossingProcess<true> boundaryCrossing("crossings.dat"); diff --git a/Documentation/Examples/cascade_example.cc b/Documentation/Examples/cascade_example.cc index 7aa0561c0e2849fa32e25fa1cf1a9d5f00f564b5..b77dcea923b9c5c40137420c893c72b47561a579 100644 --- a/Documentation/Examples/cascade_example.cc +++ b/Documentation/Examples/cascade_example.cc @@ -23,7 +23,7 @@ #include <corsika/geometry/Sphere.h> -#include <corsika/process/proposal/Interaction.h> +//#include <corsika/process/proposal/Interaction.h> #include <corsika/process/sibyll/Decay.h> #include <corsika/process/sibyll/Interaction.h> @@ -137,19 +137,19 @@ int main() { random::RNGManager::GetInstance().RegisterRandomStream("sibyll"); random::RNGManager::GetInstance().RegisterRandomStream("pythia"); - random::RNGManager::GetInstance().RegisterRandomStream("proposal"); + //random::RNGManager::GetInstance().RegisterRandomStream("proposal"); process::sibyll::Interaction sibyll; process::sibyll::NuclearInteraction sibyllNuc(sibyll, env); process::sibyll::Decay decay; // cascade with only HE model ==> HE cut - process::particle_cut::ParticleCut cut(80_GeV); - process::proposal::Interaction proposal(env, cut); + process::particle_cut::ParticleCut cut(80_GeV, true, true); + //process::proposal::Interaction proposal(env, cut); process::track_writer::TrackWriter trackWriter("tracks.dat"); process::energy_loss::EnergyLoss eLoss{showerAxis}; // assemble all processes into an ordered process list - auto sequence = stackInspect << sibyll << sibyllNuc << proposal << decay + auto sequence = stackInspect << sibyll << sibyllNuc /* << proposal*/ << decay /* << eLoss */ << cut << trackWriter; diff --git a/Documentation/Examples/cascade_proton_example.cc b/Documentation/Examples/cascade_proton_example.cc index 996d67eb9fd3383801f150c2eb6d50c87f2da36d..12f758a0d02653905a62df5d0d229b395cf74c59 100644 --- a/Documentation/Examples/cascade_proton_example.cc +++ b/Documentation/Examples/cascade_proton_example.cc @@ -123,7 +123,7 @@ int main() { // process::sibyll::NuclearInteraction sibyllNuc(env, sibyll); // process::sibyll::Decay decay; process::pythia::Decay decay; - process::particle_cut::ParticleCut cut(20_GeV); + process::particle_cut::ParticleCut cut(20_GeV, true, true); // random::RNGManager::GetInstance().RegisterRandomStream("HadronicElasticModel"); // process::HadronicElasticModel::HadronicElasticInteraction diff --git a/Documentation/Examples/proposal_example.cc b/Documentation/Examples/proposal_example.cc index de16fc65db2f361cea0ccb74aa28d8cbe089bf3d..d0699c45e69f9d0cf934c60bddab4780db388e0d 100644 --- a/Documentation/Examples/proposal_example.cc +++ b/Documentation/Examples/proposal_example.cc @@ -1,7 +1,5 @@ /* - * (c) Copyright 2018 CORSIKA Project, corsika-project@lists.kit.edu - * - * See file AUTHORS for a list of contributors. + * (c) Copyright 2020 CORSIKA Project, corsika-project@lists.kit.edu * * This software is distributed under the terms of the GNU General Public * Licence version 3 (GPL Version 3). See file LICENSE for a full version of @@ -107,8 +105,8 @@ int main(int argc, char** argv) { cout << "input momentum: " << plab.GetComponents() / 1_GeV << ", norm = " << plab.norm() << endl; - auto const observationHeight = 1.4_km + builder.earthRadius; - auto const injectionHeight = 112.75_km + builder.earthRadius; + auto const observationHeight = 1.4_km + builder.getEarthRadius(); + auto const injectionHeight = 112.75_km + builder.getEarthRadius(); auto const t = -observationHeight * cos(thetaRad) + sqrt(-si::detail::static_pow<2>(sin(thetaRad) * observationHeight) + si::detail::static_pow<2>(injectionHeight)); @@ -136,15 +134,12 @@ int main(int argc, char** argv) { PROPOSAL::InterpolationDef::path_to_tables = "~/.local/share/PROPOSAL/tables/"; PROPOSAL::InterpolationDef::path_to_tables_readonly = "~/.local/share/PROPOSAL/tables/"; - process::particle_cut::ParticleCut cut(10_GeV); + process::particle_cut::ParticleCut cut(10_GeV, false, true); process::proposal::Interaction proposal(env, cut); process::proposal::ContinuousProcess em_continuous(env, cut); process::interaction_counter::InteractionCounter proposalCounted(proposal); process::track_writer::TrackWriter trackWriter("tracks.dat"); - // energy cut; n.b. ParticleCut needs to be modified not to discard EM particles! - /* process::particle_cut::ParticleCut cut{60_GeV}; */ - // long. profile; columns for gamma, e+, e- still need to be added process::longitudinal_profile::LongitudinalProfile longprof{showerAxis}; @@ -161,7 +156,6 @@ int main(int argc, char** argv) { // define air shower object, run simulation tracking_line::TrackingLine tracking; cascade::Cascade EAS(env, tracking, sequence, stack); - EAS.Init(); // to fix the point of first interaction, uncomment the following two lines: // EAS.SetNodes(); diff --git a/Documentation/Examples/vertical_EAS.cc b/Documentation/Examples/vertical_EAS.cc index 17a80986d0485df5043a1216926ca1da9f542f2f..60d4f3fc9d4d699baa6af054a3f8b8c849addac0 100644 --- a/Documentation/Examples/vertical_EAS.cc +++ b/Documentation/Examples/vertical_EAS.cc @@ -181,7 +181,7 @@ int main(int argc, char** argv) { decaySibyll.PrintDecayConfig(); - process::particle_cut::ParticleCut cut{60_GeV}; + process::particle_cut::ParticleCut cut{60_GeV, true, true}; process::on_shell_check::OnShellCheck reset_particle_mass(1.e-3, 1.e-1, false); diff --git a/Processes/CMakeLists.txt b/Processes/CMakeLists.txt index c405641bbcbbae6bc614cb8f6f377465c41a700f..509bf305e20364d1151c9ad101504eec5245191a 100644 --- a/Processes/CMakeLists.txt +++ b/Processes/CMakeLists.txt @@ -13,7 +13,6 @@ if (CONEX_FOUND) endif (CONEX_FOUND) add_subdirectory (HadronicElasticModel) add_subdirectory (UrQMD) -add_subdirectory (SwitchProcess) add_subdirectory (Proposal) # continuous physics @@ -34,15 +33,15 @@ add_subdirectory (SwitchProcess) ########################################## # add_custom_target(CORSIKAprocesses) add_library (CORSIKAprocesses INTERFACE) -add_dependencies(CORSIKAprocesses ProcessNullModel) -add_dependencies(CORSIKAprocesses ProcessSibyll) -add_dependencies(CORSIKAprocesses ProcessProposal) +add_dependencies (CORSIKAprocesses ProcessNullModel) +add_dependencies (CORSIKAprocesses ProcessSibyll) +add_dependencies (CORSIKAprocesses ProcessProposal) if (Pythia8_FOUND) - add_dependencies(CORSIKAprocesses ProcessPythia) + add_dependencies (CORSIKAprocesses ProcessPythia8) endif (Pythia8_FOUND) -add_dependencies(CORSIKAprocesses ProcessStackInspector) -add_dependencies(CORSIKAprocesses ProcessTrackingLine) -add_dependencies(CORSIKAprocesses ProcessEnergyLoss) -add_dependencies(CORSIKAprocesses ProcessUrQMD) -add_dependencies(CORSIKAprocesses ProcessParticleCut) -add_dependencies(CORSIKAprocesses ProcessOnShellCheck) +add_dependencies (CORSIKAprocesses ProcessStackInspector) +add_dependencies (CORSIKAprocesses ProcessTrackingLine) +add_dependencies (CORSIKAprocesses ProcessEnergyLoss) +add_dependencies (CORSIKAprocesses ProcessUrQMD) +add_dependencies (CORSIKAprocesses ProcessParticleCut) +add_dependencies (CORSIKAprocesses ProcessOnShellCheck) diff --git a/Processes/ParticleCut/ParticleCut.cc b/Processes/ParticleCut/ParticleCut.cc index d9194614d61d259defd1b0463ce580d262d379ee..d7af1c81c61f4d2a004cd9d034f9e1a3169a7395 100644 --- a/Processes/ParticleCut/ParticleCut.cc +++ b/Processes/ParticleCut/ParticleCut.cc @@ -26,14 +26,13 @@ namespace corsika::process { if (vP.GetPID() == particles::Code::Nucleus) { // calculate energy per nucleon auto const ElabNuc = energyLab / vP.GetNuclearA(); - return (ElabNuc < fECut); + return (ElabNuc < eCut_); } else { - return (energyLab < fECut); + return (energyLab < eCut_); } } bool ParticleCut::ParticleIsEmParticle(Code vCode) const { - // FOR NOW: switch switch (vCode) { case Code::Gamma: case Code::Electron: @@ -63,26 +62,25 @@ namespace corsika::process { const Code pid = p.GetPID(); HEPEnergyType energy = p.GetEnergy(); cout << "ProcessCut: DoSecondaries: " << pid << " E= " << energy - << ", EcutTot=" << (fEmEnergy + fInvEnergy + fEnergy) / 1_GeV << " GeV" + << ", EcutTot=" << (emEnergy_ + invEnergy_ + energy_) / 1_GeV << " GeV" << endl; - /* if (ParticleIsEmParticle(pid)) { */ - /* cout << "removing em. particle..." << endl; */ - /* fEmEnergy += energy; */ - /* fEmCount += 1; */ - /* p.Delete(); */ - /* } else */ - if (ParticleIsInvisible(pid)) { + if (cutEm_ && ParticleIsEmParticle(pid)) { + cout << "removing em. particle..." << endl; + emEnergy_ += energy; + emCount_ += 1; + p.Delete(); + } else if (cutInv_ && ParticleIsInvisible(pid)) { cout << "removing inv. particle..." << endl; - fInvEnergy += energy; - fInvCount += 1; + invEnergy_ += energy; + invCount_ += 1; p.Delete(); } else if (ParticleIsBelowEnergyCut(p)) { cout << "removing low en. particle..." << endl; - fEnergy += energy; + energy_ += energy; p.Delete(); } else if (p.GetTime() > 10_ms) { cout << "removing OLD particle..." << endl; - fEnergy += energy; + energy_ += energy; p.Delete(); } else { ++p; // next entry in SecondaryView @@ -91,24 +89,24 @@ namespace corsika::process { return EProcessReturn::eOk; } - ParticleCut::ParticleCut(const units::si::HEPEnergyType vCut) - : fECut(vCut) { + ParticleCut::ParticleCut(const units::si::HEPEnergyType eCut, bool em, bool inv) + : eCut_(eCut), cutEm_(em), cutInv_(inv) { - fEmEnergy = 0._GeV; - fEmCount = 0; - fInvEnergy = 0._GeV; - fInvCount = 0; - fEnergy = 0._GeV; + emEnergy_ = 0_GeV; + emCount_ = 0; + invEnergy_ = 0_GeV; + invCount_ = 0; + energy_ = 0_GeV; } void ParticleCut::ShowResults() { cout << " ******************************" << endl << " ParticleCut: " << endl - << " energy in em. component (GeV): " << fEmEnergy / 1_GeV << endl - << " no. of em. particles injected: " << fEmCount << endl - << " energy in inv. component (GeV): " << fInvEnergy / 1_GeV << endl - << " no. of inv. particles injected: " << fInvCount << endl - << " energy below particle cut (GeV): " << fEnergy / 1_GeV << endl + << " energy in em. component (GeV): " << emEnergy_ / 1_GeV << endl + << " no. of em. particles injected: " << emCount_ << endl + << " energy in inv. component (GeV): " << invEnergy_ / 1_GeV << endl + << " no. of inv. particles injected: " << invCount_ << endl + << " energy below particle cut (GeV): " << energy_ / 1_GeV << endl << " ******************************" << endl; } } // namespace particle_cut diff --git a/Processes/ParticleCut/ParticleCut.h b/Processes/ParticleCut/ParticleCut.h index f298f484e371d098abf8284b52b1eaa3bf737867..74796f9e20beceb8b55c7e3656f47b46d1f38539 100644 --- a/Processes/ParticleCut/ParticleCut.h +++ b/Processes/ParticleCut/ParticleCut.h @@ -16,18 +16,19 @@ namespace corsika::process { namespace particle_cut { class ParticleCut : public process::SecondariesProcess<ParticleCut> { - - units::si::HEPEnergyType const fECut; - - units::si::HEPEnergyType fEnergy = 0 * units::si::electronvolt; - units::si::HEPEnergyType fEmEnergy = 0 * units::si::electronvolt; - unsigned int fEmCount = 0; - units::si::HEPEnergyType fInvEnergy = 0 * units::si::electronvolt; - unsigned int fInvCount = 0; - + + units::si::HEPEnergyType const eCut_; + bool cutEm_; + bool cutInv_; + + units::si::HEPEnergyType energy_ = 0 * units::si::electronvolt; + units::si::HEPEnergyType emEnergy_ = 0 * units::si::electronvolt; + unsigned int emCount_ = 0; + units::si::HEPEnergyType invEnergy_ = 0 * units::si::electronvolt; + unsigned int invCount_ = 0; + public: - ParticleCut(const units::si::HEPEnergyType eCut) - : fECut(eCut) {} + ParticleCut(const units::si::HEPEnergyType eCut, bool em, bool inv); bool ParticleIsInvisible(particles::Code) const; EProcessReturn DoSecondaries(corsika::setup::StackView&); @@ -39,12 +40,12 @@ namespace corsika::process { void ShowResults(); - units::si::HEPEnergyType GetECut() const { return fECut; } - units::si::HEPEnergyType GetInvEnergy() const { return fInvEnergy; } - units::si::HEPEnergyType GetCutEnergy() const { return fEnergy; } - units::si::HEPEnergyType GetEmEnergy() const { return fEmEnergy; } - unsigned int GetNumberEmParticles() const { return fEmCount; } - unsigned int GetNumberInvParticles() const { return fInvCount; } + units::si::HEPEnergyType GetECut() const { return eCut_; } + units::si::HEPEnergyType GetInvEnergy() const { return invEnergy_; } + units::si::HEPEnergyType GetCutEnergy() const { return energy_; } + units::si::HEPEnergyType GetEmEnergy() const { return emEnergy_; } + unsigned int GetNumberEmParticles() const { return emCount_; } + unsigned int GetNumberInvParticles() const { return invCount_; } }; } // namespace particle_cut } // namespace corsika::process diff --git a/Processes/ParticleCut/testParticleCut.cc b/Processes/ParticleCut/testParticleCut.cc index b3d375f206ae1cd3c61cfdcdd53c5408f7a0cb68..7b3ce99eae1a166bc50efca8b40113872f8b3713 100644 --- a/Processes/ParticleCut/testParticleCut.cc +++ b/Processes/ParticleCut/testParticleCut.cc @@ -43,9 +43,9 @@ TEST_CASE("ParticleCut", "[processes]") { particles::Code::Electron, particles::Code::MuPlus, particles::Code::NuE, particles::Code::Neutron}; - SECTION("cut on particle type") { + SECTION("cut on particle type: inv") { - ParticleCut cut(20_GeV); + ParticleCut cut(20_GeV, false, true); // add primary particle to stack auto particle = stack.AddParticle( @@ -70,11 +70,41 @@ TEST_CASE("ParticleCut", "[processes]") { cut.DoSecondaries(view); - REQUIRE(view.GetSize() == 8); + CHECK(view.GetSize() == 9); } + SECTION("cut on particle type: em") { + + ParticleCut cut(20_GeV, true, false); + + // add primary particle to stack + auto particle = stack.AddParticle( + std::tuple<particles::Code, units::si::HEPEnergyType, + corsika::stack::MomentumVector, geometry::Point, units::si::TimeType>{ + particles::Code::Proton, Eabove, + corsika::stack::MomentumVector(rootCS, {0_GeV, 0_GeV, 0_GeV}), + geometry::Point(rootCS, 0_m, 0_m, 0_m), 0_ns}); + // view on secondary particles + corsika::stack::SecondaryView view(particle); + // ref. to primary particle through the secondary view. + // only this way the secondary view is populated + auto projectile = view.GetProjectile(); + // add secondaries, all with energies above the threshold + // only cut is by species + for (auto proType : particleList) + projectile.AddSecondary(std::tuple<particles::Code, units::si::HEPEnergyType, + corsika::stack::MomentumVector, geometry::Point, + units::si::TimeType>{ + proType, Eabove, corsika::stack::MomentumVector(rootCS, {0_GeV, 0_GeV, 0_GeV}), + geometry::Point(rootCS, 0_m, 0_m, 0_m), 0_ns}); + + cut.DoSecondaries(view); + + CHECK(view.GetSize() == 9); + } + SECTION("cut low energy") { - ParticleCut cut(20_GeV); + ParticleCut cut(20_GeV, true, true); // add primary particle to stack auto particle = stack.AddParticle( @@ -99,6 +129,6 @@ TEST_CASE("ParticleCut", "[processes]") { cut.DoSecondaries(view); - REQUIRE(view.GetSize() == 0); + CHECK(view.GetSize() == 0); } } diff --git a/Processes/Proposal/CMakeLists.txt b/Processes/Proposal/CMakeLists.txt index b793dc1dde842ecfedab584c4888872dbdb9df0d..c3bc28b8379eccd948b489ee7c035225c0eb416a 100644 --- a/Processes/Proposal/CMakeLists.txt +++ b/Processes/Proposal/CMakeLists.txt @@ -1,8 +1,4 @@ -set (ADD_PYTHON OFF) # for proposal -set (BUILD_TESTING OFF) # for proposal add_subdirectory (PROPOSAL) -unset (ADD_PYTHON) -unset (BUILD_TESTING) FILE (GLOB MODEL_SOURCES *.cc) FILE (GLOB MODEL_HEADERS *.h) @@ -11,8 +7,10 @@ SET (MODEL_NAMESPACE corsika/process/proposal) ADD_LIBRARY (ProcessProposal STATIC ${MODEL_SOURCES}) CORSIKA_COPY_HEADERS_TO_NAMESPACE (ProcessProposal ${MODEL_NAMESPACE} ${MODEL_HEADERS}) -SET_TARGET_PROPERTIES ( ProcessProposal PROPERTIES VERSION ${PROJECT_VERSION} - SOVERSION 1 +SET_TARGET_PROPERTIES ( + ProcessProposal + PROPERTIES VERSION ${PROJECT_VERSION} + SOVERSION 1 ) TARGET_LINK_LIBRARIES ( diff --git a/Processes/Proposal/ContinuousProcess.cc b/Processes/Proposal/ContinuousProcess.cc index d95202e5de358f102314dde343550f7fe5348f2d..537a2498510128ce245f3372a1b56d58cff689fe 100644 --- a/Processes/Proposal/ContinuousProcess.cc +++ b/Processes/Proposal/ContinuousProcess.cc @@ -1,3 +1,11 @@ +/* + * (c) Copyright 2020 CORSIKA Project, corsika-project@lists.kit.edu + * + * This software is distributed under the terms of the GNU General Public + * Licence version 3 (GPL Version 3). See file LICENSE for a full version of + * the license. + */ + #include <PROPOSAL/PROPOSAL.h> #include <corsika/environment/IMediumModel.h> #include <corsika/environment/NuclearComposition.h> diff --git a/Processes/Proposal/ContinuousProcess.h b/Processes/Proposal/ContinuousProcess.h index 7e234ac632e3a01dd29164e14a6b5d34125f2e06..c5f6fb701390ca52018cf1d308f30dbb06269ffc 100644 --- a/Processes/Proposal/ContinuousProcess.h +++ b/Processes/Proposal/ContinuousProcess.h @@ -1,15 +1,12 @@ /* * (c) Copyright 2018 CORSIKA Project, corsika-project@lists.kit.edu * - * See file AUTHORS for a list of contributors. - * * This software is distributed under the terms of the GNU General Public * Licence version 3 (GPL Version 3). See file LICENSE for a full version of * the license. */ -#ifndef _corsika_process_proposal_interaction_h_ -#define _corsika_process_proposal_interaction_h_ +#pragma once #include <PROPOSAL/PROPOSAL.h> #include <corsika/environment/Environment.h> @@ -19,7 +16,6 @@ #include <corsika/random/RNGManager.h> #include <corsika/random/UniformRealDistribution.h> #include <unordered_map> -#include "PROPOSAL/PROPOSAL.h" using std::unordered_map; @@ -102,8 +98,6 @@ namespace corsika::process::proposal { template <typename TEnvironment> ContinuousProcess(TEnvironment const&, CORSIKA_ParticleCut&); - void Init(){}; - template <typename Particle> corsika::units::si::HEPEnergyType TotalEnergyLoss( Particle const&, corsika::units::si::GrammageType const&); @@ -120,4 +114,3 @@ namespace corsika::process::proposal { }; } // namespace corsika::process::proposal -#endif diff --git a/Processes/Proposal/Interaction.cc b/Processes/Proposal/Interaction.cc index fb567b39813e53dc204ed42a695bc7e8df536b86..b1f25c96e6e389efb2a98bd0ae2a4f6c6761d812 100644 --- a/Processes/Proposal/Interaction.cc +++ b/Processes/Proposal/Interaction.cc @@ -1,3 +1,11 @@ +/* + * (c) Copyright 2020 CORSIKA Project, corsika-project@lists.kit.edu + * + * This software is distributed under the terms of the GNU General Public + * Licence version 3 (GPL Version 3). See file LICENSE for a full version of + * the license. + */ + #include <corsika/environment/IMediumModel.h> #include <corsika/environment/NuclearComposition.h> diff --git a/Processes/Proposal/Interaction.h b/Processes/Proposal/Interaction.h index f3c3b2cf0b61b5a63524332f1f1a12f2b89a9827..6e1b2d57941c204a1a5a1b210c0e62f54a7295c8 100644 --- a/Processes/Proposal/Interaction.h +++ b/Processes/Proposal/Interaction.h @@ -1,15 +1,14 @@ /* - * (c) Copyright 2018 CORSIKA Project, corsika-project@lists.kit.edu - * - * See file AUTHORS for a list of contributors. + * (c) Copyright 2020 CORSIKA Project, corsika-project@lists.kit.edu * * This software is distributed under the terms of the GNU General Public * Licence version 3 (GPL Version 3). See file LICENSE for a full version of * the license. */ -#ifndef _corsika_process_proposal_interaction_h_ -#define _corsika_process_proposalythia_interaction_h_ +#pragma once + +#include <PROPOSAL/PROPOSAL.h> #include <corsika/environment/Environment.h> #include <corsika/particles/ParticleProperties.h> @@ -18,7 +17,6 @@ #include <corsika/random/RNGManager.h> #include <corsika/random/UniformRealDistribution.h> #include <array> -#include "PROPOSAL/PROPOSAL.h" using namespace corsika::environment; using namespace corsika::units::si; @@ -100,8 +98,6 @@ namespace corsika::process::proposal { template <typename TEnvironment> Interaction(TEnvironment const& env, CORSIKA_ParticleCut& cut); - void Init(){}; - template <typename Particle> corsika::process::EProcessReturn DoInteraction(Particle&); @@ -109,4 +105,3 @@ namespace corsika::process::proposal { corsika::units::si::GrammageType GetInteractionLength(TParticle const& p); }; } // namespace corsika::process::proposal -#endif diff --git a/ThirdParty/CMakeLists.txt b/ThirdParty/CMakeLists.txt index 98eaf3a72346dc2a153bfbc668d9f0479bfcbcc6..202c3908863a7f9b9616815898b1956cd14df72e 100644 --- a/ThirdParty/CMakeLists.txt +++ b/ThirdParty/CMakeLists.txt @@ -18,9 +18,7 @@ mark_as_advanced (ThirdPartyChoiceValues) ############################################################################## # Build spdlog -#set (CMAKE_POSITION_INDEPENDENT_CODE ON) # this is needed for PROPOSAL... since it is dynamic add_subdirectory (spdlog) -#unset (CMAKE_POSITION_INDEPENDENT_CODE) ############################################################################## # check for boost: either use C8 or system-level installation diff --git a/do-copyright.py b/do-copyright.py index a94ee4ddddd5a5e597b18a8afcee7c9e8c919316..4c2b29cc7a2c79418a5a8517018806e6c0aa1a9e 100755 --- a/do-copyright.py +++ b/do-copyright.py @@ -21,7 +21,7 @@ Debug settings are 0: nothing, 1: checking, 2: filesystem """ Debug = 0 -excludeDirs = ["ThirdParty", "git", "build", "install"] +excludeDirs = ["ThirdParty", "git", "build", "install", "PROPOSAL"] excludeFiles = ['PhysicalConstants.h','CorsikaFenvOSX.cc', 'sgn.h'] extensions = [".cc", ".h", ".test"]