.


:




:

































 

 

 

 


20.3.




i

landmarks) amount, [ , full, inf)). landmarks! level, [ zero, top, inf]). landmarks! flow, [ minf, zero, inflow, inf]).

correspond! amount:zero, level:zero). correspond! amount:full, level:top).

legalstate(t Level, Amount, Outflow, Netflow]):-mplus[ Amount, Level), mplus[ Level, Outflow),

Inflow flow:inflDw/std, %

sum(Outflow, Netflow, Inflow), % Netflow Inflow - Outflow
detiv(Amount, Metflow),
not overflowing,- Level). %

overflowing! level:top..inf/_). %

initial! I level: zero/inc, amount,- zero/inc, flow: zero/inc, flow: inflow/dec 3).

Prolog ( ).

= [ level:zero/inc, amount;zero/inc, flow:zero/inc, flow:inficu/dec]

Behaviour =

[level:zero/inc,amount:zero/inc, flow:zero/inc,flow:inflow/dec], [level:zero..top/inc,amount:zero..full/inc,flow:zero.. inflow/inc,

flow:zero..inflow/dec], [level:zero..top/std,amount:zero..full/std,flow:inflow/stdE flow:zero/std]]


20.



, 20.2, . . 20.7 , 20.4 .

, . , , ( ).

?- initial(S), simulate(S, Behaviour, 10]. Behaviour =

[ [volt:vO/dec,volt:zero/inc,... ], [volt:zero..vO/dec,volt:zero..vO/inc,...], [volt:zero..vO/std,volt:zero,.vO/std,... ] ]


UC1


C1


C2


UC2


. 20.7,

20.4. , . 20.7

h


landmarks(volt, [minf, zero, vO, inf]). i landmarks(voltR, [minf, zero, vO, inf]). % landmarks(current, [minf, zero, inf]).



correspond! voltR:zero, current:zero).


%

legalstate[ [ UC1, 2, UR, CurrR] ) sumi , , uci], mplus(UR, CurrR), deriv(UC2, CurrR)r

Sum(CurrR, current:CurrCl, current:zero/std), * CurrCl deriv{ UCI, current:CurrCl). * CurrCl - d/dt UCI


CurrR


initial! [ volt:v0/dec, volt:zero/inc, voltR:vO/dec, current:zero..inf/dec]).

, , 1 , 2 , ( ).





:


: 2015-10-01; !; : 381 |


:

:

- , .
==> ...

1693 - | 1508 -


© 2015-2024 lektsii.org - -

: 0.011 .