PROGRAM SKRATK C C RANGE OF A PARTICLE IN A UNIFORM GRAVITATIONAL FIELD AS A FUNCTION C OF ANGLE. C MADE TO INVESTIGATE WHAT HAPPENS, WHEN Y_0 IS NOT AT GROUND LEVEL. C C INPUT: C X0, Y0, V0, TETMIN, TETMAX, TETSTP (IN DEGREES) C C GIVEN TETA (LOOP FROM TETMIN TO TETMAX IN TETSTP STEPS) C CALCULATE T VALUES FOR WHICH Y(T)=0 BY SOLVING A 2ND DEGREE EQUATION. C CALCULATE THE CORRESPONDING VALUES OF X. C C OUPUT: C THETA, X1(T1),X2(T2) C .. C .. C C A PLOT OF X1(THETA) AND X2(THETA) WILL SHOW THE OPTIMAL ANGLE C AND THE MAXIMAL RANGE. C C AUTHOR: PETER SNOER JENSEN C DATE: 2019-03-01 C REAL PI,G INTEGER I,NSTEP REAL X0,Y0,V0,TETMIN,TETMAX,TETSTP REAL TETA,TETRAD,T1,T2,X1,X2 REAL A,B,C,D PARAMETER(PI=3.141592653) PARAMETER(G=9.82) WRITE(*,*) 'ENTER X0 Y0 V0 TETMIN TETMAX TETSTP' READ(*,*) X0,Y0,V0,TETMIN,TETMAX,TETSTP OPEN(1,FILE='RESULTS.DAT',FORM='FORMATTED') NSTEP=(TETMAX-TETMIN)/TETSTP DO 100 I=0,NSTEP TETA=TETMIN+TETSTP*I TETRAD=TETA*PI/180. A=-0.5*G B=V0*SIN(TETRAD) C=Y0 D=B*B-4.*A*C IF(D.GE.0.)THEN T1=(-B+SQRT(D))/(2.*A) T2=(-B-SQRT(D))/(2.*A) X1=V0*COS(TETRAD)*T1+X0 X2=V0*COS(TETRAD)*T2+X0 WRITE(1,*) TETA,X1,X2 ENDIF 100 CONTINUE STOP END