Giter Site home page Giter Site logo

Comments (5)

amandalund avatar amandalund commented on August 25, 2024 1

Currently the model finder always returns a valid model: using the integral approach, the process xs is recalculated at the post-step energy and if it's zero (no applicable process) then no model is returned before actually trying to select a model. We might be able to use your suggestion if the post-step process xs is zero and resample a process, but I don't think we would need material-dependent model applicabilities.

from celeritas.

amandalund avatar amandalund commented on August 25, 2024

the applicability doesn't allow us to limit correctly the lower energy of models based on their production cutoff, so we end up sampling inapplicable discrete models (most seriously in the case of stopped positrons)

Is this because of the applicability, or because the process is sampled from the cross sections calculated at the pre-step energy and the particle might lose energy over the step (possibly making the sampled process/model inapplicable at the post-step energy)?

from celeritas.

sethrj avatar sethrj commented on August 25, 2024

It's because the way I implemented applicability requires the same lower bound for all materials. If we could do material-dependent, then we would be able to select the actually applicable models from the post-slowing-down energy.

from celeritas.

amandalund avatar amandalund commented on August 25, 2024

But won't we still be sampling the (possibly now inapplicable) process from the pre-step energy?

from celeritas.

sethrj avatar sethrj commented on August 25, 2024

Right: we calculated the process cross sections using pre-step energies. Well, perhaps we could adjust the logic at the end of select_discrete_interaction so that if the model finder returns "no model" (which it can do with the post-step energy), the associated per-process xs is set to zero (and the macro xs reduced accordingly) and we return to the top of the function to resample a process? Unless there are processes with upper energy bounds, this will allow us to always sample a process that has a valid model.

from celeritas.

Related Issues (20)

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.