Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Sparse Space-Time Grid Discretizations #6

Open
miguelraz opened this issue Nov 13, 2018 · 1 comment
Open

Sparse Space-Time Grid Discretizations #6

miguelraz opened this issue Nov 13, 2018 · 1 comment

Comments

@miguelraz
Copy link
Contributor

From the paper, page 14:

Since the derivative and Laplacian operators are sparse matrices, and since the maximum
allowable time step scales with the resolution h and thus with the linear problem size N due to the Courant-Friedrichs-Lewy (CFL) criterion, the overall cost to calculate a solution
scales as O(N^2 log^(D−1)(N)), which is significantly more efficient than the
O(N^(D+1)) scaling for a full grid. Here D is the number of spatial dimensions. In principle it is possible to employ a
sparse space-time discretisation as well, reducing the cost further to O(N log^D (N)). However,this will require a more complex time evolution algorithm instead of
the ODE solver we employ, and we thus do not investigate this approach in this paper.

But the paper doesn't go into what the ODE solvers would need to satisfy so be able to get the optimization. Is there any chance this could be implemented with DifferentialEquations.jl internals?

@eschnett
Copy link
Contributor

No, this cannot be done with DifferentialEquations, since this requires using a sparse structure in space-time. The way to do this would be to set up a sparse (D+1)-dimensional grid, and solve the hyperbolic equation via a global (in space-time!) solver, supplying the usual required initial and boundary conditions.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

No branches or pull requests

2 participants