Explore chapters and articles related to this topic
Sensor Networking Software and Architectures
Published in John R. Vacca, Handbook of Sensor Networking, 2015
C Standard Library (http://www.tutorialspoint.com/c_standard_library/index.htm): The C standard library is the standard library for the C programming language, as specified in the ANSI C standard. There are no other dependencies aside from libc, the C standard library. Diffie-Hellman and AES encryption are included in the core executable and the kernel module, respectively. The core executable, kernel module, and runtime loadable module have all been written in C with no floating-point math for maximum performance.
Characterizing Tradeoffs in Memory, Accuracy, and Speed for Chemistry Tabulation Techniques
Published in Combustion Science and Technology, 2023
Elizabeth Armstrong, John C. Hewson, James C. Sutherland
When using Lagrange interpolants for tabulation, the data to be interpolated are tabulated in memory. This means when the interpolant is queried at a new location, the correct neighboring points from the table have to be found in order to evaluate the Lagrange polynomial, , and their corresponding dependent variables. For non-uniform grids, this step requires a nonlinear solve for the index of each independent variable bracketing the new location. In this study, the lower_bound function from the C++ standard library, employing bisection, is used for determining these indices. In the case of uniform grids, the index search simplifies to a few arithmetic operations based on . The Lagrange polynomials themselves can also be simplified for constant grid spacing.
Resonance Scattering Treatment with the Windowed Multipole Formalism
Published in Nuclear Science and Engineering, 2023
Gavin Ridley, Benoit Forget, Timothy Burke
In order to test the accuracy of Algorithm 3, we have computed reference values of using the scipy[39] adaptive quadrature routine, scipy.integrate.quad, to evaluate the integral formulation [Eq. (13)]. In the approximation of the jump integral [Eq. (47)], only the first five terms in the series are retained. Where functions such as or appear, C++ standard library implementations have been employed. The implementation of from Ref.[35] has been employed. This results in the error profiles exhibited by Fig. 7, where we have plotted the real part of ). Because only the real part is of interest in resonance upscattering calculations, results on the error of the imaginary component are omitted.
Threadsafe Dynamic Neighbor Lists for Monte Carlo Ray Tracing
Published in Nuclear Science and Engineering, 2020
Sterling M. Harper, Paul K. Romano, Benoit Forget, Kord S. Smith
The second approach uses a singly linked list (C++ standard library std::forward_list) that is shared across all threads. For most cases of interest, MC neighbor lists are frequently read but rarely modified, and singly linked lists offer inherent threadsafe read access. Adding an element to the end of a linked list does not require reallocating or moving any of the other elements in the list, so one thread can safely write to the list while other threads read from the same list. Only one thread at a time can safely add elements to the list, so a locking mechanism is needed for write access, but this is a small cost given how infrequently the neighbor list must be modified. Also note that pointers in the list must be read and written atomically to prevent one thread from reading an invalid pointer that is being concurrently written to from another thread.