Skip to content

Commit 8ccc204

Browse files
use new Ball()
1 parent 82a46d7 commit 8ccc204

File tree

2 files changed

+22
-23
lines changed

2 files changed

+22
-23
lines changed

src/domains.jl

Lines changed: 3 additions & 20 deletions
Original file line numberDiff line numberDiff line change
@@ -1,28 +1,11 @@
11
using DomainSets
2-
3-
abstract type AbstractDomain{T,N} <: Domain{T} end
4-
52
struct VarDomainPairing
63
variables
74
domain::Domain
85
end
96
Base.:(variable::ModelingToolkit.Num,domain::Domain) = VarDomainPairing(value(variable),domain)
7+
Base.:(variable::ModelingToolkit.Num,domain::Interval) = VarDomainPairing(value(variable),domain)
108
Base.:(variables::NTuple{N,ModelingToolkit.Num},domain::Domain) where N = VarDomainPairing(value.(variables),domain)
119

12-
## Specific Domains
13-
14-
struct IntervalDomain{T} <: AbstractDomain{T,1}
15-
lower::T
16-
upper::T
17-
end
18-
19-
20-
struct ProductDomain{D,T,N} <: AbstractDomain{T,N}
21-
domains::D
22-
end
23-
(args::AbstractDomain{T}...) where T = ProductDomain{typeof(args),T,length(args)}(args)
24-
25-
struct CircleDomain <: AbstractDomain{Float64,2}
26-
polar::Bool
27-
CircleDomain(polar=false) = new(polar)
28-
end
10+
@deprecate IntervalDomain(a,b) Interval(a,b)
11+
@deprecate CircleDomain() Ball()

test/domains.jl

Lines changed: 19 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -1,12 +1,28 @@
11
using ModelingToolkit
22
using DomainSets
33

4+
domain = Interval(0, 1)
5+
@test infimum(domain) == 0
6+
@test supremum(domain) == 1
7+
8+
domain = -1.0..2.0
9+
@test infimum(domain) == -1.0
10+
@test supremum(domain) == 2.0
11+
12+
domain = Ball()
13+
@test radius(ball) == 1.0
14+
@test center(ball) == [0.0,0.0,0.0]
15+
16+
domain = Ball(2.5, [1,2,3])
17+
@test radius(ball) == 2.5
18+
@test center(ball) == [1,2,3]
19+
420
@parameters t x
5-
domains = [t IntervalDomain(0.0,1.0),
6-
x IntervalDomain(0.0,1.0)]
21+
domains = [t Interval(0.0,1.0),
22+
x Interval(0.0,1.0)]
723

824
@parameters z
9-
z (IntervalDomain(0.0,1.0) IntervalDomain(0.0,1.0))
25+
z (Interval(0.0,1.0) Interval(0.0,1.0))
1026

1127
@parameters y
1228
(x,y) CircleDomain()

0 commit comments

Comments
 (0)