Skip to content
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
Original file line number Diff line number Diff line change
Expand Up @@ -200,7 +200,8 @@
navigation.volume());

// Do not resurrect a failed/finished navigation state
assert(navigation.is_alive());
assert(navigation.is_alive() ||
navigation.status() == navigation::status::e_unknown);
assert(!track.is_invalid());

const auto &det = navigation.detector();
Expand Down Expand Up @@ -231,7 +232,7 @@
// Do not exit if backward navigation starts on the outmost portal
if (navigation.is_on_portal()) {
DETRAY_DEBUG_HOST_DEVICE(
"-> Adjust trust lvl for \"end-of-world\"...");
"-> Adjust trust lvl for possible \"end-of-world\"...");

Check warning on line 235 in core/include/detray/navigation/detail/navigation_functions.hpp

View check run for this annotation

SonarQubeCloud / SonarCloud Code Analysis

Remove this empty statement.

See more on https://sonarcloud.io/project/issues?id=acts-project_detray&issues=AZ1n6mbK5O7JvTRGJ7NJ&open=AZ1n6mbK5O7JvTRGJ7NJ&pullRequest=1133
navigation.trust_level(detray::detail::is_invalid_value(
navigation.current().volume_link())
? navigation::trust_level::e_full
Expand Down
2 changes: 1 addition & 1 deletion core/include/detray/navigation/navigation_state.hpp
Original file line number Diff line number Diff line change
Expand Up @@ -170,7 +170,7 @@ class base_state : public detray::ranges::view_interface<
/// @returns the navigation heartbeat (is this stream still being updated?)
DETRAY_HOST_DEVICE
constexpr bool is_alive() const {
return cast_impl().status() > navigation::status::e_exit;
return cast_impl().status() > navigation::status::e_unknown;
}

/// @returns current navigation direction - const
Expand Down
15 changes: 10 additions & 5 deletions core/include/detray/propagator/propagator.hpp
Original file line number Diff line number Diff line change
Expand Up @@ -271,12 +271,17 @@

DETRAY_VERBOSE_HOST("Starting propagation for track:\n" << track);

// Initialize the navigation
DETRAY_VERBOSE_HOST("Initialize navigation...");
m_navigator.init(track, navigation, m_cfg.navigation, context);
propagation.heartbeat(navigation.is_alive());
bool is_init = false;
if (this->is_paused(propagation)) {
DETRAY_VERBOSE_HOST("Resuming propagation...");
} else {
// Initialize the navigation
DETRAY_VERBOSE_HOST("Initialize navigation...");
m_navigator.init(track, navigation, m_cfg.navigation, context);
propagation.heartbeat(navigation.is_alive());

bool is_init = true;
is_init = true;
}

// Run while there is a heartbeat. In order to help the compiler
// optimize this, and in order to make the code more GPU-friendly,
Expand All @@ -296,7 +301,7 @@

if (i % 2 == 0) {
DETRAY_VERBOSE_HOST_DEVICE("Propagation step: %d", i / 2);
DETRAY_VERBOSE_HOST_DEVICE("-> Path length: %f mm",

Check warning on line 304 in core/include/detray/propagator/propagator.hpp

View workflow job for this annotation

GitHub Actions / device-container (CUDA, C++20)

FP64 instructions emitted

Instruction(s) generated are 5 × `cvt.f64.f32` and 5 × `st.f64` in translation unit(s) `propagation_kernel.ptx`, `propagator_cuda_kernel.ptx`, and `propagator_cuda_kernel.ptx`.
stepping.path_length());

// Run all registered actors/aborters
Expand Down
Loading