- Nov 14, 2024
-
-
Andrew Gray authored
-
Andrew Gray authored
Added functions in multiscale_tests.py module that plot the error convergence and time-evolution of modes of a DG solver on this problem with surrogate-augmented approximation spaces. To create the plots, just execute multiscale_tests.py from the command line. The surrogate used in the approximation space is a coarse-grained approximation of the steady-state solution (in the sense that the surrogate doesn't resolve the fine-scale features).
-
- Oct 08, 2024
-
-
Andrew Gray authored
-
- Oct 07, 2024
-
-
Andrew Gray authored
Extracting MLP from PINN into its own module; removed exact steady-state solution (for now) because of bug in mach-area solver The area-mach relation uses scipy.optimize.root to get the Mach for a given area-to-sonic-throat-area ratio and a parameter specifying if the subsonic or supersonic branch should be returned. Currently this operation sometimes errors out.
-
Andrew Gray authored
-
Andrew Gray authored
-
- Sep 27, 2024
-
-
Andrew Gray authored
-
Andrew Gray authored
-
- Sep 18, 2024
-
-
Andrew Gray authored
-
- Sep 13, 2024
-
-
Andrew Gray authored
Added class that computes the exact steady-state solution for the quasi-1d compressible Euler equations with a subsonic-supersonic flow (no shocks).
-
- Sep 04, 2024
-
-
Andrew Gray authored
-
- Sep 02, 2024
-
-
Andrew Gray authored
The PINN only works for smooth solutions, but it seems to replicate Figure 6 from the paper "Continuous and discontinuous compressible fows in a converging-diverging channel solved by physics-informed neural networks without exogenous data".
-
- Aug 26, 2024
-
-
Andrew Gray authored
Removed duplicated concrete implementation for PINN vs. non-PINN approximation spaces for the DG operators. Now there are only two operator construction functions: one function constructs DG operators that do not satisfy the SBP property and the second function constructs DG operators that satisfy an SBP property. The former function approximates the entries of the mass and stiffness matrices using the LGL quadrature, while the latter function uses a quadrature rule that is exact for (FF)' = {(fg)' : f, g are in F}.
-
Andrew Gray authored
ApproximationSpace1D specifies the finite dimensional vector space of functions used to approximate the solution on a given element. Included two concrete implementations of ApproximationSpace1D: 1) PolynomialSpace1D: Space of Taylor polynomials ceneterd at the element's midpoint. 2) PinnSpace1D: Same as PolynomialSpace1D but with the constant function (or the highest order polynomial term) replaced by a PINN.
-
- Aug 25, 2024
-
-
Andrew Gray authored
-
Andrew Gray authored
Previously the solve() function in advec1d.py solved for the steady-state solution and computed the error, but it makes sense for the latter functionality to be in its own function.
-
Andrew Gray authored
-
Andrew Gray authored
Added mask for mesh nodes array so that padded entries in array are ignored when evaluating a function on the mesh nodes. Instead of directly evaluating a function `f` on `mesh.x`, the user must call `mesh.apply(f)`. Without this mask the SBP-PINN solver from the previous commit doesn't work properly.
-
- Aug 23, 2024
-
-
Andrew Gray authored
Physical elements can now have different numbers of nodes via padding of the global storage array.
-
Andrew Gray authored
-
Andrew Gray authored
-
- Aug 12, 2024
-
-
Andrew Gray authored
The least-squares solve doesn't seem to be finding positive weights, so a loop will need to be added that checks for positive solutions to the least-squares problems for multiple quadrature nodes. For instance, start with a number of equispaced nodes equal to dim(F), and increase the number of equispaced nodes until a positive result is found. The mesh in utils/mesh.py will also need to be updated to handle hybrid meshes, i.e. meshes where elements have a variable number of nodes.
-
Andrew Gray authored
Replaced linear systems solves with built-in jax solver instead of explicitly computing matrix inverses
-
- Aug 09, 2024
-
-
Andrew Gray authored
-
Andrew Gray authored
-
- Aug 08, 2024
-
-
Andrew Gray authored
-
Andrew Gray authored
The modal SBP operators are just mass and stiffness matrices that satisfy a discrete integration by parts formula. In particular, the integrals in the stiffness matrix are guaranteed to be exact via FSBP theory. Verified implementation because modal SBP operators produce the same error as the DG PINN approach where mass and stiffness matrices are approximated with quadrature rules that are exact for polynomials up to a certain degree.
-
Andrew Gray authored
-
Andrew Gray authored
-
Andrew Gray authored
-