diff --git a/Source/Fortran/makefile_cray b/Source/Fortran/makefile_cray
index 5cc2f7ac8b12c8ff3c633450e3b8f1d0494ff9c1..2336a036531c78aa364457ef947dd2687789c074 100644
--- a/Source/Fortran/makefile_cray
+++ b/Source/Fortran/makefile_cray
@@ -9,6 +9,9 @@
 # Version for a machine with eccodes and emoslib installed on standard paths
 # with optimisation
 #
+# 2022-07-21 Anne Tipka
+#   Updated makefile to make use of the files for fft and get rid of emoslib
+#
 ###############################################################################
 
 
@@ -25,21 +28,30 @@ LDFLAGS =  $(OPT) -fopenmp
 EXE	=      calc_etadot
 
 .f.o:
-SRC = ./rwgrib2.f90 ./calc_etadot.f90 ./ftrafo.f90 ./grphreal.f90 ./posnam.f90 ./phgrreal.f90
-OBJ = rwgrib2.o calc_etadot.o ftrafo.o grphreal.o posnam.o phgrreal.o
+SRC = ./rwgrib2.f90 ./calc_etadot.f90 ./ftrafo.f90 ./grphreal.f90 ./posnam.f90 ./phgrreal.f90 ./set99.f90 ./fft99.f90 ./qpassm.f90 ./rpassm.f90 ./jsppole.f90
+OBJ = rwgrib2.o calc_etadot.o ftrafo.o grphreal.o posnam.o phgrreal.o set99.o fft99.o qpassm.o rpassm.o jsppole.o
 MOD = ftrafo.mod  grtoph.mod	phtogr.mod  rwgrib2.mod
 
-all:	${EXE}
-
+all: ${EXE}
+jsppole.o: ./jsppole.f90 
+	$(FC)  $(FFLAGS)  -c	./jsppole.f90
+qpassm.o: ./qpassm.f90
+	$(FC)  $(FFLAGS)  -c	./qpassm.f90
+rpassm.o: ./rpassm.f90
+	$(FC)  $(FFLAGS)  -c	./rpassm.f90
+set99.o: ./set99.f90
+	$(FC)  $(FFLAGS)  -c	./set99.f90
+fft99.o: ./fft99.f90
+	$(FC)  $(FFLAGS)  -c	./fft99.f90
 ftrafo.o: ./ftrafo.f90 phgrreal.o
 	$(FC)  $(FFLAGS)  -c	./ftrafo.f90
-grphreal.o: ./grphreal.f90 phgrreal.o
+grphreal.o: ./grphreal.f90 phgrreal.o fft99.o
 	$(FC)  $(FFLAGS)  -c	./grphreal.f90
-phgrreal.o: ./phgrreal.f90
+phgrreal.o: ./phgrreal.f90 fft99.o
 	$(FC)  $(FFLAGS)  -c	./phgrreal.f90
 posnam.o: ./posnam.f90
 	$(FC)  $(FFLAGS)  -c	./posnam.f90
-calc_etadot.o: ./calc_etadot.f90 phgrreal.o grphreal.o ftrafo.o rwgrib2.o
+calc_etadot.o: ./calc_etadot.f90 phgrreal.o grphreal.o ftrafo.o rwgrib2.o jsppole.o set99.o
 	$(FC)  $(FFLAGS)  -c	./calc_etadot.f90
 rwgrib2.o: ./rwgrib2.f90
 	$(FC)  $(FFLAGS)  -c	./rwgrib2.f90
diff --git a/Source/Fortran/makefile_debug b/Source/Fortran/makefile_debug
index f2e0cae9e1132b2b17d2ee1a4f3eab672dbc5477..c6285b22b283f014c6eb5e4f97da30dcc058155e 100644
--- a/Source/Fortran/makefile_debug
+++ b/Source/Fortran/makefile_debug
@@ -9,6 +9,9 @@
 # Version for a machine with eccodes and emoslib installed on standard paths
 # full debugging
 #
+# 2022-07-21 Anne Tipka
+#   Updated makefile to make use of the files for fft and get rid of emoslib
+#
 ###############################################################################
 
 
@@ -24,23 +27,33 @@ FC = gfortran
 OPT = -g -Og -fbacktrace -fcheck=all
 FFLAGS =   $(OPT) $(LIB) $(INC) -fdefault-real-8 -fopenmp -fconvert=big-endian 
 LDFLAGS =  $(OPT) $(LIB) -fopenmp
-SRC = ./rwgrib2.f90 ./calc_etadot.f90 ./ftrafo.f90 ./grphreal.f90 ./posnam.f90 ./phgrreal.f90
-OBJ = rwgrib2.o calc_etadot.o ftrafo.o grphreal.o posnam.o phgrreal.o
+SRC = ./rwgrib2.f90 ./calc_etadot.f90 ./ftrafo.f90 ./grphreal.f90 ./posnam.f90 ./phgrreal.f90 ./set99.f90 ./fft99.f90 ./qpassm.f90 ./rpassm.f90 ./jsppole.f90
+OBJ = rwgrib2.o calc_etadot.o ftrafo.o grphreal.o posnam.o phgrreal.o set99.o fft99.o qpassm.o rpassm.o jsppole.o
 MOD = ftrafo.mod  grtoph.mod	phtogr.mod  rwgrib2.mod
 
 .DEFAULT:
 	-echo $@ does not exist.
 
 all: ${EXE}
+jsppole.o: ./jsppole.f90 
+	$(FC)  $(FFLAGS)  -c	./jsppole.f90
+qpassm.o: ./qpassm.f90
+	$(FC)  $(FFLAGS)  -c	./qpassm.f90
+rpassm.o: ./rpassm.f90
+	$(FC)  $(FFLAGS)  -c	./rpassm.f90
+set99.o: ./set99.f90
+	$(FC)  $(FFLAGS)  -c	./set99.f90
+fft99.o: ./fft99.f90
+	$(FC)  $(FFLAGS)  -c	./fft99.f90
 ftrafo.o: ./ftrafo.f90 phgrreal.o
 	$(FC)  $(FFLAGS)  -c	./ftrafo.f90
-grphreal.o: ./grphreal.f90 phgrreal.o
+grphreal.o: ./grphreal.f90 phgrreal.o fft99.o
 	$(FC)  $(FFLAGS)  -c	./grphreal.f90
-phgrreal.o: ./phgrreal.f90
+phgrreal.o: ./phgrreal.f90 fft99.o
 	$(FC)  $(FFLAGS)  -c	./phgrreal.f90
 posnam.o: ./posnam.f90
 	$(FC)  $(FFLAGS)  -c	./posnam.f90
-calc_etadot.o: ./calc_etadot.f90 phgrreal.o grphreal.o ftrafo.o rwgrib2.o
+calc_etadot.o: ./calc_etadot.f90 phgrreal.o grphreal.o ftrafo.o rwgrib2.o jsppole.o set99.o
 	$(FC)  $(FFLAGS)  -c	./calc_etadot.f90
 rwgrib2.o: ./rwgrib2.f90
 	$(FC)  $(FFLAGS)  -c	./rwgrib2.f90
diff --git a/Source/Fortran/makefile_ecgate b/Source/Fortran/makefile_ecgate
index ce2be2aba2fec806dd7a7f40ade9ccd23402d1e5..c0e8235ad566be4aae592ba337326bd6591e1180 100644
--- a/Source/Fortran/makefile_ecgate
+++ b/Source/Fortran/makefile_ecgate
@@ -9,6 +9,9 @@
 # Version for a machine with eccodes and emoslib installed on standard paths
 # with optimisation
 #
+# 2022-07-21 Anne Tipka
+#   Updated makefile to make use of the files for fft and get rid of emoslib
+#
 ###############################################################################
 
 
@@ -22,20 +25,30 @@ FC=gfortran
 OPT = -O3 -march=native
 FFLAGS =   $(OPT) $(LIB) $(INC) -fdefault-real-8 -fopenmp -fconvert=big-endian 
 LDFLAGS =  $(OPT) $(LIB) -fopenmp
-SRC = ./rwgrib2.f90 ./calc_etadot.f90 ./ftrafo.f90 ./grphreal.f90 ./posnam.f90 ./phgrreal.f90
-OBJ = rwgrib2.o calc_etadot.o ftrafo.o grphreal.o posnam.o phgrreal.o
+SRC = ./rwgrib2.f90 ./calc_etadot.f90 ./ftrafo.f90 ./grphreal.f90 ./posnam.f90 ./phgrreal.f90 ./set99.f90 ./fft99.f90 ./qpassm.f90 ./rpassm.f90 ./jsppole.f90
+OBJ = rwgrib2.o calc_etadot.o ftrafo.o grphreal.o posnam.o phgrreal.o set99.o fft99.o qpassm.o rpassm.o jsppole.o
 MOD = ftrafo.mod  grtoph.mod	phtogr.mod  rwgrib2.mod
 
 all: ${EXE}
+jsppole.o: ./jsppole.f90 
+	$(FC)  $(FFLAGS)  -c	./jsppole.f90
+qpassm.o: ./qpassm.f90
+	$(FC)  $(FFLAGS)  -c	./qpassm.f90
+rpassm.o: ./rpassm.f90
+	$(FC)  $(FFLAGS)  -c	./rpassm.f90
+set99.o: ./set99.f90
+	$(FC)  $(FFLAGS)  -c	./set99.f90
+fft99.o: ./fft99.f90
+	$(FC)  $(FFLAGS)  -c	./fft99.f90
 ftrafo.o: ./ftrafo.f90 phgrreal.o
 	$(FC)  $(FFLAGS)  -c	./ftrafo.f90
-grphreal.o: ./grphreal.f90 phgrreal.o
+grphreal.o: ./grphreal.f90 phgrreal.o fft99.o
 	$(FC)  $(FFLAGS)  -c	./grphreal.f90
-phgrreal.o: ./phgrreal.f90
+phgrreal.o: ./phgrreal.f90 fft99.o
 	$(FC)  $(FFLAGS)  -c	./phgrreal.f90
 posnam.o: ./posnam.f90
 	$(FC)  $(FFLAGS)  -c	./posnam.f90
-calc_etadot.o: ./calc_etadot.f90 phgrreal.o grphreal.o ftrafo.o rwgrib2.o
+calc_etadot.o: ./calc_etadot.f90 phgrreal.o grphreal.o ftrafo.o rwgrib2.o jsppole.o set99.o
 	$(FC)  $(FFLAGS)  -c	./calc_etadot.f90
 rwgrib2.o: ./rwgrib2.f90
 	$(FC)  $(FFLAGS)  -c	./rwgrib2.f90
diff --git a/Source/Fortran/makefile_fast b/Source/Fortran/makefile_fast
index 1537b6f08ae54923923e0da861d7ba45f482e7b9..bfb8638fad1a24aa1bf31bb549d4a1d2eed4708d 100644
--- a/Source/Fortran/makefile_fast
+++ b/Source/Fortran/makefile_fast
@@ -9,6 +9,9 @@
 # Version for a machine with eccodes and emoslib installed on standard paths
 # with optimisation
 #
+# 2022-07-21 Anne Tipka
+#   Updated makefile to make use of the files for fft and get rid of emoslib
+#
 ###############################################################################
 
 
@@ -26,23 +29,33 @@ FC = gfortran
 OPT = -O3 # -O3 -march=native
 FFLAGS =   $(OPT) $(LIB) $(INC) -fdefault-real-8 -fopenmp -fconvert=big-endian 
 LDFLAGS =  $(OPT) $(LIB) -fopenmp
-SRC = ./rwgrib2.f90 ./calc_etadot.f90 ./ftrafo.f90 ./grphreal.f90 ./posnam.f90 ./phgrreal.f90
-OBJ = rwgrib2.o calc_etadot.o ftrafo.o grphreal.o posnam.o phgrreal.o
+SRC = ./rwgrib2.f90 ./calc_etadot.f90 ./ftrafo.f90 ./grphreal.f90 ./posnam.f90 ./phgrreal.f90 ./set99.f90 ./fft99.f90 ./qpassm.f90 ./rpassm.f90 ./jsppole.f90
+OBJ = rwgrib2.o calc_etadot.o ftrafo.o grphreal.o posnam.o phgrreal.o set99.o fft99.o qpassm.o rpassm.o jsppole.o
 MOD = ftrafo.mod  grtoph.mod	phtogr.mod  rwgrib2.mod
 
 .DEFAULT:
 	-echo $@ does not exist.
 
 all: ${EXE}
+jsppole.o: ./jsppole.f90 
+	$(FC)  $(FFLAGS)  -c	./jsppole.f90
+qpassm.o: ./qpassm.f90
+	$(FC)  $(FFLAGS)  -c	./qpassm.f90
+rpassm.o: ./rpassm.f90
+	$(FC)  $(FFLAGS)  -c	./rpassm.f90
+set99.o: ./set99.f90
+	$(FC)  $(FFLAGS)  -c	./set99.f90
+fft99.o: ./fft99.f90
+	$(FC)  $(FFLAGS)  -c	./fft99.f90
 ftrafo.o: ./ftrafo.f90 phgrreal.o
 	$(FC)  $(FFLAGS)  -c	./ftrafo.f90
-grphreal.o: ./grphreal.f90 phgrreal.o
+grphreal.o: ./grphreal.f90 phgrreal.o fft99.o
 	$(FC)  $(FFLAGS)  -c	./grphreal.f90
-phgrreal.o: ./phgrreal.f90
+phgrreal.o: ./phgrreal.f90 fft99.o
 	$(FC)  $(FFLAGS)  -c	./phgrreal.f90
 posnam.o: ./posnam.f90
 	$(FC)  $(FFLAGS)  -c	./posnam.f90
-calc_etadot.o: ./calc_etadot.f90 phgrreal.o grphreal.o ftrafo.o rwgrib2.o
+calc_etadot.o: ./calc_etadot.f90 phgrreal.o grphreal.o ftrafo.o rwgrib2.o jsppole.o set99.o
 	$(FC)  $(FFLAGS)  -c	./calc_etadot.f90
 rwgrib2.o: ./rwgrib2.f90
 	$(FC)  $(FFLAGS)  -c	./rwgrib2.f90