FC = ifort # Flag -fast optimiert mit O3 # Flag -mp haelt floating point operationen genau # ohne Flags wird immer mit O2 optimiert # siehe /opt/intel/fc/9.0/doc/doc_index.htm # include files FINCFLAGS = -I /opt/intel/mkl/10.1.0.009/include # options # -openmp -openmp_report1 openMP # -axT i32, i32em # -fltconsistency Improved floating-point consistency # -mp1 improves floating-point consistency. It ensures the out-of-range check of operands of transcendental functions and improves the accuracy of floating-point compares. # -fp-model strict # -w warnings # #FLANGFLAGS = -openmp -openmp_report1 -w -fltconsistency -mp1 -fp-model strict #FLANGFLAGS = -openmp -openmp_report1 -w -fpp1 -axT -fltconsistency -mp1 -fp-model strict #FLANGFLAGS = -openmp -openmp_report1 -w -fpp1 -fltconsistency -mp1 -fp-model strict FLANGFLAGS0 = -parallel -w -fltconsistency -mp1 FLANGFLAGS1 = -parallel -w -fltconsistency -mp1 -mcmodel=medium -shared-intel FLANGFLAGS2 = -parallel -openmp -openmp_report1 -w -fltconsistency -mp1 -mcmodel=medium -shared-intel FLANGFLAGS3 = -parallel -openmp -openmp_report1 -w -fltconsistency -mp1 -double_size 64 FLANGFLAGS4 = -parallel -openmp -openmp_report1 -w -fltconsistency -mp1 -double_size 128 FLANGFLAGS5 = -parallel -openmp -openmp_report1 -w -fltconsistency -mp1 -mcmodel=large -shared-intel -axT FLANGFLAGS = $(FLANGFLAGS0) FFLAGS = $(FLANGFLAGS) $(FINCFLAGS) # MathKernelLibrary enthaelt optimierte Funktionen ##LIBS = -L /opt/intel/mkl/10.1.0.009/lib/em64t -lmkl_em64t -lmkl_lapack -lmkl -lguide -lpthread LIBS = -mcmodel=medium -shared-intel -L /opt/intel/mkl/10.1.0.009/lib/em64t -lmkl_intel_lp64 -lmkl_intel_thread -lmkl_core -lguide -lpthread OBJS01 = darstellung.o OBJS02 = bisektion.o OBJS03 = LGSsolve.o OBJS04 = diag.o OBJS05 = lanczos.o OBJS06 = RKInt.o rkdumb.o rk4.o BINARIES = darstellung bisektion LGSsolve diag lanczos RKInt all : darstellung bisektion LGSsolve diag lanczos RKInt clean: rm $(BINARIES) *.o darstellung : $(OBJS01) $(FC) -o darstellung $(OBJS01) $(LIBS) bisektion : $(OBJS02) $(FC) -o bisektion $(OBJS02) $(LIBS) LGSsolve : $(OBJS03) $(FC) -o LGSsolve $(OBJS03) $(LIBS) diag : $(OBJS04) $(FC) -o diag $(OBJS04) $(LIBS) lanczos : $(OBJS05) $(FC) -o lanczos $(OBJS05) $(LIBS) RKInt : $(OBJS06) $(FC) -o RKInt $(OBJS06) $(LIBS)