From ae1cc6f14270385df367978a4abc5fca58456e74 Mon Sep 17 00:00:00 2001 From: JordiManyer Date: Thu, 5 Jan 2023 11:28:46 +0100 Subject: [PATCH] Added DistributedAdaptedDiscreteModels --- src/Geometry.jl | 17 +++++++++++++++++ src/GridapDistributed.jl | 1 + 2 files changed, 18 insertions(+) diff --git a/src/Geometry.jl b/src/Geometry.jl index 919651f8..0a66b7ed 100644 --- a/src/Geometry.jl +++ b/src/Geometry.jl @@ -319,6 +319,23 @@ function Geometry.DiscreteModel( DistributedDiscreteModel(models,gids) end +# DistributedAdaptedDiscreteModels + +const DistributedAdaptedDiscreteModel{Dc,Dp} = DistributedDiscreteModel{Dc,Dp,<:AbstractPData{<:AdaptedDiscreteModel{Dc,Dp}}} + +function DistributedAdaptedDiscreteModel(model ::AbstractDistributedDiscreteModel, + parent ::AbstractDistributedDiscreteModel, + glue ::AbstractPData{<:AdaptivityGlue}) + models = map_parts(local_views(model),local_views(parent),glue) do model, parent, glue + AdaptedDiscreteModel(model,parent,glue) + end + return DistributedDiscreteModel(models,get_cell_gids(model)) +end + +function Adaptivity.get_adaptivity_glue(model::DistributedAdaptedDiscreteModel) + return map_parts(Adaptivity.get_adaptivity_glue,local_views(model)) +end + # RedistributeGlue : Redistributing discrete models """ diff --git a/src/GridapDistributed.jl b/src/GridapDistributed.jl index b7614384..7fe7ad9d 100644 --- a/src/GridapDistributed.jl +++ b/src/GridapDistributed.jl @@ -2,6 +2,7 @@ module GridapDistributed using Gridap using Gridap.Helpers +using Gridap.Adaptivity using Gridap.Algebra using Gridap.Arrays using Gridap.Fields