forked from MFlowCode/MFC
-
Notifications
You must be signed in to change notification settings - Fork 2
Commit
This commit does not belong to any branch on this repository, and may belong to a fork outside of the repository.
- Loading branch information
1 parent
0bd266a
commit 2daf537
Showing
93 changed files
with
62,213 additions
and
0 deletions.
There are no files selected for viewing
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,34 @@ | ||
doc/Doxygen/*/html | ||
doc/Doxygen/*logo* | ||
doc/Doxygen/*icon* | ||
src/*/*.mod | ||
src/*/*.o | ||
src/pre_process_code/pre_process | ||
src/simulation_code/simulation | ||
src/post_process_code/post_process | ||
src/master_scripts/*.pyc | ||
src/master_scripts/__* | ||
make_doc.sh | ||
cases/ | ||
.DS_Store | ||
tests/*/D/* | ||
tests/*/p* | ||
tests/*/D_* | ||
tests/*/*.inf | ||
tests/*/*.inp | ||
tests/*/*.dat | ||
tests/*/silo* | ||
tests/*/restart* | ||
tests/*/*.out | ||
tests/*/binary | ||
example_cases/*/D/* | ||
example_cases/*/p* | ||
example_cases/*/D_* | ||
example_cases/*/*.inf | ||
example_cases/*/*.inp | ||
example_cases/*/*.dat | ||
example_cases/*/silo* | ||
example_cases/*/restart* | ||
example_cases/*/*.out | ||
example_cases/*/binary | ||
lib/fftw-3.3.8 |
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,46 @@ | ||
The MFC is distributed under the GNU GPLv3 license (or later). | ||
|
||
Contributors: S. H. Bryngelson, K. Schmidmayer, V. Coralic, J. Meng, K. Maeda, T. Colonius | ||
|
||
|
||
Spencer H. Bryngelson | ||
-------------------------------------------- | ||
Senior Postdoctoral Scholar | ||
California Institute of Technology | ||
Pasadena, California, USA | ||
Email: spencer@caltech.edu | ||
|
||
Kevin Schmidmayer | ||
-------------------------------------------- | ||
Postdoctoral Scholar | ||
California Institute of Technology | ||
Pasadena, California, USA | ||
Email: kevin.schmidmayer@gmail.com | ||
|
||
Vedran Coralic | ||
-------------------------------------------- | ||
Senior Research Scientist | ||
Prime Air, Amazon Inc. | ||
Seattle, Washington, USA | ||
Email: vcoralic@amazon.com | ||
|
||
Jomela Meng | ||
-------------------------------------------- | ||
Research Engineer | ||
Bosch Research and Technology Center | ||
Sunnyvale, California, USA | ||
Email: jomela.meng@gmail.com | ||
|
||
Kazuki Maeda | ||
-------------------------------------------- | ||
Acting Assistant Professor | ||
University of Washington | ||
Seattle, Washington, USA | ||
Email: kazuki.e.maeda@gmail.com | ||
|
||
Tim Colonius | ||
-------------------------------------------- | ||
Frank and Ora Lee Marble Professor of Mechanical Engineering | ||
California Institute of Technology | ||
Pasadena, California, USA | ||
Email: colonius@caltech.edu |
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,62 @@ | ||
#> Simulations using MFC depend upon Python, MPI, | ||
#> and FFTW. | ||
|
||
## Python ## | ||
If you do not have Python, it can be installed via | ||
Homebrew on OSX (https://www.brew.sh) as: | ||
$$ brew install python | ||
or compiled via your favorite package manager on Unix | ||
systems. | ||
|
||
## MPI ## | ||
An MPI fortran compiler is required for all systems. | ||
If you do not have one, Homebrew can take care of this | ||
on OSX: | ||
$$ brew install open-mpi | ||
or compiled via another package manager on Unix systems. | ||
|
||
## FFTW ## | ||
If you already have FFTW compiled: | ||
- Specify the location of your FFTW library and | ||
include files in Makefile.user (fftw_lib_dir and | ||
fftw_include_dir) | ||
|
||
If you do not have FFTW compiler, the library and | ||
installer are included in this package. Just: | ||
$$ cd installers | ||
$$ ./install_fftw.sh | ||
|
||
#> Post-processing of parallel data files is not required, | ||
#> but can indeed be handled with the MFC. For this, HDF5 | ||
#> and Silo must be installed | ||
|
||
On OSX, a custom tap for Silo is included in the installers | ||
directory. You can use it via | ||
$$ cd lib | ||
$$ brew install silo.rb | ||
This will install silo and its dependences (including HDF5) | ||
in their usual locations (/usr/local/lib and | ||
/usr/local/include) | ||
|
||
On Unix systems, you can install via a package manager or | ||
from source. On CentOS (also Windows 7), HDF5 | ||
binaries can be found at | ||
https://support.hdfgroup.org/ftp/HDF5/current18/bin/ | ||
Untar this archive in your intended location via | ||
$$ tar -zxf [your HDF5 archive] | ||
|
||
Silo should be downloaded at | ||
https://wci.llnl.gov/simulation/computer-codes/silo/downloads | ||
then | ||
$$ tar -zxf [your Silo archive] | ||
$$ cd [your Silo archive] | ||
$$ ./configure --prefix=[target installation directory] --enable-pythonmodule --enable-optimization --disable-hzip --disable-fpzip --enableportable-binary FC=mpif90 F77=mpif77 -with-hdf5=[your hdf5 directory]/include,/[your hdf5 directory]/lib --disable-silex | ||
$$ make | ||
$$ make install | ||
then add this line to your ~/.bash_profile | ||
export LD_LIBRARY_PATH=$LD_LIBRARY_PATH:$HOME/[your silo directory]/lib:/[your hdf5 directory]/lib | ||
and | ||
$$ source ~/.bash_profile | ||
|
||
You will then need to modify silo_lib_dir and silo_include_dir in | ||
Makefile.user to point to your silo directory |
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,3 @@ | ||
MFC | ||
|
||
Copyright © 2019 Spencer Bryngelson, Kevin Schmidmayer, Vedran Coralic, Jomela Meng, Kazuki Maeda, Timothy Colonius |
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,18 @@ | ||
|
||
READ "CONFIGURE" BEFORE PROCEEDING WITH INSTALL | ||
|
||
Once all dependencies have been installed, the MFC can be built via | ||
|
||
$$ make | ||
|
||
from the MFC directory. This will build all MFC components. Individual | ||
components can be built via | ||
|
||
$$ make [component] | ||
|
||
where [component] is one of "pre_process,simulation,post_process". | ||
|
||
Once this is completed, you can ensure that the software is working | ||
as intended by running | ||
|
||
$$ make test |
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,43 @@ | ||
include Makefile.user | ||
|
||
default: all | ||
|
||
include installers/Makefile.messages | ||
|
||
all: pre_process simulation post_process | ||
|
||
pre_process: | ||
@$(MAKE) -C src/pre_process_code -f makefile | ||
|
||
simulation: | ||
|
||
ifneq ("$(wildcard $(fftw_include_dir)/fftw3.*)","") | ||
ifneq ("$(wildcard $(fftw_lib_dir)/libfftw*.la)","") | ||
@$(MAKE) -C src/simulation_code -f makefile | ||
else | ||
@echo "$$FFTW_LIB_ERR" | ||
endif | ||
else | ||
@echo "$$FFTW_INC_ERR" | ||
endif | ||
|
||
post_process: | ||
|
||
ifneq ("$(wildcard $(silo_include_dir)/silo_*.inc)","") | ||
ifneq ("$(wildcard $(silo_lib_dir)/libsilo*.*a)","") | ||
@$(MAKE) -C src/post_process_code -f makefile | ||
else | ||
@echo "$$SILO_LIB_ERR" | ||
endif | ||
else | ||
@echo "$$SILO_INC_ERR" | ||
endif | ||
|
||
test: | ||
./tests/checks.sh | ||
|
||
.PHONY: clean | ||
clean: | ||
@$(MAKE) -C src/pre_process_code -f makefile clean | ||
@$(MAKE) -C src/simulation_code -f makefile clean | ||
@$(MAKE) -C src/post_process_code -f makefile clean |
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,38 @@ | ||
include ../../Makefile.user | ||
|
||
########################## FFTW Flags ########################### | ||
# Linker flags | ||
ifdef fftw_lib_dir | ||
ld_sim_flags = -L$(fftw_lib_dir) -lfftw3 -lm | ||
else | ||
ld_sim_flags = | ||
endif | ||
|
||
# Header flags | ||
ifdef fftw_include_dir | ||
hd_flags = -I$(fftw_include_dir) | ||
else | ||
hd_flags = | ||
endif | ||
|
||
# Compiler flags | ||
f90_flags = $(FFLAGS) $(hd_flags) | ||
|
||
#################### Post-process Silo Flags ##################### | ||
# Linker flags | ||
ifdef silo_lib_dir | ||
silo_flags = -L$(silo_lib_dir) -lsiloh5 -lm | ||
else | ||
silo_flags = | ||
endif | ||
ld_post_flags = $(ld_sim_flags) $(silo_flags) | ||
|
||
# Header flags | ||
ifdef silo_include_dir | ||
hd_post_flags = -I$(silo_include_dir) | ||
else | ||
hd_post_flags = | ||
endif | ||
|
||
# Compiler flags | ||
f90_post_flags = $(f90_flags) $(hd_post_flags) |
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,35 @@ | ||
################ Compiler options #################### | ||
# Gets the MFC directory [do not modify] | ||
MFC_DIR:=$(shell dirname $(realpath $(lastword $(MAKEFILE_LIST)))) | ||
|
||
### Compiler command ### | ||
FC = mpif90 | ||
#FC = mpiifort | ||
|
||
### Compiler flags [set according to your compiler] ### | ||
#Note: Requires -cpp to enable preprocessor | ||
|
||
FFLAGS = -cpp -c -w | ||
#NOTE: Cray compilers require: -eZ | ||
|
||
######### FFTW library and include locations ######### | ||
######### Set these to the location of FFTW ######### | ||
|
||
## For the FFTW included in the MFC package | ||
fftw_lib_dir = $(MFC_DIR)/lib/fftw-3.3.8/lib | ||
fftw_include_dir = $(MFC_DIR)/lib/fftw-3.3.8/include | ||
|
||
## Other possible locatins [only use absolute paths] | ||
#fftw_lib_dir = /usr/local/lib | ||
#fftw_include_dir = /usr/include | ||
#fftw_include_dir = /usr/local/include | ||
|
||
######### Silo library and include locations ######### | ||
######### Set these to the location of Silo ######### | ||
######### [ only use absolute paths ] ######### | ||
|
||
silo_lib_dir = /usr/local/lib | ||
silo_include_dir = /usr/local/include | ||
|
||
#silo_lib_dir = /home/spencer/packages/silo-4.10.2/lib | ||
#silo_include_dir = /home/spencer/packages/silo-4.10.2/include |
Oops, something went wrong.