ML20044G006
| ML20044G006 | |
| Person / Time | |
|---|---|
| Issue date: | 03/22/1993 |
| From: | Caruso R Office of Nuclear Reactor Regulation |
| To: | Washington K SANDIA NATIONAL LABORATORIES |
| References | |
| NUDOCS 9306010311 | |
| Download: ML20044G006 (2) | |
Text
,
March 22, 1993 4
Kenneth E. Bashington, Manager Contaiament Modeling Department 6429 Sandia National Laboratories Albuquerque, NM 87185
Dear Mr. Washington:
SUBJECT:
PROBLEM WITH CONTEMPT 28 Recently, we have determined that calculations made with the Sun Workstation version of CONTEMPT 28 incorrectly end at ~214.7 seconds of transient time when the end of the transient problem was specified to be greater than this value.
The ruas ended with the message "too much or too little data on 9000 cards,"
but the input processing section of the output file indicated that the time and timestep input (9000 cards) were read in and processed properly.
We suspected the problem might be related to the conversion of the code from the CRAY version to the SUN version, and further investigation identified the error. The code error was traced to a calculation of the form:
Ksum - x
- 1.0 x 107+0.g x = float (Ksum)/1.0 x 10 where Ksum is an integer variable and x is a real variable.
The calculation was probably inserted into the code to fix a round-off problem that can occur on some machines where an input value such as 5.0 can be output as 4.99999...
32 The maximum value an integer can have on a Sun Workstation [s 2 ' so this7 calculation actually limits the maximum value of x to be (2
- 1)/(1 x 10 ) =
214.7. This error should occur on all 32 bit workstations. This calculation is done for variable "t' in 3 locations in subroutine "go" at line numbers 537-538, 594-595, and 640-641.
The calculation is.also done for variable "tfnl" at line numbers 141-142 and for array "tx" in the do loop 530 at line numbers 1004-1009 in subroutine "inprol." The extraneous calculations were removed end CONTEMPT now runs to the maximum transient time specified in the input. Removal of th.is calculation should not change code results since the round-off problem has not been observed on the Sun Workstation.
Sample problems should be run on both the Sun and a CRAY to confirm that code results are not changed, and sample problems that exercise all code options should be run to check for other 32 bit conversion problems.
SASG will be working with your staff to perform these benchmark calculations.
Original signed by Ralph Caruso, Group Leader Analytical Support Group Division of Systems Safety and Analysis Office of Nuclear Reactor Regulation cc:
F. Eltawila Distribution:
DSSA r/f AThadani 200054 t
JKudrick
,h RCaruso JStaudenmeier
- See previous concurrence k
SASG:DSSA SASGl5SA 10 I \\
9306010311 930322 JStaudenmeier:rl*
RCainso PDR ORG NRRB 03/19/93 03/'V93 A:\\ CONTEMPT ppg
N g* *C%
[q k
UNITED STATES i @Z[)'* !_}
NUCLEAR REGULATORY COMMISSION
- hI WASHINGTON, D.C. 20555-0001 gg*w /
March 22, 1993 Kenneth E. Washington, Manager Containment Modeling Department 6429 Sandia National Laboratories Albuquerque, NM 87185
Dear Mr. Washington:
SUBJECT:
PROBLEM WITH CONTEMPT 28 Recently, we have determined that calculations made with the Sun Workstation version of CONTEMPT 28 incorrectly end at ~214.7 seconds of transient time when the end of the transient problem was specified to be greater than this value.
The runs ended with the message "too much or too little data on 9000 cards,"
but the input processing section of the output file indicated that the time and timestep input (9000 cards) were read in and processed properly.
We suspected the problem might be related to the conversion of the code from the CRAY version to the SUN version, and further investigation identified the The code error was traced to a calculation of the form:
error.
Ksum = x
- 1.0 x 107+0.j x = float (Ksum)/1.0 x 10 where Ksum is an integer variable and x is a real variable.
The calculation was probably inserted into the code to fix a round-off problem that can occur on some machines where an input value such as 5.0 can be output as 4.99999...
32 The maximum value an integer can have on a Sun Workstation j2s 2 ' so this 7 calculation actually limits the maximum value of x to be (2
- 1)/(1 x 10 ) =
214.7.
This error should occur on all 32 bit workstations.
This calculation is done for variable "t" in 3 locations in' subroutine "go" at line numbers 537-538, 594-595, and 640-641. The calculation is also done for variable "tfni" at line numbers 141-142 and for array "tx" in the do loop 530 at line y
numbers 1004-1009 in subroutine "inprol." The extraneous calculations were removed and CONTEMPT now runs to the maximum transient time specified in the input.
Removal of this calculation should not change code results since the.
round-off problem has not been observed on the Sun Workstation.
Sample problems should be run on both the Sun and a CRAY to confirm that code results are not changed, and sample problems that exercise all code options should be run to check for other 32 bit conversion problems.
SASG will be working with your staff to perform these benchmark calculations.
l
[
lh LltlU( O e f Ralph Earuso, Group Leader Analytical Support Group Division of Systems Safety and Analysis
- Office of Nuclear Reactor Regulation cc:
F. Eltawila