tuned pipeline to 60 fps
This commit is contained in:
@@ -237,6 +237,22 @@ class PoissonSolver(object):
|
||||
return self._cap_solver.solve(f, domain)
|
||||
return self._sparse_solver.solve(f, domain)
|
||||
|
||||
def solve_masked_pair(self, f0, f1, mask, verbose=False):
|
||||
"""Solve two masked RHS fields, using a batched sparse path when available."""
|
||||
mask_arr = self._normalize_mask(mask, f0.shape)
|
||||
if mask_arr is None:
|
||||
return None, None
|
||||
if f1.shape != f0.shape:
|
||||
raise ValueError("Both masked RHS fields must have the same shape")
|
||||
if not numpy.any(mask_arr):
|
||||
empty = numpy.zeros_like(f0, dtype=numpy.float32)
|
||||
return empty, empty.copy()
|
||||
|
||||
domain = self._get_or_build_domain(mask_arr)
|
||||
if self.masked_config.method == "capfft":
|
||||
return self._cap_solver.solve(f0, domain), self._cap_solver.solve(f1, domain)
|
||||
return self._sparse_solver.solve_pair(f0, f1, domain)
|
||||
|
||||
def solve(self, f, verbose=False, mask=None):
|
||||
"""Solve Poisson equation on the prepared grid.
|
||||
|
||||
|
||||
Reference in New Issue
Block a user