Mercurial > repos > public > sbplib_julia
changeset 1404:481960ca366f feature/boundary_conditions
Fix type signatures
author | Vidar Stiernström <vidar.stiernstrom@it.uu.se> |
---|---|
date | Tue, 22 Aug 2023 21:52:10 +0200 |
parents | 35840a0681d1 |
children | da1b85c80a3f |
files | src/BoundaryConditions/boundary_condition.jl |
diffstat | 1 files changed, 11 insertions(+), 10 deletions(-) [+] |
line wrap: on
line diff
--- a/src/BoundaryConditions/boundary_condition.jl Wed Jul 26 23:11:02 2023 +0200 +++ b/src/BoundaryConditions/boundary_condition.jl Tue Aug 22 21:52:10 2023 +0200 @@ -4,7 +4,7 @@ A type for implementing data needed in order to impose a boundary condition. Subtypes refer to perticular types of boundary conditions, e.g. Neumann conditions. """ -abstract type BoundaryCondition end +abstract type BoundaryCondition{T} end """ id(::BoundaryCondition) @@ -30,17 +30,18 @@ function discretize_data(grid, bc::BoundaryCondition) return eval_on(boundary_grid(grid, id(bc)), data(bc)) end - -struct NeumannCondition{DT} <: BoundaryCondition{DT} - data::DT + +struct DirichletCondition{T} <: BoundaryCondition{T} + data::T + id::BoundaryIdentifier +end +id(bc::DirichletCondition) = bc.id +data(bc::DirichletCondition) = bc.data + +struct NeumannCondition{T} <: BoundaryCondition{T} + data::T id::BoundaryIdentifier end id(bc::NeumannCondition) = bc.id data(bc::NeumannCondition) = bc.data -struct DirichletCondition{DT} <: BoundaryCondition{DT} - data::DT - id::BoundaryIdentifier -end -id(bc::NeumannCondition) = bc.id -data(bc::DirichletCondition) = bc.data \ No newline at end of file