SAFPWR home page
MSLB accident: general modeling features
rtvsym_1.dat (download) represents a typical input.dat file for the reference symmetrical case.
S1= read
read
&S00gen
dsec= .25 is usually adequate. It can be modified, if needed, by appending new applications.
l9= 1: single loop, symmetrical system.
owvp= t: primary pump flow is specified as pump volumetric flow.
This option neglects the pump volumetric flow variations due to density variation effects.
This may be verified with the Euler flow kinetic model with constant manometric head rather than constant volumetric flow at pump location.
osplit= f: no splitting in annular space and core.
ewed and it9gt data are not relevant if euler not activated.
S00gvg: generic sg data list.
clvgv= 0: bubble drift (relative vapor/liquid Celerity difference in sg) core is not activated.
vadgv= 106.78: total available volume for Annular and Dome regions.
As sg generic input, it is the same for all sg; if requested it could be specified for each sg.
This vadgv value is typical for 3-loop PWR sg. Evaluating free dome volume is not easy because of the presence of separator and dryer. In addition there is some liquid water in the dome. In initial condition the model assumes that the dome volume includes saturated steam only.
bottom / Lstb
hsb= 1.29e6: Hot Zero Power condition. h(p3= 153.25E05, t= 563.31 K)
xwab= 1.0: no bottom bypass;
it may be of interest to experiment with 0 < xwab < 1 for testing the effect of lagging water temp in bottom.
core_config
Lstcfg
i9gr= 1:as there is no control rod displacement in the core, 1 core configuration suffice, the axial composition properties being specified via f2ci, sfci,...
However it may be advisable to represent the distribution by entering several (composition) configurations. This could be obtained, for example by collapsing several slices from a 3-d design calculation with the standard neutronic data generation procedure.
It will be observed later on all mslb runs that, around the critical phase of the transient, where the safety margins are the lowest, most of the power is generated in the bottom layer of the core and the results, in terms of safety margins, are thus mostly dependent on core properties there. It would be appropriate, therefore, to refine composition definition there.
Definition of a stuck rod position would also necessitate entering additional axial composition. However, if the stuck rod is located in the upper, low reactivity weight region, this complication could not be worthwhile.
Lstau
Rau_sec
SAFPWR does not allow defining a subcritical core with arbitrary power as initial condition.
In order to work around the problem, we make use the rau_sec time interpolator to add an uniform rau(sec) to the tabulated reactivity. This au [Arrèt d'Urgence] anti-reactivity has been provided for specifying the anti-reactivity imposed in a point-kinetics model, but is used here for adding on, from sec = 10, a sub criticality margin step (actually in .001 s) of 4% to the initially critical core.
Admittedly, the initial subcritical (by 4%) neutron distribution differs from that of the supposed initial critical condition. However, sensitivity studies will demonstrate that the safety related properties are very weakly dependent from initial power, as long that the latter is very low and, consequently, also from its neutron distribution.
core
&Lstc
i9c= k9c= 20: fine mesh and fine node representation allows tracing the rapid power (f2ci) and water properties (h2ci, x2ci,..) axial changes.
oqc= 0: default option: neutronic power generated in pellets, thermal power q2ci in water obtained from fine pellet conduction model.
it9fc= 2: normally, with dsec= .25, a single power iteration should suffice, at each step, for reaching feedback's-converged power distribution.
However, around the reactivity peak, the program may need to automatically halve dsec. Selecting it9dsc= 1 will allow dsec, later on, to double only once to recover its input value. By this way we keep control on dsec, which is useful for testing sensitivity of results to dsec.
A large value for it9fc was, in the first runs, necessary to allow following the rapid density variations observed when boiling is present in the core.
However these spurious oscillations have been shown to be caused by an bad choice of the metal conduction meshing in the pressu, so that it9fc= 1 is finally adequate.
xfuc= 1: all the thermal power is generated in the pellet. A more realistic value (ex: .98) would probably not alter the results as is observed that q2c does not lag too much f2c.
The following data dhyc,...swc are typical .
clogbc= cloghc= 1e6 simulate zero flux boundary conditions.
Actually, the sharp flux peak observed at core bottom necessitates a more realistic representation of the reflector effect by means, for example, of a tabulation of log boundary conditions vs water density in reflector.
It is also expected that the axial leakage of thermal flux cannot anymore be neglected and a thermal neutron group correction may be necessary, if requested.
epsatc= .1: controls the PJ approximation
epfc= .01 is ok for controlling the power iterations
dsmin= .01 << .25 allow dsec reduction when required for allowing second degree representation of the flux evolution around power peak.
dsmax= .251 is taken just above .25 in order to force returning dsec to its input value later on.
In our mslb applications the allowance for increasing dsec when reaching the terminal, quieter part, of the transient is set manually by appending new applications. Automatic adjustment is possible but will requires additional experience.
f23min,...:arbitrary large values are entered to prevent automatic dsec adjustment
Lstuc
Average pellet data are typical.
As q2c remains close to f2c, is not expected that these data will impact the safety margins much. In particular, qhgc, the film transfer coeff should have a weak effect on the peak fuel center temp. (verify!)
Lstci
f2ci
It is a key data. We select 1e-9 * nominal power distributed as a top-peaked profile, typical of end-of-cycle, zero power condition (see later the profile curve).
Such a profile is a by-product of the sub criticality margin calculations.
This margin has been, tentatively, taken as 4% instead of 2%, because stuck rod assumption was not retained. This margin is one of the key parameters to be investigated.
The profile is, of course, also important insofar as it influences initial sub criticality margin but, as it shifts completely towards the bottom, its initial shape should not be critical. (verify!)
Lstck: no comments
&Lstg Although the neutronic data set is highly simplified, it should allow gaining a first, qualitative feeling on how the transient behaves.
Lstgg
vmg= :only 2 water vm points. For real applications, the polygonal tabulation vs vm allows arbitrary trend.
beg= .0076: typical value for UO2 fuel. (lower values will be selected later for simulating MOX core)
Lstrvg
rog= .098775, 0:
values obtained by integration of a supposedly linear plot of ∂ro/∂mv , from .41e-3 at initial conditions vm=1.33e-3 to .35e-3 at =1.17e-3.
These values may be typical of a UO2 core. Higher values will be tested for simulating mox fuel.
roug= typical value, borrowed from GWZP benchmark
rouug= 0: no quadratical correction;
robg= -8.3 pcm/ppm.
robbg= .6e-3 pcm/ppm²
Lstsxvg
also borrowed from GWZP benchmark.
sdog may be critical for modeling neutron leakage to bottom reflector when power profile is strongly tilted towards the bottom.
hot_channel
Lstuc7
we retained average pellet values.
Lstfxyvg
fxyog= 2*1.22: arbitrary value.
dome / Lstd
wed= 101.3: assumed design value
xwcd= .019:
should be adjusted to obtain the correct dome temp in nominal condition. A low value causes the dome to boil before the core outlet.
npressu
The Lagrange model must of course be used for modeling pressu voiding and refilling.
Lsto: reference euler model.
xwco= 1-xwcd
omo= .8: not relevant if redo, loop1 not used
Lstx
it9x: not relevant for npressu (Lagrange)
m9x= 11 : 5 equal nodes in expansion line + 6 equal nodes in pressu vessel.
oqx= f: no heat conduction exchange with pressu metal. Verify effect of oqx= t
Remaining data are typical "design" values.
Lstux: must be entered if oqx= f
Lstuxm: no relevant if oqx= f
Lstp
vp= 39 is the pressu vessel volume
v2p= 18.3: initial volume of vapor region is an important parameter controlling the development of pressu voiding and refill.
oqyp= t: pressu heater regulation enabled
mqyp= 6: yp heater in the first node of pressu vessel.
zqyp= 8.515: heater plane level at top of node xm=6.
It is the heater cutoff level
hfpir= 0: for the moment, heat transfer at pir interface neglected.
evap_fact= 0: spray droplets supposed to reach rip interface as saturated water, without evaporation in the pressu region.
Itp_y_x/: adjusted to get qyp= .452e6/2 at nominal pressure p3= 153.25e5.
Lsts
hss= 1.29e6: redundant because hss is taken as hsb= 1.29e6 in ini, pressu
Itp_y_x/: at initial condition as
wss= qyp/(hl0(p3)-hss) to close the pressu enthalpy balance.
loop_1 (3 identical loops: xwl=3)
Lstli1: 1 node for hot leg, 8 equal nodes in sg, 1 node for pump with 62.146e6 W heat rate dissipation, 1 node for cold leg.
azli, cfrli, ggli: data superfluous because flow is imposed as pump volumetric flow, but may be useful for monitoring pressure distribution over primary loop if euler module is activated.
qvuli (heat capacity, J/m³/K),
rfil (thermal exchange resistance, K/W/m²),
sqli (exchange area),
vuli (associated metal volume) are used for sg tubes nodes only because jqli=0 for other nodes.
Heat released by metallic to primary water in the course of its cooling should mitigate the reactivity effect of the cooling; this effect is conservatively neglected.
wyli= 0: these data must be used to activate the pressu level control by feed-and-bleed. This is a slow action, neglected in our analysis. It must be activated for bringing the system to cold zero power condition for sg break repair.
steam_gen_1
Lstn1: see (?) for sg geometric data
van= 32.85 is the target water volume for level regulation.
In the course of mslb feedwater is imposed so that level regulation does not operate. Thus, van value is actually not used
v2an= 20: actual initial water volume in an. The duration of sg voiding is directly linked to v2an. (investigate)
p3n= 71.035e5:
tln(71.035e5)= 560.05;
t(hsb=1.29e6, p3=153.25e5)= 563.15, hence some 3 K below core inlet temp.
Normally, for imposed core inlet temp, p3n should be adjusted to allow sg to release the pump power qgvn
hyan= 9.621e5 taken from balance-of-plant design and
wyan= 35.74 is the initial value resulting from balance
qgvn= wyan (hln - hyan).
w2an= 1455.5 is adjusted to get a design value for the recirculation ratio w2an/wyan
Itp_sec
sec= the mslb accident starts at sec= 10;
fast closure isolation valves are normally supposed to be totally closed 10 s later, but in the present application (full 3 sg mslb case), they remain totally opened.
qgvn= 62.218e6 is the power transmitted to the tertiary system. It is entered here for the purpose of pre-accident initialization.
At sec= 10, the vapor flow is discharged through the break with a break discharge coefficient wypdn normally calculated from the Moody relation.
In the present case, we have rather determined wypdn such that the discharge rate be 1314.24 kg/s of saturated vapor under the initial pressure of 71.035e5. This discharge coefficient remains unaltered since the closure valves are inoperative.
wyan= From break inception the feed water valves will open completely in an attempt of maintaining the water level.
The resulting feedwater flow is taken as 585 kg/s (depends on feed water system design).
this parameter, along with v2an, will determine voiding duration and should be looked at in sensitivity runs.
At sec= 20, the sg detection system shuts the main feed water supply down in order to mitigate the cooling rate of sg water, but leaves however enough feedwater to allow the sg to get rid of at least pump power at the end of the transient.
According our the break discharge model, if we want the sg, with discharge coeff. wzpdn, to transmit, at the outcome of transient, a residual power q, with a feed flow wyan and by means of saturated steam, the corresponding pressure p is found as the root of the stationary discharge balance equation:
q / wypdn = (hvn(p) - hyan) SQRT(p / vvn(p)
Once the root p obtained, the necessary wyan=wyd will result from
wyan = wypdn * SQRT(p / vvn(p))
For the present application each sg should be able to evacuate q=6.21e6 (pump power of each loop) if the thermal power is supposed to vanish to zero and the possible pressu heater contribution is neglected (heater power is always much lower than 3*6.21e6 !)
(chart 1) illustrates the graphical resolution of the problem and results in a necessary value
wyan= 37.5, which happens to be about 1/3 of the auxiliary flow 85 retained for the application. Nevertheless, we keep this value for our first mlsb problem.
Itp_y_x/ Itp_zan_v2an: polygonal correlation relating the water level zan to the water volume v2an in the calculation of recirculation flow.
Lstnj1/: we use typical, tentative values.
safety_inj
Lstis
sec= 34: in absence of explicit simulation of si activation, we arbitrarily assume that it comes in action 14 s after rupture time.
dsec= 15: duration for reaching full SI flow with a linear ramp.
pa= 153.35e5: as the si flow into the loops is defined by means of polygonal curve wvis(p1), pressure and enthalpy data for the si system must be set for performing enthalpy balances in the successive vessels of the si chain.
The pressure applies for all the vessel, enthalpy ha of si supply remains constant.
Enthalpy of the reservoirs b, c,...are set to same ha, so that it will keep the same value during the whole si discharge.
The actual value of the common enthalpy is unimportant as the SI water is nearly incompressible.
What is important, however, is the SI supply boron ppm ba, and the initial boron ppm of the successive reservoirs, especially the largest vc.
SI is often considered as the main mechanism for bringing the core definitively to subcritical zero power condition at the end of transient.
In the early phase of it, the boron content and volume of the reservoirs may have an influence on the critical safety margins. In this application all the reservoirs upstream to the SI valves receive the same boron ppm.
This completes the description of the data file.
The sequence procedure for running the mslb application is usual and self-understanding.
S3=
The looping sequence S3 starts by time-stepping the components.
step, safety_inj sets the SI enthalpy and flow wyis injected into the loops.
The present SI model assumes same injection flow into all the loops.
Preventing injection into some loops (in case of multi-loop model, of course, would require a minor model adaptation. Partial flow SI could of course be simulated by correcting the wvis(sec) curve accordingly.
do, call:4 performs first step treatment of the successive components of S4.
Beginning with safety_inj implies that the SI flow is calculated from the bos pressure p1, which is acceptable.
After safety_inj, S4 sweeps the successive components of primary path, beginning as usual with loop_1 ;
then pressure condition is updated by npressu;
with the resulting t2li distribution, sg in invoked to update the secondary part of the sg.
It will be observed that the primary components sweeping is not repeated (by means of redo, ...).
This appears to be acceptable without spurious instability thanks to the small value of dsec.
end_step, ... triggers eos processing of the variables which do not feed-back on the step convergence.
dnb calculated on the hot channel and must therefore be called after it.
call:5 triggers plotting at eos.
The plotting set is quite extended for the first mlsb runs in order to identify the critical key parameters and understand what happens.
For subsequent sensitivity runs, the plot deck can be reduced.
The first part of the transient is conducted up to secmax= 80.
next a new applications is defined by repeating 'read, core, call:3,' to tighten dsec in order to adapt to nervous part of the transient
A third application is provided to relax dsec for terminating the transient.
Let us remark that read, core must be invoked for the only purpose of resetting dsmax just above dsec.
Otherwise, dsec would be kept at its lower value!