Git Product home page Git Product logo

Comments (6)

fmauger avatar fmauger commented on June 17, 2024

You are right. The CMake "target_include_dirs" function does not exist on my CMake 3.16.3. However the HEPMC3_INCLUDE_DIRS variable is not set on HepMC3 3.2.2 I've just installed for the test, only HEPMC3_INCLUDE_DIR.
So for my setup, your proposal works with :

target_include_directories(ex02 PUBLIC ${HEPMC3_INCLUDE_DIR})

I propose to push the mod ASAP.

Concerning the output negative masses, the ex02 example does not explicitely set particle's mass (I consider the PDG PID is enough to determine such external information on client side). However I see in GenParticle.h :

/// This function will return mass as set by a generator/tool.
/// If not set, it will return momentum().m()
double generated_mass() const;

I was able to reproduce what you observed. I'm not sure of the objective of this generated_mass() method. It is unclear for me.
I've checked that if I force the use of set_generated_mass({some value}), then the generated_mass() effectively return the forced value. But it sounds strange to me why we should indirectly inform the particle mass when we already have the PID.

My guess is that on client side, people using BxDecay0 to bridge its output to HepMC3 should take care of this aspect depending on their needs and further usage.

from bxdecay0.

fmauger avatar fmauger commented on June 17, 2024

I have pushed in the develop branch a possible fix for ex02's CMake stuff.

Also I have added some explicit usage of the particle masses for decays generated by BxDecay0. It seems that the HepMC3 ASCII output now contains the proper masses (in MeV). Checked both for Mo100 DBD (e- only) and Co60 decays (e- and gammas).

Let me know if this makes sens for you.

from bxdecay0.

DWilliamNaim avatar DWilliamNaim commented on June 17, 2024

Hello I had the same troubles with this as well. CMake was giving me issues until I saw that you had updated the develop branch. I recently pulled and reinstalled the program. Now CMake will work but when I make and run the executable I get some errors:

dyld: Library not loaded: @rpath/libHepMC3.3.dylib
Reason: image not found
Abort trap: 6

Am I missing something else here?

from bxdecay0.

fmauger avatar fmauger commented on June 17, 2024

Hum. Unfortunately my knowledge about macos specificities is almost zero.
AFAIR there are some differences in the way CMake handles RPATH between Linux and macos.
Maybe we miss here some plateform specific RPATH rule.
I'll check ASAP in the documentation (but I'm afraid I'm in vacation theses days ;-) )

from bxdecay0.

cas829 avatar cas829 commented on June 17, 2024

The cmake fix and the mass fix both made sense to me. Thanks. I am having issues with the momentum four vector in ex02. For the energy part of the four vector, why is c*t used as if it were a position four vector? If this was intended, besides the energy, then how would you call the energy?
Also, the momentum unit for output in confusing as well. In ex02.cxx the units are suggested to be MeV on line 87. For the terminal output and other modules in the program, such as bxdecay0/particle.cc the file suggests units of MeV for the momentum array. In the comments of dxdecay0/event.h line 52 it is stated that the momentum is expressed in MeV/c. It’d be helpful if I could get that output clarified to me.

from bxdecay0.

fmauger avatar fmauger commented on June 17, 2024

Thanks for noticing this issue. I have fixed the quadri-momentum 4th component in ex02 and have added comments.
The main README now (develop branch) contains a new section about BxDecay0 physical units. Hope it will make sense for you. Feedback will be appreciated.

from bxdecay0.

Related Issues (17)

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    πŸ–– Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. πŸ“ŠπŸ“ˆπŸŽ‰

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google ❀️ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.