ChipMaster's bwBASIC This also includes history going back to v2.10. *WARN* some binary files might have been corrupted by CRLF.
You can not select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
 
 
 
 
 
 

37 lines
1018 B

  1. 10 PRINT "INTEGRATION: GAUSSIAN QUADRATURE"
  2. 20 PRINT
  3. 30 REM - ENTER FUNCTION HERE (deffnc(x)="function")
  4. 35 DEF FNC(X)=X[3
  5. 39 REM - ABCISSAS AND WEIGHT FACTORS FOR 20-POINT GUASSIAN INTEGRATION
  6. 40 DATA .076526521,.15275339,.22778585,.14917299,.37370609
  7. 50 DATA .14209611,.510867,.13168864,.63605368,.11819453
  8. 60 DATA .74633191,.10193012,.83911697,.083276742,.91223443
  9. 70 DATA .062672048,.96397193,.04060143,.9931286,.017614007
  10. 80 PRINT "INTEGRATION LIMITS (lower,UPPER)";
  11. 90 INPUT X,Y
  12. 100 PRINT "NUMBER OF INTERVALS";
  13. 110 INPUT N
  14. 120 S=(Y-X)/N/2
  15. 130 T=X+S
  16. 140 R=0
  17. 149 REM - COMPUTE INTEGRAL FOR EACH SUBINTERVAL
  18. 150 FOR I=1 TO N
  19. 160 P=0
  20. 169 REM - COMPUTE SUMMATION FACTOR FOR EACH SUBINTERVAL
  21. 170 FOR J=1 TO 10
  22. 180 READ A,B
  23. 190 P=P+B*(FNC(S*A+T)+FNC(T-S*A))
  24. 200 NEXT J
  25. 210 RESTORE
  26. 220 R=R+P*S
  27. 230 T=T+2*S
  28. 240 NEXT I
  29. 250 PRINT "INTEGRAL =";R
  30. 260 PRINT
  31. 270 PRINT "CHANGE DATA AND RECOMPUTE?"
  32. 280 PRINT "(0=NO, 1=NEW INTEGRATION LIMITS, 2=NEW NO OF INTERVALS)";
  33. 290 INPUT S
  34. 300 IF S=1 THEN 80
  35. 310 IF S=2 THEN 100
  36. 320 END