Anda di halaman 1dari 14

Soal :

Membuat program C untuk kasus peluruhan radioaktif pada berbagai variasi selang waktu
partisi dengan menggunakan metode euler dan runge-kutta.
Menggunakan Metode Euler
#include<stdio.h>
#include<conio.h>
main ()
{
FILE *fp;
fp = fopen("E:\KULIAH\Semester 6\Fisika Komputasi\Tugas
Radioaktif\Metode Euler Radioactive Decay.txt","wt");
int i;

Peluruhan

float Nu[2000], N, t[2000], T, dt;


Nu[0]=1003;
t[0]=0;
T=1;
printf("-----METODE EULER untuk Kasus Radioactive Delay-----\n\n");
printf("Oleh
:\nSella
Sinurat\t140310090022\nSundus
Mirrotin\t140310090040\nAyesha C R U\t140310090074\n\n");
printf("Masukkan N (jumlah data) : "); scanf("%f", &N);
printf("Masukkan dt (selang waktu) : "); scanf("%f", &dt);
printf("Hasil Iterasinya adalah : \n");
printf("Iterasi ke- \t Jumlah Uranium \t Waktu\n");
for (i=0; i<N ; i++)
{
Nu[i+1] = Nu[i]-((Nu[i]/T)*dt);
t[i+1] = t[i]+dt;
printf("%d\t\t%f\t\t%f\n",i+1,Nu[i+1],t[i+1]);
fprintf(fp,"%f\t%f\n",Nu[i+1],t[i+1]);
}
fclose;
getch ();
}

o Pada variasi t = 0.03

Grafik dengan Selang Waktu


Peluruhan 0,03
1200.000000
1000.000000

600.000000
numerik

400.000000

analitik

200.000000

3.500

3.000

2.500

2.000

1.500

1.000

0.500

0.000000
0.000

Nu

800.000000

o Pada variasi t = 0.07

900.000000
800.000000
700.000000
600.000000
500.000000
400.000000
300.000000
200.000000
100.000000
0.000000

numerik

8.000

7.000

6.000

5.000

4.000

3.000

2.000

1.000

analitik

0.000

Nu

Grafik dengan Selang Waktu Peluruhan


0,07
1000.000000

o Pada variasi t = 0.09

Grafik dengan Selang Waktu Peluruhan


0,09
1000.000000
800.000000

Nu

600.000000
numerik

400.000000

analitik
200.000000

10.000

9.000

8.000

7.000

6.000

5.000

4.000

3.000

2.000

1.000

0.000

0.000000

o Pada variasi t = 0.24

Grafik dengan Selang Waktu Peluruhan


0,24
900.000000
800.000000
700.000000
500.000000

numerik

400.000000

analitik

300.000000
200.000000
100.000000
20.000

18.000

16.000

14.000

12.000

10.000

8.000

6.000

4.000

2.000

0.000000
0.000

Nu

600.000000

o Pada variasi t = 0.57

Grafik dengan Selang Waktu Peluruhan


0,57
600.000000
500.000000

300.000000
numerik

200.000000

analitik

100.000000
16.000

14.000

12.000

10.000

8.000

6.000

4.000

2.000

0.000000
0.000

Nu

400.000000

Grafik Peluruhan Radioaktif Berbagai Variasi


(Metode Euler)
1000

Nu (Amount of Uranium)

900
800
700

0,07

600

0,09

500
400

0,03

300

0,24

200

0,57

100
20.0

19.0

18.0

17.0

t (time constant)

16.0

15.0

14.0

13.0

12.0

11.0

10.0

9.0

8.0

7.0

6.0

5.0

4.0

3.0

2.0

1.0

0.0

Grafik Solusi Analitik Peluruhan Radioaktif


Berbagai Variasi (Metode Euler)
1000
900
800
600

0,03

500

0,07

400

0,09

300

0,24

200

0,57

100

20

19

18

17

16

15

14

13

12

11

10

0
0

Nu

700

Menggunakan Metode Runge Kutta


#include<stdio.h>
#include<conio.h>
#include<math.h>
float z(float Nu,float T)
{
return (-Nu)/T;
}
main()
{ FILE *fp;
fp = fopen("E:\KULIAH\Semester 6\Fisika Komputasi\Tugas
Radioaktif\Metode Runge Kutta Orde 2 Radioactive Decay.txt","wt");
int i;

Peluruhan

float Nu,N, t,h,T,akhir;


float k1,k2, k3, k4;
T =1;
Nu = 1003;
printf("----Metode Runge Kutta Orde 4 Kasus Radioactive Decay----\n\n");
printf("Oleh
:\nSella
Sinurat\t140310090022\nSundus
Mirrotin\t140310090040\nAyesha C R U\t140310090074\n\n");
printf("INPUT DATA \n");
printf("nilai h (selang waktu)\t\t\t: "); scanf("%f",&h);
printf("Batas akhir waktu habis peluruhan\t: ");scanf("%f",&akhir);
printf("\n");
//Metode Runge-Kutta orde-2
printf("i\t\tt\t\tN\n");
i=0;
while(t<=akhir)
{
k1=z(Nu,T);
k2=z(Nu+(h*k1/2),T);
k3=z(Nu+(h*k2/2),T);
k4=z(Nu+(h*k3),T);
N=Nu+((k1+(2*k2)+(2*k3)+k4)*(h/6));
i++;
Nu = N;
t=t+h;
printf("%d\t\t%.2f\t\t%.5f\t\n",i,t,N);
printf("\n");
fprintf(fp,"%.2f\t\t%.5f\t\n",t,N);
}
fclose;
getch ();
}

o Pada variasi t = 0.03

Grafik dengan Selang Waktu Peluruhan


0,03
1200.00000
1000.00000

Nu

800.00000
600.00000

numerik

400.00000

analitik

200.00000
0.00000
0

2
t

o Pada variasi t = 0.07

Grafik dengan Selang Waktu Peluruhan


0,07
1000
800

Nu

600
numerik

400

analitik

200
0
0

4
t

o Pada variasi t = 0.09

Grafik dengan Selang Waktu Peluruhan


0,09
1000.000000
800.000000
600.000000
Nu

numerik
400.000000

analitik

200.000000
0.000000
0

10

o Pada variasi t = 0.24

Nu

Grafik dengan Selang Waktu Peluruhan


0,24
900
800
700
600
500
400
300
200
100
0

numerik
analitik

10

15
t

20

25

o Pada variasi t = 0.57

Grafik dengan Selang Waktu Peluruhan


0,57
600
500

Nu

400
300

numerik

200

analitik

100
0
0

10

15
t

20

25

Grafik Peluruhan Radioaktif Berbagai Variasi


(Metode Runge-Kutta Orde 4)

1000
900
Nu (Amount of Uranium)

800
700
600

0,07

500

0,09

400

0,03

300

0,24

200

0,57

100

1000

20.000

19.000

18.000

17.000

16.000

t (time constant)

15.000

14.000

13.000

12.000

11.000

10.000

9.000

8.000

7.000

6.000

5.000

4.000

3.000

2.000

1.000

0.000

Grafik Solusi Analitik Peluruhan Radioaktif


Berbagai Variasi (Metode Runge-Kutta Orde 4)

900
800
600

0,03

500

0,07

400

0,09

300

0,24

200

0,57

100

20

19

18

17

16

15

14

13

12

11

10

0
0

Nu

700

Anda mungkin juga menyukai