#
#	Runge-Kutta method
#

CC = gcc -w

now :
	make rkf-adp-t3
	make rk-t3

rkf-adp-t3 :
	make rkf-adp-t3.out
	rkf-adp-t3.out
	rkf-adp-t3.plt

rkf-adp-t0 :
	make rkf-adp-t0.out
	rkf-adp-t0.out
	rkf-adp-t0.plt

rk-t3 :
	make rungekutta-t3.out
	rungekutta-t3.out
	rungekutta-t3.plt

rungekutta.o : rungekutta.c
rkf.o : rkf.c

freevibration.out : freevibration.o rungekutta.o
	$(CC) -o $@ freevibration.o rungekutta.o -lm
freevibration.o   : freevibration.c

twoorder.out : twoorder.o rungekutta.o
	$(CC) -o $@ twoorder.o rungekutta.o -lm
twoorder.o   : twoorder.c

oneorder.out : oneorder.o rungekutta.o
	$(CC) -o $@ oneorder.o rungekutta.o -lm
oneorder.o   : oneorder.c

#	test programs

rungekutta-t0.out : rungekutta-t0.o rungekutta.o
	$(CC) -o $@ rungekutta-t0.o rungekutta.o -lm
rungekutta-t0.o   : rungekutta-t0.c

rungekutta-t1.out : rungekutta-t1.o rungekutta.o
	$(CC) -o $@ rungekutta-t1.o rungekutta.o -lm
rungekutta-t1.o   : rungekutta-t1.c

rungekutta-t2.out : rungekutta-t2.o rungekutta.o
	$(CC) -o $@ rungekutta-t2.o rungekutta.o -lm
rungekutta-t2.o   : rungekutta-t2.c

rungekutta-t3.out : rungekutta-t3.o rungekutta.o
	$(CC) -o $@ rungekutta-t3.o rungekutta.o -lm
rungekutta-t3.o   : rungekutta-t3.c

rkf-t0.out : rkf-t0.o rkf.o
	$(CC) -o $@ rkf-t0.o rkf.o -lm
rkf-t0.o   : rkf-t0.c

rkf-adp-t0.out : rkf-adp-t0.o rkf.o
	$(CC) -o $@ rkf-adp-t0.o rkf.o -lm
rkf-adp-t0.o   : rkf-adp-t0.c

rkf-adp-t3.out : rkf-adp-t3.o rkf.o
	$(CC) -o $@ rkf-adp-t3.o rkf.o -lm
rkf-adp-t3.o   : rkf-adp-t3.c

#	clean

clean :
	rm *.out *-t?.o core
allclean :
	rm *.o *.out *.c~ *.h~ Makefile~ core rungekutta-*.dat
