Skip to content
Snippets Groups Projects

Compare revisions

Changes are shown as if the source revision was being merged into the target revision. Learn more about comparing revisions.

Source

Select target project
No results found

Target

Select target project
  • tranp30/cas741
  • liangb30/cas-741-boliang
  • pignierb/cas741
  • jimoha1/cas741
  • huoy8/cas741
  • grandhia/cas741
  • chenq84/cas741
  • yex33/cas741
  • xuey45/cas741
  • garcilau/cas-741-uriel-garcilazo-msa
  • schankuc2/cas741
  • ahmady3/cas741
  • saadh/cas741
  • singhk56/cas741
  • lin523/cas741
  • fangz58/cas741
  • ceranich/cas741
  • norouf1/cas741
  • mirzam48/cas741
  • djavahet/cas741
  • hossaa27/cas741
  • yiding_el/cas-741-upate-name
  • sayadia/cas741
  • elmasn2/cas741
  • cheemf8/cas741
  • cheny997/cas741
  • ma209/cas741
  • mousas26/cas741
  • liuy363/cas741
  • wongk124/cas741
  • dua11/cas741
  • zhoug28/cas741
  • courses/cas-741-tst
  • liy443/cas-741-fork-csv
  • sochania/cas741
  • liy443/cas-741-update-csv-old
  • mahdipoa/cas741
  • wangz892/cas741
  • wangn14/cas741
  • defourej/cas741
  • zhaox183/cas741
  • smiths/cas741
42 results
Show changes
Showing
with 595 additions and 0 deletions
K 13
svn:eol-style
V 6
native
END
K 13
svn:eol-style
V 6
native
END
K 13
svn:eol-style
V 6
native
END
K 13
svn:eol-style
V 6
native
END
K 13
svn:eol-style
V 6
native
END
K 13
svn:eol-style
V 6
native
END
K 13
svn:eol-style
V 6
native
END
K 13
svn:eol-style
V 6
native
END
K 13
svn:eol-style
V 6
native
END
K 13
svn:eol-style
V 6
native
END
K 13
svn:eol-style
V 6
native
END
K 13
svn:eol-style
V 6
native
END
K 13
svn:mime-type
V 24
application/octet-stream
END
K 13
svn:eol-style
V 6
native
END
K 13
svn:eol-style
V 6
native
END
K 13
svn:eol-style
V 6
native
END
K 13
svn:eol-style
V 6
native
END
K 13
svn:eol-style
V 6
native
END
# Fortran compiler
FF = gfortran
# general compiler flags
FLAGS =
# compiler flags for linear algebra
LINALG = -llapack -lblas
# list of required object files
OBJECTS = fruit_util.o fruit.o \
system_constants.o \
log_messages.o log_message_control.o \
vector_def.o dense_matrix_def.o band_sym_matrix_def.o \
linear_solver.o \
material_data.o field_data.o boundary_data.o \
pde_solver_constants.o \
constitutive.o kinematic.o \
material_model.o \
interpolation.o integration.o \
pde_solver_control.o \
log_messages_test.o log_message_control_test.o \
vector_test.o dense_matrix_test.o band_sym_matrix_test.o \
linear_solver_test.o \
material_data_test.o field_data_test.o boundary_data_test.o \
constitutive_test.o \
pde_solver_control_test.o \
test_driver.o
all: test_driver check
check:
./test_driver.a
doc:
doxygen doc-dynsws
test_driver: $(OBJECTS)
$(FF) -o test_driver.a $(OBJECTS) $(LINALG) $(FLAGS)
fruit_util.o: fruit_util.f90
$(FF) -c fruit_util.f90 $(FLAGS)
fruit.o: fruit.f90
$(FF) -c fruit.f90 $(FLAGS)
test_driver.o: test_driver.f90
$(FF) -c test_driver.f90 $(LINALG) $(FLAGS)
band_sym_matrix_def.o: band_sym_matrix_def.f90
$(FF) -c band_sym_matrix_def.f90 $(FLAGS)
band_sym_matrix_test.o: band_sym_matrix_test.f90
$(FF) -c band_sym_matrix_test.f90 $(FLAGS)
boundary_data.o: boundary_data.f90
$(FF) -c boundary_data.f90 $(FLAGS)
boundary_data_test.o: boundary_data_test.f90
$(FF) -c boundary_data_test.f90 $(FLAGS)
constitutive.o: constitutive.f90
$(FF) -c constitutive.f90 $(FLAGS)
constitutive_test.o: constitutive_test.f90
$(FF) -c constitutive_test.f90 $(FLAGS)
dense_matrix_def.o: dense_matrix_def.f90
$(FF) -c dense_matrix_def.f90 $(FLAGS)
dense_matrix_test.o: dense_matrix_test.f90
$(FF) -c dense_matrix_test.f90 $(FLAGS)
field_data.o: field_data.f90
$(FF) -c field_data.f90 $(FLAGS)
field_data_test.o: field_data_test.f90
$(FF) -c field_data_test.f90 $(FLAGS)
integration.o: integration.f90
$(FF) -c integration.f90 $(FLAGS)
interpolation.o: interpolation.f90
$(FF) -c interpolation.f90 $(FLAGS)
kinematic.o: kinematic.f90
$(FF) -c kinematic.f90 $(FLAGS)
linear_solver.o: linear_solver.f90
$(FF) -c linear_solver.f90 $(LINALG) $(FLAGS)
linear_solver_test.o: linear_solver_test.f90
$(FF) -c linear_solver_test.f90 $(LINALG) $(FLAGS)
log_message_control.o: log_message_control.f90
$(FF) -c log_message_control.f90 $(FLAGS)
log_message_control_test.o: log_message_control_test.f90
$(FF) -c log_message_control_test.f90 $(FLAGS)
log_messages.o: log_messages.f90
$(FF) -c log_messages.f90 $(FLAGS)
log_messages_test.o: log_messages_test.f90
$(FF) -c log_messages_test.f90 $(FLAGS)
material_model.o: material_model.f90
$(FF) -c material_model.f90 $(FLAGS)
material_data.o: material_data.f90
$(FF) -c material_data.f90 $(FLAGS)
material_data_test.o: material_data_test.f90
$(FF) -c material_data_test.f90 $(FLAGS)
pde_solver_constants.o: pde_solver_constants.f90
$(FF) -c pde_solver_constants.f90 $(FLAGS)
pde_solver_control.o: pde_solver_control.f90
$(FF) -c pde_solver_control.f90 $(FLAGS)
pde_solver_control_test.o: pde_solver_control_test.f90
$(FF) -c pde_solver_control_test.f90 $(FLAGS)
system_constants.o: system_constants.f90
$(FF) -c system_constants.f90 $(FLAGS)
vector_def.o: vector_def.f90
$(FF) -c vector_def.f90 $(FLAGS)
vector_test.o: vector_test.f90
$(FF) -c vector_test.f90 $(FLAGS)
clean:
rm -rf *.o
clean_test:
rm -rf test_driver.o
clean_boundary_data: clean_test \
clean_integration clean_interpolation \
clean_pde_solver_control
rm -rf boundary_data.o boundary_data_test.o
clean_bsm: clean_test \
clean_pde_solver_control
rm -rf band_sym_matrix_def.o band_sym_matrix_test.o
clean_constitutive: clean_test \
clean_integration clean_material_model
rm -rf constitutive.o constitutive_test.o
clean_dm: clean_test \
clean_bsm clean_constitutive clean_integration \
clean_interpolation clean_kinematic clean_material_model \
clean_pde_solver_control
rm -rf dense_matrix_def.o dense_matrix_test.o
clean_field_data: clean_test \
clean_integration clean_interpolation \
clean_kinematic clean_boundary_data \
clean_pde_solver_control
rm -rf field_data.o field_data_test.o
clean_integration: clean_test \
clean_pde_solver_control
rm -rf integration.o
clean_interpolation: clean_test \
clean_integration
rm -rf interpolation.o
clean_kinematic: clean_test \
clean_integration
rm -rf kinematic.o
clean_linear_solver: clean_test
rm -rf linear_solver.o linear_solver_test.o
clean_log: clean_test \
clean_bsm clean_dm clean_vec \
clean_material_data clean_field_data \
clean_constitutive \
clean_pde_solver_control
rm -rf log_message_control.o log_message_control_test.o
clean_material_data: clean_test \
clean_integration clean_field_data \
clean_pde_solver_control
rm -rf material_data.o material_data_test.o
clean_material_model: clean_test
rm -rf material_model.o
clean_msg: clean_test \
clean_bsm clean_dm clean_log clean_vec \
clean_material_data clean_field_data \
clean_constitutive \
clean_pde_solver_control
rm -rf log_messages.o log_messages_test.o
clean_pde_solver_constants: clean_test \
clean_integration \
clean_pde_solver_control
rm -rf pde_solver_constants.o
clean_pde_solver_control: clean_test
rm -rf pde_solver_control.o pde_solver_control_test.o
clean_system_constants: clean_test \
clean_log clean_msg \
clean_constitutive clean_kinematic \
clean_interpolation \
clean_pde_solver_constants \
clean_material_data clean_field_data \
clean_pde_solver_control
rm -rf system_constants.o
clean_vec: clean_test \
clean_bsm clean_dm clean_integration \
clean_material_model \
clean_pde_solver_control
rm -rf vector_def.o vector_test.o
* ------------------------------------------------------------------------
*
* DynSWS 1.0
* Dynamic Model of Soil-Water-Structure Interaction
*
* Contact:
* Brandon Karchewski
* c/o Dept. of Civil Engineering (JHE-301)
* McMaster University
* 1280 Main Street West
* Hamilton, Ontario, Canada
* L8S 4L7
* T: (905) 529-6569
* E: karcheba@mcmaster.ca
*
* ------------------------------------------------------------------------
------------------
REVISION HISTORY:
------------------
[26 March 2012]
-Initialized this README file
[29 March 2012]
-Added build instructions for prerequisite libraries
-Modified build instructions for DynSWS
[1 April 2012]
-Added descriptions of new modules
[2 April 2012]
-Added descriptions of new modules
[3 April 2012]
-Added descriptions of new modules
-Modified build instructions for clarity
[5 April 2012]
-Added documentation instructions
[6 April 2012]
-Added descriptions of new modules
------------------------
BACKGROUND INFORMATION:
------------------------
This file relates to the program DynSWS. New users/developers should see
the following documents to become acquainted with the project:
Software Requirements Specification
DynSWS-SRS-1.0.pdf
Module Guide:
DynSWS-MG-1.0.pdf
Module Interface Specification:
DynSWS-MIS-1.0.pdf
SRS, MG, and MIS for PDE Solver Module:
DynSWS-PDE-1.0.pdf
-----------------------
PROJECT PREREQUISITES:
-----------------------
The following netlib linear algebra packages should be available on
the build path to be linked against:
BLAS (Basic Linear Algebra Subprograms)
http://www.netlib.org/blas/
LAPACK (Linear Algebra PACKage)
http://www.netlib.org/lapack/
Both can be obtained by visiting the LAPACK project website and
downloading the latest version of LAPACK. As of this moment it
is LAPACK 3.4.0. Here is a minimal instruction set for building
the package (assuming the compiler is gfortran):
1. Extract downloaded package to desired directory.
2. cd to the root directory of the LAPACK package.
3. Delete the .example extension from make.inc.example.
-Note: The user may want to look inside this file to make
sure the configuration is appropriate for their
system.
4. cd BLAS/SRC
5. make
6. cd ../../
7. make
This should build and test the reference BLAS and the LAPACK
package. The user may want to use their own machine-tuned version,
but that will be left at their discretion. At any rate, the
instructions above should leave the user with a generic BLAS and
LAPACK build. The libraries generated will have the filenames:
librefblas.a
libtmglib.a
liblapack.a
The user should copy these into a folder that is on the build
path for their compiler (generally a folder called 'lib' within
the file system of the shell program or the compiler suite).
Generally, the user should also change the name of 'librefblas.a'
to 'libblas.a' so that the compiler can find it with the -lblas
switch.
-----------------------------
DOCUMENTATION PREREQUISITES:
-----------------------------
To build the documentation from the source code, the doxygen system is
required. This can be obtained from:
http://www.stack.nl/~dimitri/doxygen/
The user should follow the installation instructions associated with their
system. Note that this item is not required to build the actual program.
------------------
PROJECT CONTENTS:
------------------
README.txt
Contains general information about project and build instructions
Makefile
Makefile for building the program including unit tests
fruit.f90
fruit_util.f90
Unit testing framework (FRUIT) for Fortran
See http://sourceforge.net/apps/mediawiki/fortranxunit/index.php?title=Main_Page
http://sourceforge.net/projects/fortranxunit/
http://fortranxunit.sourceforge.net/
band_sym_matrix_def.f90
band_sym_matrix_test.f90
Banded Symmetric Matrix ADT and associated unit tests
boundary_data.f90
boundary_data_test.f90
Boundary Data Module and associated tests
constitutive.f90
Constitutive Matrix module
dense_matrix_def.f90
dense_matrix_test.f90
Dense Matrix ADT and associated unit tests
field_data.f90
field_data_test.f90
Field Data Module and associated tests
integration.f90
Body Element Integration and Traction Element Integration modules
interpolation.f90
Body Element Interpolation and Traction Element Interpolation modules
kinematic.f90
Kinematic Matrix Module
log_message_control.f90
log_message_control_test.f90
Log Message Control module and associated unit tests
log_messages.f90
log_messages_test.f90
Log Messages Module and associated unit tests
material_data.f90
material_data_test.f90
Material Property Data module and associated unit tests
pde_solver_control.f90
pde_solver_control_test.f90
PDE Solver Control module and associated unit tests
system_constants.f90
System Constants Module
test_driver.f90
Driver program for unit tests
vector_def.f90
vector_test.f90
Vector ADT and associated unit tests
--------------------
BUILD INSTRUCTIONS:
--------------------
To build and run the test suite:
1. Open shell
2. cd to directory of DynSWS
3. Open Makefile and set FF to the name of your Fortran compiler
(the default is gfortran)
4. make
This will build the program and run the unit test suite. The results of
the unit tests will be printed to the console. The test suite will also
generate testName.log and test_straight_coarse.log files. Assuming that
the unit tests all pass, the contents are not important as these are just
by-products of the exception checking tests.
--------------------
BUILD DOCUMENTATION:
--------------------
To build documentation from the source code:
1. Open shell
2. cd to directory of DynSWS
3. make doc
Note that this generates both html and latex format documentation. The
html version will work out of the box and is contained in the directory
<dir of DynSWS>/doc/html. The latex documentation may be build as follows
(assuming the shell is still open and the current directory is that of
DynSWS):
1. cd doc/latex
2. make
Note that the latex version has issues at this point in time. The author's
recommended version of the documentation is the html version.