From a885ecacee1bde544703d02d27e7249b5c951de0 Mon Sep 17 00:00:00 2001 From: Simone Silvestri Date: Mon, 16 Sep 2024 16:54:09 -0400 Subject: [PATCH] fix tests --- distributed_grid.jl | 8 ++++---- test/distributed_tests_utils.jl | 2 +- test/test_distributed_tripolar.jl | 34 +++++++++++++++---------------- 3 files changed, 21 insertions(+), 23 deletions(-) diff --git a/distributed_grid.jl b/distributed_grid.jl index 0d69d0c..5ce42c8 100644 --- a/distributed_grid.jl +++ b/distributed_grid.jl @@ -9,12 +9,12 @@ distributed_grid = TripolarGrid(arch; size = (100, 100, 1), z = (-1000, 0)) distributed_grid = mask_singularities(distributed_grid) - run_tripolar_simulation(distributed_grid) + simulation = run_tripolar_simulation(distributed_grid) if arch.local_rank == 0 - η = reconstruct_global_field(model.free_surface.η) - u = reconstruct_global_field(model.velocities.u) - v = reconstruct_global_field(model.velocities.v) + η = reconstruct_global_field(simulation.model.free_surface.η) + u = reconstruct_global_field(simulation.model.velocities.u) + v = reconstruct_global_field(simulation.model.velocities.v) fill_halo_regions!(η) fill_halo_regions!(u) diff --git a/test/distributed_tests_utils.jl b/test/distributed_tests_utils.jl index 456ac2d..7b365bc 100644 --- a/test/distributed_tests_utils.jl +++ b/test/distributed_tests_utils.jl @@ -19,7 +19,7 @@ function run_tripolar_simulation(grid) run!(simulation) - return nothing + return simulation end function mask_singularities(underlying_grid) diff --git a/test/test_distributed_tripolar.jl b/test/test_distributed_tripolar.jl index eaf13dc..e937e28 100644 --- a/test/test_distributed_tripolar.jl +++ b/test/test_distributed_tripolar.jl @@ -12,12 +12,12 @@ run_distributed_grid = """ distributed_grid = TripolarGrid(arch; size = (100, 100, 1), z = (-1000, 0)) distributed_grid = mask_singularities(distributed_grid) - run_tripolar_simulation(distributed_grid) + simulation = run_tripolar_simulation(distributed_grid) if arch.local_rank == 0 - η = reconstruct_global_field(model.free_surface.η) - u = reconstruct_global_field(model.velocities.u) - v = reconstruct_global_field(model.velocities.v) + η = reconstruct_global_field(simulation.model.free_surface.η) + u = reconstruct_global_field(simulation.model.velocities.u) + v = reconstruct_global_field(simulation.model.velocities.v) fill_halo_regions!(η) fill_halo_regions!(u) @@ -30,28 +30,26 @@ run_distributed_grid = """ """ @testset "Test distributed TripolarGrid..." begin - write("distributed_grid.jl", run_distributed_grid) + # Run the distributed grid simulation + write("distributed_grid.jl", run_distributed_grid) mpiexec(cmd -> run(`$cmd -n 4 julia --project distributed_grid.jl`)) + rm("distributed_grid.jl") - arch = CPU() - - grid = TripolarGrid(arch; size = (100, 100, 1), z = (-1000, 0)) - λp = grid.conformal_mapping.first_pole_longitude - φp = grid.conformal_mapping.north_poles_latitude - + # Run the serial computation + grid = TripolarGrid(size = (100, 100, 1), z = (-1000, 0)) grid = mask_singularities(grid) - run_tripolar_simulation(grid) + simulation = run_tripolar_simulation(grid) - # Serial quantities - us, vs, ws = model.velocities - ηs = model.free_surface.η + # Retrieve Serial quantities + us, vs, ws = simulation.model.velocities + ηs = simulation.model.free_surface.η - # Parallel quantities + # Retrieve Parallel quantities up = jldopen("distributed_tripolar.jld2")["u"] - vp = jldopen("distributed_tripolar.jld2")["u"] - ηp = jldopen("distributed_tripolar.jld2")["u"] + vp = jldopen("distributed_tripolar.jld2")["v"] + ηp = jldopen("distributed_tripolar.jld2")["η"] @test us.data ≈ up @test vs.data ≈ vp