Να γραφεί πρόγραμμα που να υπολογίζει
τις δυνάμεις (F) και τις ροπές (BΜ) κατά μήκος μίας αμφιέρειστης δοκού.
Το τεχνικό πρόβλημα που θέλουμε να λύσουμε παρουσιάζεται στο παρακάτω
σχήμα:
Οι τύποι που μας δίνουν τις δυνάμεις F(x) και τις ροπές BM(x)
είναι:
Ο υπολογισμός της ροπής πραγματοποιείται βήμα-βήμα κατά μήκος
της δοκού. Όσο περισσότερα είναι τα διαστήματα υπολογισμού (N), τόσο μικρότερο
είναι το βήμα (dL) και τόσο μεγαλύτερη η ακρίβεια των αποτελεσμάτων. Το
πλήθος των διαστημάτων υπολογισμού (Ν) ορίζει και τον αριθμό των επαναλήψεων
που χρειάζονται για να υπολογιστεί όλη η δοκός.
Κώδικας:
PROGRAM dokos1
IMPLICIT NONE
INTEGER:: i, N
REAL:: SL, Q, Fa, Fb, DL, x, Fx, BMx
WRITE(*,"(A\)") ' Mikos Amfieristis Dokou (m): '
READ(*,*) SL
WRITE(*,"(A\)") ' Katanemimeno Fortio (kN/m**2)
: '
READ(*,*) Q
WRITE(*,"(A\)") ' Plithos Diastimatwn Ypologismou
: '
READ(*,*) N
!
Fa = Q * SL / 2.0
Fb = Q * SL - Fa
! Mikos kathe Ypodiasthmatos (= Synoliko Mhkos / Plithos)
DL = SL / N
WRITE(*,"(35(1H-))")
WRITE(*,*) '| x | F(x) | M(x) |'
WRITE(*,"(35(1H-))")
DO i = 0,N
x = DL * i !
Thesi X anamesa sta A & B
Fx = Fa - Q*x !
Temnousa Dynami sth thesi X
BMx = Fa*x - Q*x*x/2.0 ! Kamptiki
Ropi sth thesi X
WRITE(*,10) x, Fx, Bmx
END DO
WRITE(*,"(35(1H-))")
STOP
10 FORMAT(1X,1H|,3(2X,F6.2,2X,1H|))
END
Εκτέλεση:
Mikos Amfieristis Dokou (m): 5
Katanemimeno Fortio (kN/m**2) : 20
Plithos Diastimatwn Ypologismou : 4
-----------------------------------
| x | F(x) | M(x) |
-----------------------------------
| 0.00 | 50.00 | 0.00 |
| 1.25 | 25.00 | 46.87 |
| 2.50 | 0.00 | 62.50 |
| 3.75 | -25.00 | 46.87 |
| 5.00 | -50.00 | 0.00 |
-----------------------------------
Εκτέλεση:
Mikos Amfieristis Dokou (m): 5
Katanemimeno Fortio (kN/m**2) : 20
Plithos Diastimatwn Ypologismou : 20
-----------------------------------
| x | F(x) | M(x) |
-----------------------------------
| 0.00 | 50.00 | 0.00 |
| 0.25 | 45.00 | 11.87 |
| 0.50 | 40.00 | 22.50 |
| 0.75 | 35.00 | 31.87 |
| 1.00 | 30.00 | 40.00 |
| 1.25 | 25.00 | 46.87 |
| 1.50 | 20.00 | 52.50 |
| 1.75 | 15.00 | 56.87 |
| 2.00 | 10.00 | 60.00 |
| 2.25 | 5.00 | 61.87 |
| 2.50 | 0.00 | 62.50 |
| 2.75 | -5.00 | 61.87 |
| 3.00 | -10.00 | 60.00 |
| 3.25 | -15.00 | 56.87 |
| 3.50 | -20.00 | 52.50 |
| 3.75 | -25.00 | 46.87 |
| 4.00 | -30.00 | 40.00 |
| 4.25 | -35.00 | 31.87 |
| 4.50 | -40.00 | 22.50 |
| 4.75 | -45.00 | 11.87 |
| 5.00 | -50.00 | 0.00 |
-----------------------------------
|
|