Skip to content

Commit

Permalink
integrated metis partition software
Browse files Browse the repository at this point in the history
  • Loading branch information
georgu committed May 21, 2020
1 parent 7ff2514 commit 5913e83
Show file tree
Hide file tree
Showing 13 changed files with 734 additions and 69 deletions.
4 changes: 4 additions & 0 deletions .gitignore
Original file line number Diff line number Diff line change
Expand Up @@ -147,6 +147,8 @@ fem3d/shyelab
fem3d/shyfem
fem3d/shypre
fem3d/shybas
fem3d/shypart
fem3d/shyparts
fem3d/flxelab
fem3d/nos2shy
fem3d/ous2shy
Expand Down Expand Up @@ -224,6 +226,8 @@ fembin/shyfem
fembin/shympi
fembin/shypre
fembin/shybas
fembin/shypart
fembin/shyparts
fembin/flxelab
fembin/shyadj
fembin/adjele
Expand Down
22 changes: 22 additions & 0 deletions COMMIT
Original file line number Diff line number Diff line change
@@ -1,5 +1,27 @@
============================================================

Thu May 21 11:13:34 CEST 2020

integrated metis partition software

.gitignore | 4 +
Makefile | 10 +-
Rules.make | 28 +++++
fem3d/Makefile | 55 ++++----
fem3d/links.f | 310 +++++++++++++++++++++++++++++++++++++++++-----
fem3d/shyparts_dummy.f | 54 ++++++++
fem3d/shyparts_metis.f | 259 ++++++++++++++++++++++++++++++++++++++
fem3d/sublnka.f | 3 +
fem3d/subver.f | 12 +-
fembin/git-release | 12 +-
femcheck/rules/Rules.dist | 28 +++++
11 files changed, 708 insertions(+), 67 deletions(-)
new file:
fem3d/shyparts_dummy.f
fem3d/shyparts_metis.f

============================================================

Tue May 19 12:45:59 CEST 2020

New version 7_5_70
Expand Down
10 changes: 6 additions & 4 deletions Makefile
Original file line number Diff line number Diff line change
Expand Up @@ -7,15 +7,17 @@
#
#------------------------------------------------------------------------

# general makefile for dir fem
#---------------------------------------------------------------
#
# general makefile for shyfem base directory
#
#---------------------------------------------------------------

#---------------------------------------------------------------
#
# targets that should be in all Makefiles of SUBDIRS:
#
# clean cleanall
#
# really necessary are only: fem clean cleanall
# fem clean cleanall
#
#---------------------------------------------------------------

Expand Down
28 changes: 28 additions & 0 deletions Rules.make
Original file line number Diff line number Diff line change
Expand Up @@ -7,6 +7,11 @@
#
#------------------------------------------------------------------------

#------------------------------------------------------------
#
# This is the Rules.make file for shyfem
#
#------------------------------------------------------------

#------------------------------------------------------------
# This file defines various parameters to be used
Expand Down Expand Up @@ -104,6 +109,29 @@ PARALLEL_MPI = NONE
#PARALLEL_MPI = NODE
#PARALLEL_MPI = ELEM

##############################################
# Partition library for domain decomposition
##############################################
#
# Here you specify the external module to be used
# for the partition of the grid. The software
# should be downloaded and installed separately.
#
# There are different options for the software:
#
# - METIS: http://glaros.dtc.umn.edu/gkhome/views/metis
# - ...
#
# The library directory is mandatory and indicates
# where the library and its include files can be found.
# Please leave out the final lib specification.
#
##############################################

PARTS = NONE
#PARTS = METIS
#PARTSDIR = /usr/local

##############################################
# Solver for matrix solution
##############################################
Expand Down
2 changes: 2 additions & 0 deletions VERSION
Original file line number Diff line number Diff line change
@@ -1,3 +1,5 @@
version 7_5_70 19-05-2020 VERS_7_5_70 commit_2020-05-21

version 7_5_70 19-05-2020 VERS_7_5_70

========================================================== 19-05-2020 - 7_5_70
Expand Down
55 changes: 27 additions & 28 deletions fem3d/Makefile
Original file line number Diff line number Diff line change
Expand Up @@ -28,8 +28,8 @@ include $(SHYFEMDIR)/Rules.make

LIBFEM = fem
LIBGOTM = gotm
LIBNETCDFC = netcdf
LIBNETCDFF = netcdff
LIBNETCDFC = netcdf
LIBNETCDFF = netcdff
LIBERSEM = bfm

LIBFFEM = $(DIRLIB)/lib$(LIBFEM).a
Expand Down Expand Up @@ -98,10 +98,6 @@ ifeq ($(SOLVER),PARALUTION)
LOCL = -l$(TMPLIB) -L$(OPENCLDIR)
PLFLAGS = -lstdc++ $(LOCL)
endif
# dynamic
# LIBG_PARA = -L$(DIRLIB) -l$(LIBPARA)
# static
# LIBG_PARA = $(DIRLIB)/lib$(LIBPARA).a
LIBG_PARA = -L $(PARADIR)/src/ -l$(LIBPARA)
LIBF_PARA = $(PARADIR)/src/lib$(LIBPARA).a
SOLVER_FILES = subcoo.o simsys_para.o subpara.o \
Expand All @@ -113,27 +109,6 @@ endif
# netcdf files
#------------------------------------------------------------

#NETCDFDDD := $(strip $(NETCDFDIR))
#ifeq ($(NETCDF),true)
# ifneq ("$(wildcard $(NETCDFDDD)/lib/libnetcdff.a)","")
# DIRLIB_NETCDF = $(NETCDFDDD)/lib/
# else ifneq ("$(wildcard $(NETCDFDDD)/lib/x86_64-linux-gnu/libnetcdff.a)","")
# DIRLIB_NETCDF = $(NETCDFDDD)/lib/x86_64-linux-gnu
# else ifneq ("$(wildcard /opt/sw/netcdf/lib/libnetcdff.a)","")
# NETCDFDDD = /opt/sw/netcdf
# DIRLIB_NETCDF = $(NETCDFDDD)/lib/
# else ifneq ("$(wildcard /usr/local/netcdf/lib/libnetcdff.a)","")
# NETCDFDDD = /usr/local/netcdf
# DIRLIB_NETCDF = $(NETCDFDDD)/lib/
# else ifneq ("$(wildcard /usr/local/lib/libnetcdff.a)","")
# NETCDFDDD = /usr/local
# DIRLIB_NETCDF = $(NETCDFDDD)/lib/
# else
# $(info "cannot find netcdf library libnetcdff.a ... aborting")
# endif
# #$(info DIRLIB_NETCDF = $(DIRLIB_NETCDF))
#endif

ifeq ($(NETCDF),true)
NCD := $(strip $(NETCDFDIR))
FC := $(strip $(FORTRAN_COMPILER))
Expand Down Expand Up @@ -246,6 +221,19 @@ ifeq ($(ECOLOGICAL),BFM)
INCL_BFM = $(BFMDIR)/include
endif

#------------------------------------------------------------
# Partition library
#------------------------------------------------------------

LIBPARTS =
PARTS_OBJ = shyparts_dummy.o
ifeq ($(PARTS),METIS)
PARTS_OBJ = shyparts_metis.o
LIBPARTS = metis
LIBG_PARTS = -L$(PARTSDIR)/lib/ -l$(LIBPARTS)
LIBF_PARTS = $(PARTSDIR)/lib/lib$(LIBPARTS).a
endif

#------------------------------------------------------------
# all libraries
#------------------------------------------------------------
Expand Down Expand Up @@ -542,7 +530,8 @@ EXEINFO = rstinf rst2shy tselab \
shyelab \
femelab femelab2 \
femintp \
femtide
femtide \
shypart shyparts
# also include femcombine
EXESPLIT =
EXELAP =
Expand Down Expand Up @@ -629,6 +618,11 @@ shybas: shybas.o $(BASOBJS) $(OUTOBJS)
shypart: shypart.o $(BASOBJS) $(OUTOBJS) $(PARTOBJS)
$(LINKER) $(LFLAGS) $@.o $(BASOBJS) $(OUTOBJS) $(PARTOBJS) -o $@

SHYPARTS = $(PARTS_OBJ) $(BASOBJS) $(OUTOBJS) $(PARTOBJS) $(LIBF_PARTS)

shyparts: $(SHYPARTS)
$(LINKER) $(LFLAGS) $(SHYPARTS) -o $@

basinf: basinf.o $(OUTOBJS)
$(LINKER) $(LFLAGS) $@.o $(OUTOBJS) -o $@

Expand Down Expand Up @@ -1648,6 +1642,11 @@ shypart.o: ../femlib/mod/basin.mod ../femlib/mod/basutil.mod \
../femlib/mod/clo.mod ../femlib/mod/evgeom.mod \
../femlib/mod/mod_geom.mod \
../femlib/mod/shympi.mod
shyparts_metis.o: ../femlib/mod/basin.mod \
../femlib/mod/basutil.mod ../femlib/mod/clo.mod \
../femlib/mod/evgeom.mod ../femlib/mod/grd.mod \
../femlib/mod/mod_geom.mod \
../femlib/mod/shympi.mod
shypre.o: ../femlib/mod/basin.mod ../femlib/mod/clo.mod \
../femlib/mod/grd.mod
shyproj.o: ../femlib/mod/basin.mod ../femlib/mod/clo.mod \
Expand Down
Loading

0 comments on commit 5913e83

Please sign in to comment.