Simulate 2D/3D multilayer hydrogeological systems.
Uses a conjugate gradient solver preconditioned with algebraic multigrid for efficient solution of very large models.
Supports usual Dirichlet, Neumann and Cauchy constant or time-dependent boundary conditions.
Handles multiple vertical and horizontal wells.
Enables cell-wise or zonation of material properties.
Plots heads, Darcy or true velocities, and streamlines, slices, etc.
Simple example script:
flow_model = FD3DSolver(grid, wells, boundary_conditions);
flow_model.solveSteadyState();
grid.plotCellData(flow_model.Solutions.h, 'Levels', -15:1:15);
hold on;
plotStreamline(flow_model.Solution.solver.V, ... , 'Color', 'b');
grid.plotVectorData(flow_model.Solution.VC, 'Subsample', 10);
Delineate steady-state catchments and time-dependent capture zones for injection/pumping wells in 2D/3D hydrogeological systems.
Quantify pore volumes contributing to each well with CatchmentAnalyzer class.
Example script:
catchment_analyzer = CatchmentAnalyzer(fow_model);
catchment_analyzer.analyzePumpingCatchments();
grid.plotCellData(catchment_analyzer.Solutions.Pumping.Partitions, 'EdgeColor', 'none');
Simulate forward/backward travel times without particle tracking.
Visualize isochrones and flow paths at any time threshold.
Example script:
travel_times = TravelTimeSimulator(fow_model);
travel_times.ComputeTravelTimes('backward');
grid.plotCellData(travel_times.Solutions.backward, 'Fill', 'on', 'Levels, 0:10:100);
Map hydraulic connections between injection/pumping pairs.
Calculate allocated flow rates between wells in a multi-well field.
Example script:
catchment_analyzer.analyzeWellPairs(fow_model);
grid.plotCellData(catchment_analyzer.Solutions.WellPairs.Indices, 'EdgeColor', 'none');
Get timely results
Use an integrated workflow for data analysis, simulations and reporting
Automatic generation of figures/reports for many scenarios
Methods validated in 5+ peer-reviewed publications
Extensible toolbox using object oriented design
Ready educational live scripts for interactive teaching
Visualization of hydrogeological objects in the classroom