Skip to content

Commit 08d9c12

Browse files
author
Brad Carman
committed
bug added to stream_connectors.jl
1 parent 288e803 commit 08d9c12

File tree

1 file changed

+46
-20
lines changed

1 file changed

+46
-20
lines changed

test/stream_connectors.jl

Lines changed: 46 additions & 20 deletions
Original file line numberDiff line numberDiff line change
@@ -350,7 +350,37 @@ function StepSource(; P, name)
350350
ODESystem(eqs, t, vars, pars; name, systems)
351351
end
352352

353-
function Pipe(; P, R, name)
353+
function StaticVolume(; P, V, name)
354+
D = Differential(t)
355+
356+
pars = @parameters begin
357+
p_int = P
358+
vol = V
359+
end
360+
361+
vars = @variables begin
362+
p(t) = p_int
363+
vrho(t)
364+
drho(t) = 0
365+
end
366+
367+
# nodes -------------------------------
368+
systems = @named begin H = HydraulicPort(; P = p_int) end
369+
370+
# fluid props ------------------------
371+
rho_0 = H.rho
372+
373+
# equations ---------------------------
374+
eqs = [D(vrho) ~ drho
375+
vrho ~ rho_0 * (1 + p / H.bulk)
376+
H.p ~ p
377+
H.dm ~ drho * V]
378+
379+
ODESystem(eqs, t, vars, pars; name, systems,
380+
defaults = [vrho => rho_0 * (1 + p_int / H.bulk)])
381+
end
382+
383+
function PipeBase(; P, R, name)
354384
pars = @parameters begin
355385
p_int = P
356386
resistance = R
@@ -371,35 +401,31 @@ function Pipe(; P, R, name)
371401
ODESystem(eqs, t, vars, pars; name, systems)
372402
end
373403

374-
function StaticVolume(; P, V, name)
375-
D = Differential(t)
404+
function Pipe(; P, R, name)
376405

377406
pars = @parameters begin
378407
p_int = P
379-
vol = V
408+
resistance=R
380409
end
381410

382-
vars = @variables begin
383-
p(t) = p_int
384-
vrho(t)
385-
drho(t) = 0
411+
vars = []
412+
413+
systems = @named begin
414+
HA = HydraulicPort(; P=p_int)
415+
HB = HydraulicPort(; P=p_int)
416+
p12 = PipeBase(; P=p_int, R=resistance)
417+
v1 = StaticVolume(; P=p_int, V=0.01)
418+
v2 = StaticVolume(; P=p_int, V=0.01)
386419
end
387420

388-
# nodes -------------------------------
389-
systems = @named begin H = HydraulicPort(; P = p_int) end
421+
eqs = [
422+
connect(v1.H, p12.HA, HA)
423+
connect(v2.H, p12.HB, HB)]
390424

391-
# fluid props ------------------------
392-
rho_0 = H.rho
425+
ODESystem(eqs, t, vars, pars; name, systems)
426+
end
393427

394-
# equations ---------------------------
395-
eqs = [D(vrho) ~ drho
396-
vrho ~ rho_0 * (1 + p / H.bulk)
397-
H.p ~ p
398-
H.dm ~ drho * V]
399428

400-
ODESystem(eqs, t, vars, pars; name, systems,
401-
defaults = [vrho => rho_0 * (1 + p_int / H.bulk)])
402-
end
403429

404430
function TwoFluidSystem(; name)
405431
pars = []

0 commit comments

Comments
 (0)