Open Access. Powered by Scholars. Published by Universities.®
Articles 1 - 2 of 2
Full-Text Articles in Engineering
The Development And Validation Of Sinatra: A Three-Dimensional Direct Simulation Monte Carlo (Dsmc) Code Written In Object-Oriented C++ And Performed On Cartesian Grids, David Matthew Galvez
The Development And Validation Of Sinatra: A Three-Dimensional Direct Simulation Monte Carlo (Dsmc) Code Written In Object-Oriented C++ And Performed On Cartesian Grids, David Matthew Galvez
Master's Theses
The field of Computational Fluid Dynamics (CFD) primarily involves the approximation of the Navier-Stokes equations. However, these equations are only valid when the flow is considered continuous such that molecular interactions are abundant and predictable. The Knudsen number, $Kn$, which is defined as the ratio of the flow's mean free path, $\lambda$, to some characteristic length, $L$, quantifies the continuity of any flow, and when this parameter is large enough, alternative methods must be employed to simulate gases. The Direct Simulation Monte Carlo (DSMC) method is one which simulates rarefied gas flows by directly simulating the particles that compose the …
Funqual: User-Defined, Statically-Checked Call Graph Constraints In C++, Andrew P. Nelson
Funqual: User-Defined, Statically-Checked Call Graph Constraints In C++, Andrew P. Nelson
Master's Theses
Static analysis tools can aid programmers by reporting potential programming mistakes prior to the execution of a program. Funqual is a static analysis tool that reads C++17 code ``in the wild'' and checks that the function call graph follows a set of rules which can be defined by the user. This sort of analysis can help the programmer to avoid errors such as accidentally calling blocking functions in time-sensitive contexts or accidentally allocating memory in heap-sensitive environments. To accomplish this, we create a type system whereby functions can be given user-defined type qualifiers and where users can define their own …