Skip to content

FLUKA open points #127

@freddieknets

Description

@freddieknets

TODO (short-term):

  • Check license and packaging
    • FEDB: not in Xcoll
    • LineBuilder and FlukaIO: not in Xcoll. But how packaged with FLUKA?
  • Allow local FEDB: possibility for only few files that will be added/overwrite the default FEDB
  • Tracking:
    • Check the preselection in C (and make it optional)
    • Double-check post-processing
    • Need a direct benchmark to a pure FLUKA model and tracking
    • Should _accumulated_ion_loss not be a collimator property, but use a dedicated particle state (one particle per collimator representing this)?
  • Implement Geant4Block
  • Implement BeamBeamElement (though use a different name to avoid confusion) that creates luminosity scatters
  • Issues with lowercase vs mixed in FLUKA: name of collimators, materials, assemblies, ... Need to check consistency!
  • Verify FLUKA crystal geometry: in test_elements.py::test_fluka_crystal after updating the tilt, jaw_D is wrong
  • Custom input file won't work with custom/generic assemblies or custom materials! How to link the auto-generated name to a correctly spawned custom assembly or material?
  • Make compatible with prebuild kernels: now the rebuilding makes twiss fail (ClosedOrbitSearchError with part.state= -2???)
  • Code compatibility with new Material
  • Return particle type selections
  • Better control over physics processes and cuts etc
  • Tests:
    • Fix failing tests (many particles etc)
    • Add tests for all prototypes in fluka_assemblies to verify they can be generated and are correct
    • Test donadon for hierarchy
    • Test fluka crystal
  • Assembly metadata
  • Add correct MoGR to FEDB
  • Benchmark example
  • The warning that multiple rfluka are running should be given only once. Maybe xc.fluka.engine.is_running() should be lighter?
  • Documenation!
  • Two engines in parallel (e.g. some FLUKA elements and some Geant4 elements) cause issues (different cwd)!
  • Add tests for all colldb variants with new assembly keyword
  • Better control of output from FLUKA FORTRAN code
  • Use colours in output (as in LineBuilder and Material)

TODO (long-term):

  • Translate FORTRAN code into C (native Xsuite)
  • Automatically get properties from FlukaAssembly: length, side, material (and crystal)?
  • Implement dynamic changes

Ideas:

  • Can we make the fluka elements OpenMP-compatible?
  • Maybe the engines should not be global, such that multiple connections can be ran in parallel in the same Python session? As a solution for OpenMP?
  • Create new class FlukaPrototypeModular where there are some variables in the file which can be replaced by Xcoll

Metadata

Metadata

Assignees

No one assigned

    Labels

    No labels
    No labels

    Type

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions