From 83a3cc4dc4824baa0ae51d416293137dae4ebdd0 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?J=C3=B6rgen=20Tegn=C3=A9r?= Date: Sat, 3 Jun 2023 18:04:42 +0200 Subject: [PATCH] Minor fixes to remove compilation warnings and errors. --- nudg++/trunk/Include/IndexSort_Type.h | 4 +- nudg++/trunk/Include/LOG_funcs.h | 4 +- nudg++/trunk/Include/Mat_COL.h | 4 +- nudg++/trunk/Makefile | 925 +++++++++--------- nudg++/trunk/Src/Codes2D/NDG2D_Output.cpp | 12 +- nudg++/trunk/Src/Codes3D/NDG3D_Output.cpp | 6 +- nudg++/trunk/Src/Codes3D/Sample3D.cpp | 2 +- .../MaxwellNonCon2D/MaxwellNonCon2D.cpp | 4 +- nudg++/trunk/Src/ServiceRoutines/LOG.cpp | 4 +- nudg++/trunk/Src/Sparse/CS_Solve.cpp | 8 +- nudg++/trunk/system.mk | 2 +- 11 files changed, 489 insertions(+), 486 deletions(-) diff --git a/nudg++/trunk/Include/IndexSort_Type.h b/nudg++/trunk/Include/IndexSort_Type.h index 906809d..046d2b8 100644 --- a/nudg++/trunk/Include/IndexSort_Type.h +++ b/nudg++/trunk/Include/IndexSort_Type.h @@ -145,8 +145,8 @@ void MLIndex_sort::reverse_slice(T *lo, T *hi) template void MLIndex_sort::binarysort(T *lo, T *hi, T *start) { - register T *l, *p, *r; - register T pivot; + T *l, *p, *r; + T pivot; if (lo == start) ++start; diff --git a/nudg++/trunk/Include/LOG_funcs.h b/nudg++/trunk/Include/LOG_funcs.h index fb2dca6..4472ac4 100644 --- a/nudg++/trunk/Include/LOG_funcs.h +++ b/nudg++/trunk/Include/LOG_funcs.h @@ -16,8 +16,8 @@ void umLOG(const std::string& msg, int n=0); void umMSG(const std::string& msg, int n=0); void umTRC(const std::string& msg, int n=0); -void umWARNING(char* function_name, ...); -void umERROR(char* function_name, ...); +void umWARNING(const char* function_name, ...); +void umERROR(const char* function_name, ...); void umQUIT(); char* umOFORM(const char* fmt, ...); diff --git a/nudg++/trunk/Include/Mat_COL.h b/nudg++/trunk/Include/Mat_COL.h index ca25522..96d3aec 100644 --- a/nudg++/trunk/Include/Mat_COL.h +++ b/nudg++/trunk/Include/Mat_COL.h @@ -778,7 +778,7 @@ bool Mat_COL::resize(int M, int N, bool bInit, T x) this->destroy(); // clear allocation, zero all members if ((M>0) && (N>0)) { - initialize(M*N, bInit, x); + this->initialize(M*N, bInit, x); set_pointers(M, N); } } @@ -862,7 +862,7 @@ bool Mat_COL::reshape(int newM, int newN, bool bInit, T x) return false; // no change } if (newM*newN != m_M*m_N) { - extend(newM*newN,bInit,x); // expand or contract + this->extend(newM*newN,bInit,x); // expand or contract } set_pointers(newM, newN); // adjust logical indexing return true; // shape has changed diff --git a/nudg++/trunk/Makefile b/nudg++/trunk/Makefile index 4ae5318..ac6d9b6 100644 --- a/nudg++/trunk/Makefile +++ b/nudg++/trunk/Makefile @@ -1,461 +1,464 @@ -include ./system.mk - -INCLUDES = -I./Include - -CXXFLAGS = $(CXXOPTIONS) $(OPTFLAGS) $(INCLUDES) -FCFLAGS = $(FCOPTIONS) $(OPTFLAGS) - -.SUFFIXES: .cpp .f - - -OBJS = \ - Src/Arrays/ArrayMacros.o \ - Src/Arrays/Mat_COL.o \ - Src/Arrays/Sort_Index.o \ - Src/Codes1D/GradJacobiP.o \ - Src/Codes1D/JacobiGL.o \ - Src/Codes1D/JacobiGQ.o \ - Src/Codes1D/JacobiP.o \ - Src/Codes1D/Vandermonde1D.o \ - Src/Codes2D/BuildBCMaps2D.o \ - Src/Codes2D/BuildCurvedOPS2D.o \ - Src/Codes2D/BuildMaps2D.o \ - Src/Codes2D/BuildPeriodicMaps2D.o \ - Src/Codes2D/ConformingHrefine2D.o \ - Src/Codes2D/Connect2D.o \ - Src/Codes2D/Cub2D.o \ - Src/Codes2D/Cubature2D.o \ - Src/Codes2D/CubatureData2D.o \ - Src/Codes2D/CubatureVolumeMesh2D.o \ - Src/Codes2D/Curl2D.o \ - Src/Codes2D/CurvedDGDiv2D.o \ - Src/Codes2D/CurvedDGGrad2D.o \ - Src/Codes2D/CurvedDGJump2D.o \ - Src/Codes2D/CurvedPoissonIPDG2D.o \ - Src/Codes2D/CurvedPoissonIPDGbc2D.o \ - Src/Codes2D/CutOffFilter2D.o \ - Src/Codes2D/Div2D.o \ - Src/Codes2D/Dmatrices2D.o \ - Src/Codes2D/dtscale2D.o \ - Src/Codes2D/Filter2D.o \ - Src/Codes2D/FindLocalCoords2D.o \ - Src/Codes2D/GaussFaceMesh2D.o \ - Src/Codes2D/GeometricFactors2D.o \ - Src/Codes2D/Globals2D.o \ - Src/Codes2D/Grad2D.o \ - Src/Codes2D/GradSimplex2DP.o \ - Src/Codes2D/GradVandermonde2D.o \ - Src/Codes2D/Hrefine2D.o \ - Src/Codes2D/InterpMatrix2D.o \ - Src/Codes2D/Lift2D.o \ - Src/Codes2D/MakeCylinder2D.o \ - Src/Codes2D/NDG2D.o \ - Src/Codes2D/NDG2D_Output.o \ - Src/Codes2D/NDG2DDriver.o \ - Src/Codes2D/Nodes2D.o \ - Src/Codes2D/Normals2D.o \ - Src/Codes2D/PhysDmatrices2D.o \ - Src/Codes2D/rstoab.o \ - Src/Codes2D/Sample2D.o \ - Src/Codes2D/Simplex2DP.o \ - Src/Codes2D/StartUp2D.o \ - Src/Codes2D/tiConnect2D.o \ - Src/Codes2D/Vandermonde2D.o \ - Src/Codes2D/Warpfactor.o \ - Src/Codes2D/xytors.o \ - Src/Codes3D/BuildBCMaps3D.o \ - Src/Codes3D/BuildMaps3D.o \ - Src/Codes3D/Cub3D.o \ - Src/Codes3D/Cubature3D.o \ - Src/Codes3D/CubatureVolumeMesh3D.o \ - Src/Codes3D/Curl3D.o \ - Src/Codes3D/Div3D.o \ - Src/Codes3D/Dmatrices3D.o \ - Src/Codes3D/dtscale3D.o \ - Src/Codes3D/EquiNodes3D.o \ - Src/Codes3D/evalshift.o \ - Src/Codes3D/evalwarp.o \ - Src/Codes3D/FaceData3D.o \ - Src/Codes3D/FindLocalCoords3D.o \ - Src/Codes3D/GeometricFactors3D.o \ - Src/Codes3D/Globals3D.o \ - Src/Codes3D/Grad3D.o \ - Src/Codes3D/GradSimplex3DP.o \ - Src/Codes3D/GradVandermonde3D.o \ - Src/Codes3D/Hrefine3D.o \ - Src/Codes3D/InterpMatrix3D.o \ - Src/Codes3D/InterpNodeShapes3D.o \ - Src/Codes3D/IntersectTest3D.o \ - Src/Codes3D/Lift3D.o \ - Src/Codes3D/Make3DCouetteGeom.o \ - Src/Codes3D/NDG3D.o \ - Src/Codes3D/NDG3DDriver.o \ - Src/Codes3D/NDG3D_Output.o \ - Src/Codes3D/Nodes3D.o \ - Src/Codes3D/Normals3D.o \ - Src/Codes3D/PartialLiftData3D.o \ - Src/Codes3D/PhysDmatrices3D.o \ - Src/Codes3D/PoissonIPDG3D.o \ - Src/Codes3D/PoissonIPDGbc3D.o \ - Src/Codes3D/Poly3D.o \ - Src/Codes3D/rsttoabc.o \ - Src/Codes3D/Sample3D.o \ - Src/Codes3D/Simplex3DP.o \ - Src/Codes3D/StartUp3D.o \ - Src/Codes3D/tiConnect3D.o \ - Src/Codes3D/TopTheta.o \ - Src/Codes3D/Vandermonde3D.o \ - Src/Codes3D/WarpShiftFace3D.o \ - Src/Codes3D/xyztorst.o \ - Src/ServiceRoutines/Global_funcs.o \ - Src/ServiceRoutines/INIT.o \ - Src/ServiceRoutines/LOG.o \ - Src/ServiceRoutines/MeshReaderGambit2D.o \ - Src/ServiceRoutines/MeshReaderGambit3D.o \ - Src/ServiceRoutines/Tokenizer.o \ - Src/Sparse/CHOLMOD_solver.o \ - Src/Sparse/CS_Cholinc.o \ - Src/Sparse/CS_Solve.o \ - Src/Sparse/CS_Utils.o - -EULOBJS = \ - Src/Examples2D/CurvedEuler2D/ChannelBC2D.o \ - Src/Examples2D/CurvedEuler2D/ChannelIC2D.o \ - Src/Examples2D/CurvedEuler2D/CouetteBC2D.o \ - Src/Examples2D/CurvedEuler2D/CouetteIC2D.o \ - Src/Examples2D/CurvedEuler2D/CurvedEuler2D.o \ - Src/Examples2D/CurvedEuler2D/CurvedEuler2D_Driver.o \ - Src/Examples2D/CurvedEuler2D/CurvedEuler2D_Fluxes.o \ - Src/Examples2D/CurvedEuler2D/CurvedEuler2D_RHS.o \ - Src/Examples2D/CurvedEuler2D/CurvedEuler2D_Run.o \ - Src/Examples2D/CurvedEuler2D/EulerHLL2D.o \ - Src/Examples2D/CurvedEuler2D/EulerLF2D.o \ - Src/Examples2D/CurvedEuler2D/EulerRoe2D.o \ - Src/Examples2D/CurvedEuler2D/IsentropicVortexBC2D.o \ - Src/Examples2D/CurvedEuler2D/IsentropicVortexIC2D.o - -EULOBJS3D = \ - Src/Examples3D/Euler3D/Euler3D.o \ - Src/Examples3D/Euler3D/Euler3D_Driver.o \ - Src/Examples3D/Euler3D/Euler3D_Fluxes.o \ - Src/Examples3D/Euler3D/Euler3D_RHS.o \ - Src/Examples3D/Euler3D/Euler3D_Run.o \ - Src/Examples3D/CouetteBC3D.o \ - Src/Examples3D/CouetteIC3D.o \ - Src/Examples3D/Euler3D/IsentropicVortexBC3D.o \ - Src/Examples3D/Euler3D/IsentropicVortexIC3D.o - -CNSOBJS = \ - Src/Examples2D/CurvedCNS2D/BoxFlowBC2D.o \ - Src/Examples2D/CurvedCNS2D/BoxFlowIC2D.o \ - Src/Examples2D/CurvedCNS2D/ChannelBC2D.o \ - Src/Examples2D/CurvedCNS2D/ChannelIC2D.o \ - Src/Examples2D/CurvedCNS2D/CurvedCNS2D.o \ - Src/Examples2D/CurvedCNS2D/CurvedCNS2D_Driver.o \ - Src/Examples2D/CurvedCNS2D/CurvedCNS2D_RHS.o \ - Src/Examples2D/CurvedCNS2D/CurvedCNS2D_Run.o \ - Src/Examples2D/CurvedCNS2D/CylBC2D.o \ - Src/Examples2D/CurvedCNS2D/CylIC2D.o - -INSOBJS = \ - Src/Examples2D/CurvedINS2D/CurvedINS2D.o \ - Src/Examples2D/CurvedINS2D/CurvedINS2D_Driver.o \ - Src/Examples2D/CurvedINS2D/CurvedINS2D_Run.o \ - Src/Examples2D/CurvedINS2D/CurvedINSPressureSetUp2D.o \ - Src/Examples2D/CurvedINS2D/CurvedINSViscous2D.o \ - Src/Examples2D/CurvedINS2D/CurvedINSViscousSetUp2D.o \ - Src/Examples2D/CurvedINS2D/INSAdvection2D.o \ - Src/Examples2D/CurvedINS2D/INSLiftDrag2D.o \ - Src/Examples2D/CurvedINS2D/INSPressure2D.o \ - \ - Src/Examples2D/CurvedINS2D/INScylinderBC2D.o \ - Src/Examples2D/CurvedINS2D/INScylinderIC2D.o \ - Src/Examples2D/CurvedINS2D/KovasznayBC2D.o \ - Src/Examples2D/CurvedINS2D/KovasznayIC2D.o \ - Src/Examples2D/CurvedINS2D/PearsonVortexBC2D.o \ - Src/Examples2D/CurvedINS2D/PearsonVortexIC2D.o \ - Src/Examples2D/CurvedINS2D/INS_IC_BC_TODO.o - - -MAXOBJS = \ - Src/Examples2D/Maxwell2D/Maxwell2D.o \ - Src/Examples2D/Maxwell2D/Maxwell2D_Driver.o \ - Src/Examples2D/Maxwell2D/Maxwell2D_RHS.o \ - Src/Examples2D/Maxwell2D/Maxwell2D_Run.o \ - \ - Src/Examples2D/MaxwellCurved2D/MaxwellCurved2D.o \ - Src/Examples2D/MaxwellCurved2D/MaxwellCurved2D_Driver.o \ - Src/Examples2D/MaxwellCurved2D/MaxwellCurved2D_RHS.o \ - \ - Src/Examples2D/MaxwellNonCon2D/BuildHNonCon2D.o \ - Src/Examples2D/MaxwellNonCon2D/BuildPNonCon2D.o \ - Src/Examples2D/MaxwellNonCon2D/MaxwellNonCon2D.o \ - Src/Examples2D/MaxwellNonCon2D/MaxwellNonCon2D_Driver.o \ - Src/Examples2D/MaxwellNonCon2D/MaxwellNonCon2D_RHS.o \ - Src/Examples2D/MaxwellNonCon2D/MaxwellNonCon2D_Run.o \ - Src/Examples2D/MaxwellNonCon2D/MaxwellNonCon2D_Test_H.o \ - Src/Examples2D/MaxwellNonCon2D/MaxwellNonCon2D_Test_P.o \ - \ - Src/Examples3D/Maxwell3D/Maxwell3D.o \ - Src/Examples3D/Maxwell3D/Maxwell3D_Driver.o \ - Src/Examples3D/Maxwell3D/Maxwell3D_RHS.o \ - Src/Examples3D/Maxwell3D/Maxwell3D_Run.o - - -ARBCOBJS = \ - Src/Examples2D/MaxwellARBC/ARBCplane2D.o \ - Src/Examples2D/MaxwellARBC/ARBCplane2D_Driver.o \ - Src/Examples2D/MaxwellARBC/ARBCplane2D_Ops.o \ - Src/Examples2D/MaxwellARBC/ARBCplane2D_RHS.o \ - Src/Examples2D/MaxwellARBC/ARBCplane2D_Run.o \ - Src/Examples2D/MaxwellARBC/DG_Ops_1D.o \ - Src/Examples2D/MaxwellARBC/wts500_f.o \ - Src/Examples2D/MaxwellARBC/PECCylSolution2D.o - -SHOCKOBJS = \ - Src/Examples2D/EulerShock2D/EulerLimiter2D.o \ - Src/Examples2D/EulerShock2D/EulerShock2D.o \ - Src/Examples2D/EulerShock2D/EulerShock2D_Driver.o \ - Src/Examples2D/EulerShock2D/EulerShock2D_Run.o \ - Src/Examples2D/EulerShock2D/EulerShock2D_Run_Iter.o \ - Src/Examples2D/EulerShock2D/ForwardStepBC2D.o \ - Src/Examples2D/EulerShock2D/ForwardStepIC2D.o \ - Src/Examples2D/EulerShock2D/InletBC2D.o \ - Src/Examples2D/EulerShock2D/InletIC2D.o - -T3DOBJS = \ - Src/Examples3D/TestPoissonIPDG3D/TestPoissonIPDG3D.o \ - Src/Examples3D/NonCon3D/FindNonCon3D_V2.o \ - Src/Examples3D/NonCon3D/IPDGErrorNorm3D.o \ - Src/Examples3D/NonCon3D/NonConPoissonIPDG3D_V2.o \ - Src/Examples3D/NonCon3D/ROHOP3D.o \ - Src/Examples3D/NonCon3D/ROHOP3D_BdryTerms.o \ - Src/Examples3D/NonCon3D/ROHOP3D_Driver.o \ - Src/Examples3D/NonCon3D/ROHOP3D_Funcs.o \ - Src/Examples3D/NonCon3D/ROHOP3D_Run.o - - -BLASOBJS = \ - BlasLapack/dasum.o \ - BlasLapack/daxpy.o \ - BlasLapack/dbdsqr.o \ - BlasLapack/dcabs1.o \ - BlasLapack/dcopy.o \ - BlasLapack/ddot.o \ - BlasLapack/dgebak.o \ - BlasLapack/dgebal.o \ - BlasLapack/dgebd2.o \ - BlasLapack/dgebrd.o \ - BlasLapack/dgecon.o \ - BlasLapack/dgeev.o \ - BlasLapack/dgehd2.o \ - BlasLapack/dgehrd.o \ - BlasLapack/dgelq2.o \ - BlasLapack/dgelqf.o \ - BlasLapack/dgelss.o \ - BlasLapack/dgemm.o \ - BlasLapack/dgemv.o \ - BlasLapack/dgeqr2.o \ - BlasLapack/dgeqrf.o \ - BlasLapack/dger.o \ - BlasLapack/dgesv.o \ - BlasLapack/dgesvd.o \ - BlasLapack/dgetf2.o \ - BlasLapack/dgetrf.o \ - BlasLapack/dgetrs.o \ - BlasLapack/dhseqr.o \ - BlasLapack/dlabad.o \ - BlasLapack/dlabrd.o \ - BlasLapack/dlacon.o \ - BlasLapack/dlacpy.o \ - BlasLapack/dladiv.o \ - BlasLapack/dlae2.o \ - BlasLapack/dlaev2.o \ - BlasLapack/dlahqr.o \ - BlasLapack/dlahrd.o \ - BlasLapack/dlaln2.o \ - BlasLapack/dlamch.o \ - BlasLapack/dlange.o \ - BlasLapack/dlanhs.o \ - BlasLapack/dlanst.o \ - BlasLapack/dlansy.o \ - BlasLapack/dlanv2.o \ - BlasLapack/dlapy2.o \ - BlasLapack/dlarf.o \ - BlasLapack/dlarfb.o \ - BlasLapack/dlarfg.o \ - BlasLapack/dlarft.o \ - BlasLapack/dlarfx.o \ - BlasLapack/dlartg.o \ - BlasLapack/dlas2.o \ - BlasLapack/dlascl.o \ - BlasLapack/dlaset.o \ - BlasLapack/dlasq1.o \ - BlasLapack/dlasq2.o \ - BlasLapack/dlasq3.o \ - BlasLapack/dlasq4.o \ - BlasLapack/dlasq5.o \ - BlasLapack/dlasq6.o \ - BlasLapack/dlasr.o \ - BlasLapack/dlasrt.o \ - BlasLapack/dlassq.o \ - BlasLapack/dlasv2.o \ - BlasLapack/dlaswp.o \ - BlasLapack/dlatrd.o \ - BlasLapack/dlatrs.o \ - BlasLapack/dnrm2.o \ - BlasLapack/dorg2l.o \ - BlasLapack/dorg2r.o \ - BlasLapack/dorgbr.o \ - BlasLapack/dorghr.o \ - BlasLapack/dorgl2.o \ - BlasLapack/dorglq.o \ - BlasLapack/dorgql.o \ - BlasLapack/dorgqr.o \ - BlasLapack/dorgtr.o \ - BlasLapack/dorm2r.o \ - BlasLapack/dormbr.o \ - BlasLapack/dorml2.o \ - BlasLapack/dormlq.o \ - BlasLapack/dormqr.o \ - BlasLapack/dpbtf2.o \ - BlasLapack/dpbtrf.o \ - BlasLapack/dpbtrs.o \ - BlasLapack/dposv.o \ - BlasLapack/dpotf2.o \ - BlasLapack/dpotrf.o \ - BlasLapack/dpotrs.o \ - BlasLapack/drot.o \ - BlasLapack/drscl.o \ - BlasLapack/dscal.o \ - BlasLapack/dsteqr.o \ - BlasLapack/dsterf.o \ - BlasLapack/dstev.o \ - BlasLapack/dswap.o \ - BlasLapack/dsyev.o \ - BlasLapack/dsymv.o \ - BlasLapack/dsyr.o \ - BlasLapack/dsyr2.o \ - BlasLapack/dsyr2k.o \ - BlasLapack/dsyrfs.o \ - BlasLapack/dsyrk.o \ - BlasLapack/dsytd2.o \ - BlasLapack/dsytrd.o \ - BlasLapack/dtbsv.o \ - BlasLapack/dtrevc.o \ - BlasLapack/dtrmm.o \ - BlasLapack/dtrmv.o \ - BlasLapack/dtrsm.o \ - BlasLapack/dtrsv.o \ - BlasLapack/dzasum.o \ - BlasLapack/dzsum1.o \ - BlasLapack/idamax.o \ - BlasLapack/ieeeck.o \ - BlasLapack/ilaenv.o \ - BlasLapack/izamax.o \ - BlasLapack/izmax1.o \ - BlasLapack/lsame.o \ - BlasLapack/xerbla.o \ - BlasLapack/zaxpy.o \ - BlasLapack/zcopy.o \ - BlasLapack/zdotc.o \ - BlasLapack/zdotu.o \ - BlasLapack/zdrscl.o \ - BlasLapack/zdscal.o \ - BlasLapack/zgecon.o \ - BlasLapack/zgemm.o \ - BlasLapack/zgeru.o \ - BlasLapack/zgetf2.o \ - BlasLapack/zgetrf.o \ - BlasLapack/zlacon.o \ - BlasLapack/zladiv.o \ - BlasLapack/zlaswp.o \ - BlasLapack/zlatrs.o \ - BlasLapack/zscal.o \ - BlasLapack/zswap.o \ - BlasLapack/ztrsm.o \ - BlasLapack/ztrsv.o - - -.cpp.o: - $(CXX) $(CXXFLAGS) -o $*.o -c $*.cpp - -.f.o: - $(FC) $(FCFLAGS) -o $*.o -c $*.f - -libBlasLapack: $(BLASOBJS) - $(AR) libBlasLapack.a $(BLASOBJS) - $(RANLIB) libBlasLapack.a - $(MV) libBlasLapack.a ./Lib - -libNDG: $(OBJS) - $(AR) $@.a $(OBJS) - $(RANLIB) $@.a - $(MV) $@.a ./Lib - -libINS: $(INSOBJS) - $(AR) $@.a $(INSOBJS) - $(RANLIB) $@.a - $(MV) $@.a ./Lib - -libMAX: $(MAXOBJS) - $(AR) $@.a $(MAXOBJS) - $(RANLIB) $@.a - $(MV) $@.a ./Lib - -libARBC: $(ARBCOBJS) - $(AR) $@.a $(ARBCOBJS) - $(RANLIB) $@.a - $(MV) $@.a ./Lib - -libT3D: $(T3DOBJS) - $(AR) $@.a $(T3DOBJS) - $(RANLIB) $@.a - $(MV) $@.a ./Lib - -libEUL: $(EULOBJS) - $(AR) $@.a $(EULOBJS) - $(RANLIB) $@.a - $(MV) $@.a ./Lib - - -Maxwell2D: libNDG libMAX libBlasLapack - $(LD) $(CXXFLAGS) -o bin/Maxwell2D Src/Examples2D/Maxwell2D/Maxwell2D_main.cpp -L./Lib -lMAX -lNDG $(BLASLAPACKLIBS) -lm - -MaxwellCurved2D: libNDG libMAX libBlasLapack - $(LD) $(CXXFLAGS) -o bin/MaxwellCurved2D Src/Examples2D/MaxwellCurved2D/MaxwellCurved2D_main.cpp -L./Lib -lMAX -lNDG $(BLASLAPACKLIBS) -lm - -MaxwellNonCon2D: libNDG libMAX libBlasLapack - $(LD) $(CXXFLAGS) -o bin/MaxwellNonCon2D Src/Examples2D/MaxwellNonCon2D/MaxwellNonCon2D_main.cpp -L./Lib -lMAX -lNDG $(BLASLAPACKLIBS) -lm - -ARBC2D: libNDG libARBC libBlasLapack - $(LD) $(CXXFLAGS) -o bin/ARBC2D Src/Examples2D/MaxwellARBC/ARBCplane2D_main.cpp -L./Lib $(BLASLAPACKLIBS) -lARBC -lNDG $(BLASLAPACKLIBS) -lm - -CurvedINS2D: libNDG libINS libBlasLapack - $(LD) $(CXXFLAGS) -o bin/CurvedINS2D Src/Examples2D/CurvedINS2D/CurvedINS2D_main.cpp -L./Lib -lINS -lNDG $(BLASLAPACKLIBS) -lm - -Euler2D: libEUL libNDG libBlasLapack - $(LD) $(CXXFLAGS) -o bin/Euler2D Src/Examples2D/CurvedEuler2D/CurvedEuler2D_main.cpp -L./Lib -lEUL -lNDG $(BLASLAPACKLIBS) -lm - -clean: - rm -f $(OBJS) - rm -f $(EULOBJS) - rm -f $(EULOBJS3D) - rm -f $(CNSOBJS) - rm -f $(INSOBJS) - rm -f $(MAXOBJS) - rm -f $(ARBCOBJS) - rm -f $(SHOCKOBJS) - rm -f $(T3DOBJS) - -realclean: clean - rm -rf *.o ./Lib/libNDG.a ./Lib/libMAX.a ./Lib/libINS.a ./Lib/libARBC.a ./Lib/libBlasLapack.a - ($(CD) BlasLapack; rm -rf *.o ) - ($(CD) Src/Arrays; rm -rf *.o ) - ($(CD) Src/Codes1D; rm -rf *.o ) - ($(CD) Src/Codes2D; rm -rf *.o ) - ($(CD) Src/Examples2D/Maxwell2D; rm -rf *.o ) - ($(CD) Src/Examples2D/MaxwellCurved2D; rm -rf *.o ) - ($(CD) Src/Examples2D/CurvedINS2D; rm -rf *.o ) - ($(CD) Src/ServiceRoutines; rm -rf *.o ) - ($(CD) Src/Sparse; rm -rf *.o ) +include ./system.mk + +INCLUDES = -I./Include + +CXXFLAGS = $(CXXOPTIONS) $(OPTFLAGS) $(INCLUDES) +FCFLAGS = $(FCOPTIONS) $(OPTFLAGS) + +.SUFFIXES: .cpp .f + + +OBJS = \ + Src/Arrays/ArrayMacros.o \ + Src/Arrays/Mat_COL.o \ + Src/Arrays/Sort_Index.o \ + Src/Codes1D/GradJacobiP.o \ + Src/Codes1D/JacobiGL.o \ + Src/Codes1D/JacobiGQ.o \ + Src/Codes1D/JacobiP.o \ + Src/Codes1D/Vandermonde1D.o \ + Src/Codes2D/BuildBCMaps2D.o \ + Src/Codes2D/BuildCurvedOPS2D.o \ + Src/Codes2D/BuildMaps2D.o \ + Src/Codes2D/BuildPeriodicMaps2D.o \ + Src/Codes2D/ConformingHrefine2D.o \ + Src/Codes2D/Connect2D.o \ + Src/Codes2D/Cub2D.o \ + Src/Codes2D/Cubature2D.o \ + Src/Codes2D/CubatureData2D.o \ + Src/Codes2D/CubatureVolumeMesh2D.o \ + Src/Codes2D/Curl2D.o \ + Src/Codes2D/CurvedDGDiv2D.o \ + Src/Codes2D/CurvedDGGrad2D.o \ + Src/Codes2D/CurvedDGJump2D.o \ + Src/Codes2D/CurvedPoissonIPDG2D.o \ + Src/Codes2D/CurvedPoissonIPDGbc2D.o \ + Src/Codes2D/CutOffFilter2D.o \ + Src/Codes2D/Div2D.o \ + Src/Codes2D/Dmatrices2D.o \ + Src/Codes2D/dtscale2D.o \ + Src/Codes2D/Filter2D.o \ + Src/Codes2D/FindLocalCoords2D.o \ + Src/Codes2D/GaussFaceMesh2D.o \ + Src/Codes2D/GeometricFactors2D.o \ + Src/Codes2D/Globals2D.o \ + Src/Codes2D/Grad2D.o \ + Src/Codes2D/GradSimplex2DP.o \ + Src/Codes2D/GradVandermonde2D.o \ + Src/Codes2D/Hrefine2D.o \ + Src/Codes2D/InterpMatrix2D.o \ + Src/Codes2D/Lift2D.o \ + Src/Codes2D/MakeCylinder2D.o \ + Src/Codes2D/NDG2D.o \ + Src/Codes2D/NDG2D_Output.o \ + Src/Codes2D/NDG2DDriver.o \ + Src/Codes2D/Nodes2D.o \ + Src/Codes2D/Normals2D.o \ + Src/Codes2D/PhysDmatrices2D.o \ + Src/Codes2D/rstoab.o \ + Src/Codes2D/Sample2D.o \ + Src/Codes2D/Simplex2DP.o \ + Src/Codes2D/StartUp2D.o \ + Src/Codes2D/tiConnect2D.o \ + Src/Codes2D/Vandermonde2D.o \ + Src/Codes2D/Warpfactor.o \ + Src/Codes2D/xytors.o \ + Src/Codes3D/BuildBCMaps3D.o \ + Src/Codes3D/BuildMaps3D.o \ + Src/Codes3D/Cub3D.o \ + Src/Codes3D/Cubature3D.o \ + Src/Codes3D/CubatureVolumeMesh3D.o \ + Src/Codes3D/Curl3D.o \ + Src/Codes3D/Div3D.o \ + Src/Codes3D/Dmatrices3D.o \ + Src/Codes3D/dtscale3D.o \ + Src/Codes3D/EquiNodes3D.o \ + Src/Codes3D/evalshift.o \ + Src/Codes3D/evalwarp.o \ + Src/Codes3D/FaceData3D.o \ + Src/Codes3D/FindLocalCoords3D.o \ + Src/Codes3D/GeometricFactors3D.o \ + Src/Codes3D/Globals3D.o \ + Src/Codes3D/Grad3D.o \ + Src/Codes3D/GradSimplex3DP.o \ + Src/Codes3D/GradVandermonde3D.o \ + Src/Codes3D/Hrefine3D.o \ + Src/Codes3D/InterpMatrix3D.o \ + Src/Codes3D/InterpNodeShapes3D.o \ + Src/Codes3D/IntersectTest3D.o \ + Src/Codes3D/Lift3D.o \ + Src/Codes3D/Make3DCouetteGeom.o \ + Src/Codes3D/NDG3D.o \ + Src/Codes3D/NDG3DDriver.o \ + Src/Codes3D/NDG3D_Output.o \ + Src/Codes3D/Nodes3D.o \ + Src/Codes3D/Normals3D.o \ + Src/Codes3D/PartialLiftData3D.o \ + Src/Codes3D/PhysDmatrices3D.o \ + Src/Codes3D/PoissonIPDG3D.o \ + Src/Codes3D/PoissonIPDGbc3D.o \ + Src/Codes3D/Poly3D.o \ + Src/Codes3D/rsttoabc.o \ + Src/Codes3D/Sample3D.o \ + Src/Codes3D/Simplex3DP.o \ + Src/Codes3D/StartUp3D.o \ + Src/Codes3D/tiConnect3D.o \ + Src/Codes3D/TopTheta.o \ + Src/Codes3D/Vandermonde3D.o \ + Src/Codes3D/WarpShiftFace3D.o \ + Src/Codes3D/xyztorst.o \ + Src/ServiceRoutines/Global_funcs.o \ + Src/ServiceRoutines/INIT.o \ + Src/ServiceRoutines/LOG.o \ + Src/ServiceRoutines/MeshReaderGambit2D.o \ + Src/ServiceRoutines/MeshReaderGambit3D.o \ + Src/ServiceRoutines/Tokenizer.o \ + Src/Sparse/CHOLMOD_solver.o \ + Src/Sparse/CS_Cholinc.o \ + Src/Sparse/CS_Solve.o \ + Src/Sparse/CS_Utils.o + +EULOBJS = \ + Src/Examples2D/CurvedEuler2D/ChannelBC2D.o \ + Src/Examples2D/CurvedEuler2D/ChannelIC2D.o \ + Src/Examples2D/CurvedEuler2D/CouetteBC2D.o \ + Src/Examples2D/CurvedEuler2D/CouetteIC2D.o \ + Src/Examples2D/CurvedEuler2D/CurvedEuler2D.o \ + Src/Examples2D/CurvedEuler2D/CurvedEuler2D_Driver.o \ + Src/Examples2D/CurvedEuler2D/CurvedEuler2D_Fluxes.o \ + Src/Examples2D/CurvedEuler2D/CurvedEuler2D_RHS.o \ + Src/Examples2D/CurvedEuler2D/CurvedEuler2D_Run.o \ + Src/Examples2D/CurvedEuler2D/EulerHLL2D.o \ + Src/Examples2D/CurvedEuler2D/EulerLF2D.o \ + Src/Examples2D/CurvedEuler2D/EulerRoe2D.o \ + Src/Examples2D/CurvedEuler2D/IsentropicVortexBC2D.o \ + Src/Examples2D/CurvedEuler2D/IsentropicVortexIC2D.o + +EULOBJS3D = \ + Src/Examples3D/Euler3D/Euler3D.o \ + Src/Examples3D/Euler3D/Euler3D_Driver.o \ + Src/Examples3D/Euler3D/Euler3D_Fluxes.o \ + Src/Examples3D/Euler3D/Euler3D_RHS.o \ + Src/Examples3D/Euler3D/Euler3D_Run.o \ + Src/Examples3D/CouetteBC3D.o \ + Src/Examples3D/CouetteIC3D.o \ + Src/Examples3D/Euler3D/IsentropicVortexBC3D.o \ + Src/Examples3D/Euler3D/IsentropicVortexIC3D.o + +CNSOBJS = \ + Src/Examples2D/CurvedCNS2D/BoxFlowBC2D.o \ + Src/Examples2D/CurvedCNS2D/BoxFlowIC2D.o \ + Src/Examples2D/CurvedCNS2D/ChannelBC2D.o \ + Src/Examples2D/CurvedCNS2D/ChannelIC2D.o \ + Src/Examples2D/CurvedCNS2D/CurvedCNS2D.o \ + Src/Examples2D/CurvedCNS2D/CurvedCNS2D_Driver.o \ + Src/Examples2D/CurvedCNS2D/CurvedCNS2D_RHS.o \ + Src/Examples2D/CurvedCNS2D/CurvedCNS2D_Run.o \ + Src/Examples2D/CurvedCNS2D/CylBC2D.o \ + Src/Examples2D/CurvedCNS2D/CylIC2D.o + +INSOBJS = \ + Src/Examples2D/CurvedINS2D/CurvedINS2D.o \ + Src/Examples2D/CurvedINS2D/CurvedINS2D_Driver.o \ + Src/Examples2D/CurvedINS2D/CurvedINS2D_Run.o \ + Src/Examples2D/CurvedINS2D/CurvedINSPressureSetUp2D.o \ + Src/Examples2D/CurvedINS2D/CurvedINSViscous2D.o \ + Src/Examples2D/CurvedINS2D/CurvedINSViscousSetUp2D.o \ + Src/Examples2D/CurvedINS2D/INSAdvection2D.o \ + Src/Examples2D/CurvedINS2D/INSLiftDrag2D.o \ + Src/Examples2D/CurvedINS2D/INSPressure2D.o \ + \ + Src/Examples2D/CurvedINS2D/INScylinderBC2D.o \ + Src/Examples2D/CurvedINS2D/INScylinderIC2D.o \ + Src/Examples2D/CurvedINS2D/KovasznayBC2D.o \ + Src/Examples2D/CurvedINS2D/KovasznayIC2D.o \ + Src/Examples2D/CurvedINS2D/PearsonVortexBC2D.o \ + Src/Examples2D/CurvedINS2D/PearsonVortexIC2D.o \ + Src/Examples2D/CurvedINS2D/INS_IC_BC_TODO.o + + +MAXOBJS = \ + Src/Examples2D/Maxwell2D/Maxwell2D.o \ + Src/Examples2D/Maxwell2D/Maxwell2D_Driver.o \ + Src/Examples2D/Maxwell2D/Maxwell2D_RHS.o \ + Src/Examples2D/Maxwell2D/Maxwell2D_Run.o \ + \ + Src/Examples2D/MaxwellCurved2D/MaxwellCurved2D.o \ + Src/Examples2D/MaxwellCurved2D/MaxwellCurved2D_Driver.o \ + Src/Examples2D/MaxwellCurved2D/MaxwellCurved2D_RHS.o \ + \ + Src/Examples2D/MaxwellNonCon2D/BuildHNonCon2D.o \ + Src/Examples2D/MaxwellNonCon2D/BuildPNonCon2D.o \ + Src/Examples2D/MaxwellNonCon2D/MaxwellNonCon2D.o \ + Src/Examples2D/MaxwellNonCon2D/MaxwellNonCon2D_Driver.o \ + Src/Examples2D/MaxwellNonCon2D/MaxwellNonCon2D_RHS.o \ + Src/Examples2D/MaxwellNonCon2D/MaxwellNonCon2D_Run.o \ + Src/Examples2D/MaxwellNonCon2D/MaxwellNonCon2D_Test_H.o \ + Src/Examples2D/MaxwellNonCon2D/MaxwellNonCon2D_Test_P.o \ + \ + Src/Examples3D/Maxwell3D/Maxwell3D.o \ + Src/Examples3D/Maxwell3D/Maxwell3D_Driver.o \ + Src/Examples3D/Maxwell3D/Maxwell3D_RHS.o \ + Src/Examples3D/Maxwell3D/Maxwell3D_Run.o + + +ARBCOBJS = \ + Src/Examples2D/MaxwellARBC/ARBCplane2D.o \ + Src/Examples2D/MaxwellARBC/ARBCplane2D_Driver.o \ + Src/Examples2D/MaxwellARBC/ARBCplane2D_Ops.o \ + Src/Examples2D/MaxwellARBC/ARBCplane2D_RHS.o \ + Src/Examples2D/MaxwellARBC/ARBCplane2D_Run.o \ + Src/Examples2D/MaxwellARBC/DG_Ops_1D.o \ + Src/Examples2D/MaxwellARBC/wts500_f.o \ + Src/Examples2D/MaxwellARBC/PECCylSolution2D.o + +SHOCKOBJS = \ + Src/Examples2D/EulerShock2D/EulerLimiter2D.o \ + Src/Examples2D/EulerShock2D/EulerShock2D.o \ + Src/Examples2D/EulerShock2D/EulerShock2D_Driver.o \ + Src/Examples2D/EulerShock2D/EulerShock2D_Run.o \ + Src/Examples2D/EulerShock2D/EulerShock2D_Run_Iter.o \ + Src/Examples2D/EulerShock2D/ForwardStepBC2D.o \ + Src/Examples2D/EulerShock2D/ForwardStepIC2D.o \ + Src/Examples2D/EulerShock2D/InletBC2D.o \ + Src/Examples2D/EulerShock2D/InletIC2D.o + +T3DOBJS = \ + Src/Examples3D/TestPoissonIPDG3D/TestPoissonIPDG3D.o \ + Src/Examples3D/NonCon3D/FindNonCon3D_V2.o \ + Src/Examples3D/NonCon3D/IPDGErrorNorm3D.o \ + Src/Examples3D/NonCon3D/NonConPoissonIPDG3D_V2.o \ + Src/Examples3D/NonCon3D/ROHOP3D.o \ + Src/Examples3D/NonCon3D/ROHOP3D_BdryTerms.o \ + Src/Examples3D/NonCon3D/ROHOP3D_Driver.o \ + Src/Examples3D/NonCon3D/ROHOP3D_Funcs.o \ + Src/Examples3D/NonCon3D/ROHOP3D_Run.o + + +BLASOBJS = \ + BlasLapack/dasum.o \ + BlasLapack/daxpy.o \ + BlasLapack/dbdsqr.o \ + BlasLapack/dcabs1.o \ + BlasLapack/dcopy.o \ + BlasLapack/ddot.o \ + BlasLapack/dgebak.o \ + BlasLapack/dgebal.o \ + BlasLapack/dgebd2.o \ + BlasLapack/dgebrd.o \ + BlasLapack/dgecon.o \ + BlasLapack/dgeev.o \ + BlasLapack/dgehd2.o \ + BlasLapack/dgehrd.o \ + BlasLapack/dgelq2.o \ + BlasLapack/dgelqf.o \ + BlasLapack/dgelss.o \ + BlasLapack/dgemm.o \ + BlasLapack/dgemv.o \ + BlasLapack/dgeqr2.o \ + BlasLapack/dgeqrf.o \ + BlasLapack/dger.o \ + BlasLapack/dgesv.o \ + BlasLapack/dgesvd.o \ + BlasLapack/dgetf2.o \ + BlasLapack/dgetrf.o \ + BlasLapack/dgetrs.o \ + BlasLapack/dhseqr.o \ + BlasLapack/dlabad.o \ + BlasLapack/dlabrd.o \ + BlasLapack/dlacon.o \ + BlasLapack/dlacpy.o \ + BlasLapack/dladiv.o \ + BlasLapack/dlae2.o \ + BlasLapack/dlaev2.o \ + BlasLapack/dlahqr.o \ + BlasLapack/dlahrd.o \ + BlasLapack/dlaln2.o \ + BlasLapack/dlamch.o \ + BlasLapack/dlange.o \ + BlasLapack/dlanhs.o \ + BlasLapack/dlanst.o \ + BlasLapack/dlansy.o \ + BlasLapack/dlanv2.o \ + BlasLapack/dlapy2.o \ + BlasLapack/dlarf.o \ + BlasLapack/dlarfb.o \ + BlasLapack/dlarfg.o \ + BlasLapack/dlarft.o \ + BlasLapack/dlarfx.o \ + BlasLapack/dlartg.o \ + BlasLapack/dlas2.o \ + BlasLapack/dlascl.o \ + BlasLapack/dlaset.o \ + BlasLapack/dlasq1.o \ + BlasLapack/dlasq2.o \ + BlasLapack/dlasq3.o \ + BlasLapack/dlasq4.o \ + BlasLapack/dlasq5.o \ + BlasLapack/dlasq6.o \ + BlasLapack/dlasr.o \ + BlasLapack/dlasrt.o \ + BlasLapack/dlassq.o \ + BlasLapack/dlasv2.o \ + BlasLapack/dlaswp.o \ + BlasLapack/dlatrd.o \ + BlasLapack/dlatrs.o \ + BlasLapack/dnrm2.o \ + BlasLapack/dorg2l.o \ + BlasLapack/dorg2r.o \ + BlasLapack/dorgbr.o \ + BlasLapack/dorghr.o \ + BlasLapack/dorgl2.o \ + BlasLapack/dorglq.o \ + BlasLapack/dorgql.o \ + BlasLapack/dorgqr.o \ + BlasLapack/dorgtr.o \ + BlasLapack/dorm2r.o \ + BlasLapack/dormbr.o \ + BlasLapack/dorml2.o \ + BlasLapack/dormlq.o \ + BlasLapack/dormqr.o \ + BlasLapack/dpbtf2.o \ + BlasLapack/dpbtrf.o \ + BlasLapack/dpbtrs.o \ + BlasLapack/dposv.o \ + BlasLapack/dpotf2.o \ + BlasLapack/dpotrf.o \ + BlasLapack/dpotrs.o \ + BlasLapack/drot.o \ + BlasLapack/drscl.o \ + BlasLapack/dscal.o \ + BlasLapack/dsteqr.o \ + BlasLapack/dsterf.o \ + BlasLapack/dstev.o \ + BlasLapack/dswap.o \ + BlasLapack/dsyev.o \ + BlasLapack/dsymv.o \ + BlasLapack/dsyr.o \ + BlasLapack/dsyr2.o \ + BlasLapack/dsyr2k.o \ + BlasLapack/dsyrfs.o \ + BlasLapack/dsyrk.o \ + BlasLapack/dsytd2.o \ + BlasLapack/dsytrd.o \ + BlasLapack/dtbsv.o \ + BlasLapack/dtrevc.o \ + BlasLapack/dtrmm.o \ + BlasLapack/dtrmv.o \ + BlasLapack/dtrsm.o \ + BlasLapack/dtrsv.o \ + BlasLapack/dzasum.o \ + BlasLapack/dzsum1.o \ + BlasLapack/idamax.o \ + BlasLapack/ieeeck.o \ + BlasLapack/ilaenv.o \ + BlasLapack/izamax.o \ + BlasLapack/izmax1.o \ + BlasLapack/lsame.o \ + BlasLapack/xerbla.o \ + BlasLapack/zaxpy.o \ + BlasLapack/zcopy.o \ + BlasLapack/zdotc.o \ + BlasLapack/zdotu.o \ + BlasLapack/zdrscl.o \ + BlasLapack/zdscal.o \ + BlasLapack/zgecon.o \ + BlasLapack/zgemm.o \ + BlasLapack/zgeru.o \ + BlasLapack/zgetf2.o \ + BlasLapack/zgetrf.o \ + BlasLapack/zlacon.o \ + BlasLapack/zladiv.o \ + BlasLapack/zlaswp.o \ + BlasLapack/zlatrs.o \ + BlasLapack/zscal.o \ + BlasLapack/zswap.o \ + BlasLapack/ztrsm.o \ + BlasLapack/ztrsv.o + +.cpp.o: + $(CXX) $(CXXFLAGS) -o $*.o -c $*.cpp + +.f.o: + $(FC) $(FCFLAGS) -o $*.o -c $*.f + +libBlasLapack: $(BLASOBJS) + $(AR) libBlasLapack.a $(BLASOBJS) + $(RANLIB) libBlasLapack.a + mkdir -p ./Lib + $(MV) libBlasLapack.a ./Lib + +libNDG: $(OBJS) + $(AR) $@.a $(OBJS) + $(RANLIB) $@.a + $(MV) $@.a ./Lib + +libINS: $(INSOBJS) + $(AR) $@.a $(INSOBJS) + $(RANLIB) $@.a + $(MV) $@.a ./Lib + +libMAX: $(MAXOBJS) + $(AR) $@.a $(MAXOBJS) + $(RANLIB) $@.a + $(MV) $@.a ./Lib + +libARBC: $(ARBCOBJS) + $(AR) $@.a $(ARBCOBJS) + $(RANLIB) $@.a + $(MV) $@.a ./Lib + +libT3D: $(T3DOBJS) + $(AR) $@.a $(T3DOBJS) + $(RANLIB) $@.a + $(MV) $@.a ./Lib + +libEUL: $(EULOBJS) + $(AR) $@.a $(EULOBJS) + $(RANLIB) $@.a + $(MV) $@.a ./Lib + + +Maxwell2D: libNDG libMAX libBlasLapack + mkdir -p bin + $(LD) $(CXXFLAGS) -o bin/Maxwell2D Src/Examples2D/Maxwell2D/Maxwell2D_main.cpp -L./Lib -lMAX -lNDG $(BLASLAPACKLIBS) -lm + +MaxwellCurved2D: libNDG libMAX libBlasLapack + $(LD) $(CXXFLAGS) -o bin/MaxwellCurved2D Src/Examples2D/MaxwellCurved2D/MaxwellCurved2D_main.cpp -L./Lib -lMAX -lNDG $(BLASLAPACKLIBS) -lm + +MaxwellNonCon2D: libNDG libMAX libBlasLapack + $(LD) $(CXXFLAGS) -o bin/MaxwellNonCon2D Src/Examples2D/MaxwellNonCon2D/MaxwellNonCon2D_main.cpp -L./Lib -lMAX -lNDG $(BLASLAPACKLIBS) -lm + +ARBC2D: libNDG libARBC libBlasLapack + $(LD) $(CXXFLAGS) -o bin/ARBC2D Src/Examples2D/MaxwellARBC/ARBCplane2D_main.cpp -L./Lib $(BLASLAPACKLIBS) -lARBC -lNDG $(BLASLAPACKLIBS) -lm + +CurvedINS2D: libNDG libINS libBlasLapack + $(LD) $(CXXFLAGS) -o bin/CurvedINS2D Src/Examples2D/CurvedINS2D/CurvedINS2D_main.cpp -L./Lib -lINS -lNDG $(BLASLAPACKLIBS) -lm + +Euler2D: libEUL libNDG libBlasLapack + $(LD) $(CXXFLAGS) -o bin/Euler2D Src/Examples2D/CurvedEuler2D/CurvedEuler2D_main.cpp -L./Lib -lEUL -lNDG $(BLASLAPACKLIBS) -lm + +all: Maxwell2D MaxwellCurved2D CurvedINS2D Euler2D + +clean: + rm -f $(OBJS) + rm -f $(EULOBJS) + rm -f $(EULOBJS3D) + rm -f $(CNSOBJS) + rm -f $(INSOBJS) + rm -f $(MAXOBJS) + rm -f $(ARBCOBJS) + rm -f $(SHOCKOBJS) + rm -f $(T3DOBJS) + +realclean: clean + rm -rf *.o ./Lib/libEUL.a ./Lib/libNDG.a ./Lib/libMAX.a ./Lib/libINS.a ./Lib/libBlasLapack.a + ($(CD) BlasLapack; rm -rf *.o ) + ($(CD) Src/Arrays; rm -rf *.o ) + ($(CD) Src/Codes1D; rm -rf *.o ) + ($(CD) Src/Codes2D; rm -rf *.o ) + ($(CD) Src/Examples2D/Maxwell2D; rm -rf *.o ) + ($(CD) Src/Examples2D/MaxwellCurved2D; rm -rf *.o ) + ($(CD) Src/Examples2D/CurvedINS2D; rm -rf *.o ) + ($(CD) Src/ServiceRoutines; rm -rf *.o ) + ($(CD) Src/Sparse; rm -rf *.o ) diff --git a/nudg++/trunk/Src/Codes2D/NDG2D_Output.cpp b/nudg++/trunk/Src/Codes2D/NDG2D_Output.cpp index 5f5454c..c060aa1 100644 --- a/nudg++/trunk/Src/Codes2D/NDG2D_Output.cpp +++ b/nudg++/trunk/Src/Codes2D/NDG2D_Output.cpp @@ -77,7 +77,7 @@ void NDG2D::OutputVTK(const DMat& FData, int order, int zfield) //------------------------------------- // 1. Write the VTK header details //------------------------------------- - fprintf(fp, "# vtk DataFile Version 2"); + fprintf(fp, "# vtk DataFile Version 2.0"); fprintf(fp, "\nNuDG++ 2D simulation"); fprintf(fp, "\nASCII"); fprintf(fp, "\nDATASET UNSTRUCTURED_GRID\n"); @@ -236,7 +236,7 @@ void NDG2D::Output_DG_tris() //------------------------------------- // 1. Write the VTK header details //------------------------------------- - fprintf(fp, "# vtk DataFile Version 2"); + fprintf(fp, "# vtk DataFile Version 2.0"); fprintf(fp, "\nNuDG++ mesh"); fprintf(fp, "\nASCII"); fprintf(fp, "\nDATASET UNSTRUCTURED_GRID\n"); @@ -356,7 +356,7 @@ void NDG2D::Output_Mesh() //------------------------------------- // 1. Write the VTK header details //------------------------------------- - fprintf(fp, "# vtk DataFile Version 2"); + fprintf(fp, "# vtk DataFile Version 2.0"); fprintf(fp, "\nNuDG++ mesh"); fprintf(fp, "\nASCII"); fprintf(fp, "\nDATASET UNSTRUCTURED_GRID\n"); @@ -576,7 +576,7 @@ void NDG2D::OutputNodes(bool bFaceNodes) //------------------------------------- // 1. Write the VTK header details //------------------------------------- - fprintf(fp, "# vtk DataFile Version 2"); + fprintf(fp, "# vtk DataFile Version 2.0"); fprintf(fp, "\nNDGFem simulation nodes"); fprintf(fp, "\nASCII"); fprintf(fp, "\nDATASET UNSTRUCTURED_GRID\n"); @@ -687,7 +687,7 @@ void NDG2D::OutputNodes_cub() //------------------------------------- // 1. Write the VTK header details //------------------------------------- - fprintf(fp, "# vtk DataFile Version 2"); + fprintf(fp, "# vtk DataFile Version 2.0"); fprintf(fp, "\nNDGFem simulation nodes (high-order cubature)"); fprintf(fp, "\nASCII"); fprintf(fp, "\nDATASET UNSTRUCTURED_GRID\n"); @@ -792,7 +792,7 @@ void NDG2D::OutputNodes_gauss() //------------------------------------- // 1. Write the VTK header details //------------------------------------- - fprintf(fp, "# vtk DataFile Version 2"); + fprintf(fp, "# vtk DataFile Version 2.0"); fprintf(fp, "\nNDGFem simulation nodes (surface quadrature)"); fprintf(fp, "\nASCII"); fprintf(fp, "\nDATASET UNSTRUCTURED_GRID\n"); diff --git a/nudg++/trunk/Src/Codes3D/NDG3D_Output.cpp b/nudg++/trunk/Src/Codes3D/NDG3D_Output.cpp index 7a2b61a..2ca94c6 100644 --- a/nudg++/trunk/Src/Codes3D/NDG3D_Output.cpp +++ b/nudg++/trunk/Src/Codes3D/NDG3D_Output.cpp @@ -79,7 +79,7 @@ void NDG3D::OutputVTK(const DMat& FData, int order, int zfield) //------------------------------------- // 1. Write the VTK header details //------------------------------------- - fprintf(fp, "# vtk DataFile Version 2"); + fprintf(fp, "# vtk DataFile Version 2.0"); fprintf(fp, "\nNuDG++ 3D simulation"); fprintf(fp, "\nASCII"); fprintf(fp, "\nDATASET UNSTRUCTURED_GRID\n"); @@ -223,7 +223,7 @@ void NDG3D::Output_Mesh() //------------------------------------- // 1. Write the VTK header details //------------------------------------- - fprintf(fp, "# vtk DataFile Version 2"); + fprintf(fp, "# vtk DataFile Version 2.0"); fprintf(fp, "\nNuDG++ 3D mesh"); fprintf(fp, "\nASCII"); fprintf(fp, "\nDATASET UNSTRUCTURED_GRID\n"); @@ -452,7 +452,7 @@ void NDG3D::OutputNodes(bool bFaceNodes) //------------------------------------- // 1. Write the VTK header details //------------------------------------- - fprintf(fp, "# vtk DataFile Version 2"); + fprintf(fp, "# vtk DataFile Version 2.0"); fprintf(fp, "\nNDGFem simulation nodes"); fprintf(fp, "\nASCII"); fprintf(fp, "\nDATASET UNSTRUCTURED_GRID\n"); diff --git a/nudg++/trunk/Src/Codes3D/Sample3D.cpp b/nudg++/trunk/Src/Codes3D/Sample3D.cpp index 2ea935a..ec5cbf0 100644 --- a/nudg++/trunk/Src/Codes3D/Sample3D.cpp +++ b/nudg++/trunk/Src/Codes3D/Sample3D.cpp @@ -32,7 +32,7 @@ void NDG3D::Sample3D #if (0) // find containing tet - [sampletet,tetbary] = tsearchn([VX', VY', VZ'], EToV, [xout,yout,zout]); + [sampletet,tetbary] = tsearchn([VX.transpose(), VY.transpose(), VZ.transpose()], EToV, [xout,yout,zout]); #else //####################################################### DVec tetbary(4); diff --git a/nudg++/trunk/Src/Examples2D/MaxwellNonCon2D/MaxwellNonCon2D.cpp b/nudg++/trunk/Src/Examples2D/MaxwellNonCon2D/MaxwellNonCon2D.cpp index 879caef..6a517e8 100644 --- a/nudg++/trunk/Src/Examples2D/MaxwellNonCon2D/MaxwellNonCon2D.cpp +++ b/nudg++/trunk/Src/Examples2D/MaxwellNonCon2D/MaxwellNonCon2D.cpp @@ -355,7 +355,7 @@ void Output_DG_tris(const PInfoV& pinfo) //------------------------------------- // 1. Write the VTK header details //------------------------------------- - fprintf(fp, "# vtk DataFile Version 2"); + fprintf(fp, "# vtk DataFile Version 2.0"); fprintf(fp, "\nDG node connectivity"); fprintf(fp, "\nASCII"); fprintf(fp, "\nDATASET UNSTRUCTURED_GRID\n"); @@ -467,7 +467,7 @@ void Output_DG_sol(const PInfoV& pinfo, const DMat& Q) //------------------------------------- // 1. Write the VTK header details //------------------------------------- - fprintf(fp, "# vtk DataFile Version 2"); + fprintf(fp, "# vtk DataFile Version 2.0"); fprintf(fp, "\nDG node connectivity"); fprintf(fp, "\nASCII"); fprintf(fp, "\nDATASET UNSTRUCTURED_GRID\n"); diff --git a/nudg++/trunk/Src/ServiceRoutines/LOG.cpp b/nudg++/trunk/Src/ServiceRoutines/LOG.cpp index af65e72..1d6b4c3 100644 --- a/nudg++/trunk/Src/ServiceRoutines/LOG.cpp +++ b/nudg++/trunk/Src/ServiceRoutines/LOG.cpp @@ -175,7 +175,7 @@ void umTRC(const std::string& msg, int n) //--------------------------------------------------------- -void umWARNING (char* function_name, ...) +void umWARNING (const char* function_name, ...) //--------------------------------------------------------- { // only g_nMax_Warnings warnings are allowed: @@ -206,7 +206,7 @@ void umWARNING (char* function_name, ...) //--------------------------------------------------------- -void umERROR (char* function_name, ...) +void umERROR (const char* function_name, ...) //--------------------------------------------------------- { static char buf[2048]; diff --git a/nudg++/trunk/Src/Sparse/CS_Solve.cpp b/nudg++/trunk/Src/Sparse/CS_Solve.cpp index 51c53c5..3bc458f 100644 --- a/nudg++/trunk/Src/Sparse/CS_Solve.cpp +++ b/nudg++/trunk/Src/Sparse/CS_Solve.cpp @@ -625,7 +625,7 @@ DVec& CS_PCG::solve(const DVec& rhs, double tol, int maxit) rho1=rho; rho=inner(r,z); - if ((0.0==rho) || isinf(rho)) { + if ((0.0==rho) || std::isinf(rho)) { m_flag = 4; break; } @@ -633,7 +633,7 @@ DVec& CS_PCG::solve(const DVec& rhs, double tol, int maxit) p = z; } else { beta = rho / rho1; - if ((0.0 == beta) || isinf(beta)) { + if ((0.0 == beta) || std::isinf(beta)) { m_flag = 4; break; } //p = z + beta * p; @@ -643,13 +643,13 @@ DVec& CS_PCG::solve(const DVec& rhs, double tol, int maxit) q = A*p; pq = inner(p,q); - if ((pq <= 0) || isinf(pq)) { + if ((pq <= 0) || std::isinf(pq)) { m_flag = 4; break; } else { alpha = rho / pq; } - if (isinf(alpha)) { + if (std::isinf(alpha)) { m_flag = 4; break; } diff --git a/nudg++/trunk/system.mk b/nudg++/trunk/system.mk index 8f6f54a..c635729 100644 --- a/nudg++/trunk/system.mk +++ b/nudg++/trunk/system.mk @@ -14,7 +14,7 @@ FC = gfortran LD = g++ # optimization flags passed to all compilers -OPTFLAGS = -O3 -DNDEBUG +OPTFLAGS = -O3 -DNDEBUG -Wno-free-nonheap-object # OPTFLAGS = -g -DDEBUG -D_DEBUG #OPTFLAGS = -Wall