basic的原文件,先通过BCX转化器,转化一下,注意转化过来的东东,错误是N的多哦。 得动手自己修改: 10 REM ***************************************************************** 20 REM * IEEE METHOD - TRANSIENT OR STEADY STATE CALCULATION 30 REM * OF BARE OVERHEAD CONDUCTOR TEMPERATURE OR THERMAL RATING 40 REM * LAST MODIFIED 11/7/97 BY DAD 50 REM * PROGRAM NAME IS "IEEE738SI.BAS" 60 REM * LANGUAGE IS "QUICK BASIC" 70 REM * ASSUMES SI UNITS FOR INPUT FILE 80 REM * 90 REM * 240 REM * IN COMPARISON WITH THE 1986 VERSION OF THIS PROGRAM, PROVIDED 250 REM * BY THE IEEE, THE 1993 VERSION ADDED THE FOLLLOWING FEATURES: 260 REM * 290 REM *- INITIAL CONDUCTOR TEMP OR CURRENT CAN BE USED IN 300 REM * TRANSIENT CALCULATIONS 330 REM *- VERY SHORT DURATION "FAULT" CURRENTS AS LARGE AS 1E6 340 REM * AMPERES FOR TIMES AS SHORT AS 0.01 SEC CAN BE USED 350 REM *- THE ORIGINAL NUMERICAL ITERATION METHOD HAS BEEN 360 REM * REPLACED WITH A MUCH MORE EFFICIENT METHOD 370 REM *- FOR ACSR CONDUCTOR, THE HEAT CAPACITY OF THE STEEL CORE 380 REM * AND THE OUTER ALUM STRANDS ARE ENTERED SEPARATELY. 390 REM * 392 REM * THIS VERSION IS CONSISTENT WITH IEEE STD 738-2006 394 REM *- THE SOLAR MODEL ALLOWS ANY HOUR AND LATITUDE 396 REM *- THE AIR PROPERTIES ARE CALCULATED WITH CLOSED FORM EQUATIONS 398 REM *- THIS PROGRAM AND EQUATIONS USE SI UNITS 400 REM ************************************************************** 410 REM *********************************** 420 REM * INITIALIZE VARIABLES AND ARRAYS * 430 REM *********************************** 440 DIM ATCDR(1000) 450 DIM TIME(1000) 460 FLAG1 =0 470 XIDUMMY =0 480 XIPRELOAD =0 490 XISTEP =0 500 TCDR =0 510 TCDRPRELOAD =0 520 TCDRMAX =0 530 IORTPRELOAD =0 540 DELTIME =0 550 FS1 =0 560 FS2 =0 570 FS3 =0 580 X$ = STRING$(56, 45) 590 REM ******************************* 600 REM * START REPEAT CALCULATION HERE 610 REM ******************************* 620 FOR KI =1 TO 1000 630 ATCDR(KI) =0 640 TIME(KI) =0 650 NEXT KI 660 NFLAG =0 670 PI =3.141593 672 PIANG = PI /180! 680 IF FLAG1 =99 GOTO 1120 690 REM ************************************************ 700 REM * SPECIFY DATA INPUT ASCII FILE NAME 710 REM ************************************************ 720 CLS 730 INPUT "ENTER INPUT FILE NAME ", F$: OPEN F$ FOR INPUT AS #1 780 REM *********************************** 790 REM * SPECIFY HOW DATA IS TO BE OUTPUT 800 REM *********************************** 810 PRINT "DO YOU WANT THE OUTPUT TO GO TO SCREEN ONLY(0), FILE ONLY(1)," 820 INPUT " OR TO BOTH SCREEN AND FILE(2)? ", SORF 830 IF SORF <>0 AND SORF <>1 AND SORF <>2 THEN GOTO 810 840 IF SORF <>0 THEN INPUT "ENTER OUTPUT FILE NAME ", FOUT$: OPEN FOUT$ FOR OUTPUT AS #2 845 INPUT "DO YOU WANT DEBUG CHECKS? YES (0), NO(1) ", DEBUG 850 REM ************************************************************ 860 REM * ENTER DATA FROM INPUT FILE 870 REM ************************************************************ 880 GOSUB 8000 1120 REM ***************************************** 1130 REM * CALCULATE SOLAR HEAT INPUT TO CONDUCTOR 1140 REM ***************************************** 1150 GOSUB 5000 1160 REM ************************************************************** 1170 REM * CALCULATE THERMAL COEF OF RESISTANCE & WIND ANGLE CORRECTION 1180 REM ************************************************************** 1190 GOSUB 9000 1200 REM ******************************** 1210 REM * SELECT THE CALCULATION DESIRED 1220 REM ******************************** 1230 ON NSELECT GOTO 1500, 1240, 1460, 1460 1240 REM ******************************************************************** 1250 REM * FOR NSELECT =2 1260 REM * GO TO AMPACITY SUBROUTINE TO CALCULATE THE STEADY STATE 1270 REM * CURRENT (TR) GIVEN THE STEADY STATE CONDUCTOR TEMPERATURE (TCDR) 1280 REM * THE CONDUCTOR TEMPERATURE IS GIVEN SO ONLY ONE PASS THROUGH 1290 REM * THE SUBROUTINE IS REQUIRED. 1300 REM ******************************************************************** 1310 TCDR = TCDRPRELOAD 1320 GOSUB 15000 1330 GOTO 1730 1340 REM ******************************************************************** 1350 REM 1360 REM ******************************************************************** 1370 REM * FOR NSELECT =1,3,OR 4 1380 REM * GO TO AMPACITY SUBROUTINE REPEATEDLY IN ORDER TO CALCULATE 1390 REM * THE STEADY STATE CURRENT (TR) CORRESPONDING TO TRIAL VALUES OF 1400 REM * CONDUCTOR TEMPERATURE (TCDR). IF T=1 THEN THE OUTPUT OF THE 1410 REM * SUBROUTINE, TR, IS THE STEADY STATE CURRENT FOR 1420 REM * WHICH A STEADY STATE TEMPERATURE WAS TO BE FOUND. 1430 REM * IF T=3 OR 4 AND IORTPRELOAD=1, THEN TR IS THE INITIAL PRE-STEP 1440 REM * CHANGE CURRENT FOR WHICH AN INITIAL TEMPERATURE WAS TO BE CALCULATED. 1450 REM ********************************************************************* 1460 ON IORTPRELOAD GOTO 1500, 1650 1470 REM ******************************************** 1480 REM * CALCULATE TCDR GIVEN XIDUMMY = XIPRELOAD * 1490 REM ******************************************** 1500 XIDUMMY = XIPRELOAD 1510 NFLAG =0 1520 GOSUB 13000 1530 TCDRPRELOAD = TCDR 1540 REM *************************************************************** 1550 REM * FOR NSELECT =1 THE PROGRAM HAS FOUND THE STEADY STATE CONDUCTOR 1560 REM * TEMPERATURE (TCDRPRELOAD) CORRESPONDING TO THE GIVEN STEADY STATE 1570 REM * CURRENT (XIPRELOAD) AND CONTROL IS PASSED TO THE PRINTOUT SECTION 1580 REM *************************************************************** 1590 IF NSELECT =1 THEN 1730 1600 REM ***************************************************************** 1610 REM * FOR NSELECT =3 OR 4, THE PROGRAM HAS DETERMINED (IORTPRELOAD=1) OR BEEN 1620 REM * GIVEN (IORTPRELOAD=2) THE INITIAL STEADY STATE CONDUCTOR TEMPERATURE 1630 REM * AND CONTROL PASSES TO FURTHUR TRANSIENT CALCULATIONS 1640 REM ***************************************************************** 1650 IF NSELECT =4 THEN GOSUB 10000 1660 REM ************************************************************* 1670 REM * BEGIN CALCULATION OF CONDUCTOR TEMP AS A FUNCTION OF TIME 1680 REM * FOR A STEP INCREASE IN ELECTRICAL CURRENT, NSELECT =3 1690 REM ************************************************************* 1700 ET =3600! 1710 XISTEP = XISTEP 1720 GOSUB 11000 1730 REM ************************* 1740 REM * PRINT RESULTS TO SCREEN 1750 REM ************************* 1760 IF SORF =0 OR SORF =2 THEN GOSUB 6000 1770 REM *********************** 1780 REM * WRITE RESULTS TO FILE 1790 REM *********************** 1800 IF SORF =1 OR SORF =2 THEN GOSUB 16000 1810 REM IF FS =1 GOTO 1880 1820 IF NS < NSETS THEN GOTO 880 ELSE CLOSE #1 1830 IF SORF =1 OR SORF =2 THEN CLOSE #2 1840 GOTO 1930 1850 REM ******************************************** 1860 REM * SETUP TO REPEAT PROGRAM CALCULATIONS WITH NEW DATA 1870 REM ******************************************** 1880 REM INPUT "DO YOU WANT TO RUN THE PROGRAM AGAIN (YES = 1, NO = 2)", YN 1890 REM IF YN <>1 AND YN <>2 THEN GOTO 1880 1900 REM IF YN =2 GOTO 1920 1910 REM IF YN =1 THEN FLAG1 =99: RESTORE: GOTO 620 1920 REM IF SORF =1 OR SORF =2 THEN CLOSE #2 1930 END 5000 REM /**// 5010 REM / SUBROUTINE TO CALCULATE CONDUCTOR SOLAR HEAT GAIN (QS) 5020 REM /**// 5030 IF SUN.TIME >=24 THEN 5560 5040 DEG.TO.RAD = PI /180! 5050 CDR.LAT.RAD = CDR.LAT.DEG * DEG.TO.RAD 5060 REM * SOLAR DECLINATION 5070 DECL.DEG =23.4583* SIN(((284+ NDAY) /365) *2* PI) 5080 DECL.RAD = DECL.DEG * DEG.TO.RAD 5090 REM * SOLAR ANGLE RELATIVE TO NOON 5100 HOUR.ANG.DEG = (SUN.TIME -12) *15 5110 HOUR.ANG.RAD = HOUR.ANG.DEG * DEG.TO.RAD 5120 REM * FIND SOLAR ALTITUDE - H3 5130 H3ARG = COS(CDR.LAT.RAD) * COS(DECL.RAD) * COS(HOUR.ANG.RAD) + SIN(CDR.LAT.RAD) * SIN(DECL.RAD) 5140 H3.RAD = ATN(H3ARG / SQR(1- H3ARG ^2)) 5150 H3.DEG = H3.RAD / DEG.TO.RAD 5160 5170 IF A3 =1 THEN 5290 5180 REM *************************************************************** 5190 REM * SOLAR HEATING (Q3) AT EARTH SURFACE (W/M2) IN CLEAR AIR (P6) 5200 REM *************************************************************** 5210 Q3 =-42.2391+63.8044* H3.DEG -1.922* H3.DEG ^2 5220 Q3 = Q3 + .034692* H3.DEG ^3-3.6112E-04* H3.DEG ^4 5230 Q3 = Q3 +1.9432E-06* H3.DEG ^5-4.0761E-09* H3.DEG ^6 5240 B$ ="CLEAR" 5250 GOTO 5330 5260 REM ***************************************************************** 5270 REM * SOLAR HEAT (Q3) AT EARTH SURFACE (W/M2) IN INDUSTRIAL AIR (P6) 5280 REM ***************************************************************** 5290 Q3 =53.1821+14.211* H3.DEG + .66138* H3.DEG ^2 5300 Q3 = Q3 - .031658* H3.DEG ^3+5.4654E-04* H3.DEG ^4 5310 Q3 = Q3 -4.3446E-06* H3.DEG ^5+1.3236E-08* H3.DEG ^6 5320 B$ ="INDUSTRIAL" 5330 REM * CALCULATE SOLAR AZIMUTH VARIABLE, CHI 5335 IF DEBUG =0 THEN PRINT #2, " Q3 = "; Q3 5340 CHI.DENOM = SIN(CDR.LAT.RAD) * COS(HOUR.ANG.RAD) - COS(CDR.LAT.RAD) * TAN(DECL.RAD) 5350 CHI = SIN(HOUR.ANG.RAD) / CHI.DENOM