Removed duplicate Doxygen stub
This commit is contained in:
parent
1fb14fc86a
commit
e084bd9c8d
11 changed files with 0 additions and 2349 deletions
|
|
@ -1,6 +0,0 @@
|
|||
EXTRA_DIST = cantera.dox cantera.page txt_common fig_common
|
||||
EXTRA_DIST += install.page tutorial.page
|
||||
|
||||
dist-hook:
|
||||
rm -rf `find $(distdir)/ -name .svn`
|
||||
rm -rf `find $(distdir)/ -name .deps`
|
||||
|
|
@ -1,171 +0,0 @@
|
|||
#-----------------------------------
|
||||
# PECOS - add any additional doxygen
|
||||
# dependencies here.
|
||||
#-----------------------------------
|
||||
|
||||
PECOS_extra_dependencies = doxygen/cantera.page \
|
||||
doxygen/txt_common/about.page \
|
||||
doxygen/txt_common/gpl.page \
|
||||
doxygen/txt_common/acknowledgment.page
|
||||
|
||||
## --------------------------------- ##
|
||||
## Format-independent Doxygen rules. ##
|
||||
## --------------------------------- ##
|
||||
|
||||
if DX_COND_doc
|
||||
|
||||
## ------------------------------- ##
|
||||
## Rules specific for HTML output. ##
|
||||
## ------------------------------- ##
|
||||
|
||||
if DX_COND_html
|
||||
|
||||
DX_CLEAN_HTML = @DX_DOCDIR@/html
|
||||
|
||||
endif DX_COND_html
|
||||
|
||||
## ------------------------------ ##
|
||||
## Rules specific for CHM output. ##
|
||||
## ------------------------------ ##
|
||||
|
||||
if DX_COND_chm
|
||||
|
||||
DX_CLEAN_CHM = @DX_DOCDIR@/chm
|
||||
|
||||
if DX_COND_chi
|
||||
|
||||
DX_CLEAN_CHI = @DX_DOCDIR@/@PACKAGE@.chi
|
||||
|
||||
endif DX_COND_chi
|
||||
|
||||
endif DX_COND_chm
|
||||
|
||||
## ------------------------------ ##
|
||||
## Rules specific for MAN output. ##
|
||||
## ------------------------------ ##
|
||||
|
||||
if DX_COND_man
|
||||
|
||||
DX_CLEAN_MAN = @DX_DOCDIR@/man
|
||||
|
||||
endif DX_COND_man
|
||||
|
||||
## ------------------------------ ##
|
||||
## Rules specific for RTF output. ##
|
||||
## ------------------------------ ##
|
||||
|
||||
if DX_COND_rtf
|
||||
|
||||
DX_CLEAN_RTF = @DX_DOCDIR@/rtf
|
||||
|
||||
endif DX_COND_rtf
|
||||
|
||||
## ------------------------------ ##
|
||||
## Rules specific for XML output. ##
|
||||
## ------------------------------ ##
|
||||
|
||||
if DX_COND_xml
|
||||
|
||||
DX_CLEAN_XML = @DX_DOCDIR@/xml
|
||||
|
||||
endif DX_COND_xml
|
||||
|
||||
## ----------------------------- ##
|
||||
## Rules specific for PS output. ##
|
||||
## ----------------------------- ##
|
||||
|
||||
if DX_COND_ps
|
||||
|
||||
DX_CLEAN_PS = @DX_DOCDIR@/@PACKAGE@.ps
|
||||
|
||||
DX_PS_GOAL = doxygen-ps
|
||||
|
||||
doxygen-ps: @DX_DOCDIR@/@PACKAGE@.ps
|
||||
|
||||
@DX_DOCDIR@/@PACKAGE@.ps: @DX_DOCDIR@/@PACKAGE@.tag
|
||||
cd @DX_DOCDIR@/latex; \
|
||||
rm -f *.aux *.toc *.idx *.ind *.ilg *.log *.out; \
|
||||
$(DX_LATEX) refman.tex; \
|
||||
$(MAKEINDEX_PATH) refman.idx; \
|
||||
$(DX_LATEX) refman.tex; \
|
||||
countdown=5; \
|
||||
while $(DX_EGREP) 'Rerun (LaTeX|to get cross-references right)' \
|
||||
refman.log > /dev/null 2>&1 \
|
||||
&& test $$countdown -gt 0; do \
|
||||
$(DX_LATEX) refman.tex; \
|
||||
countdown=`expr $$countdown - 1`; \
|
||||
done; \
|
||||
$(DX_DVIPS) -o ../@PACKAGE@.ps refman.dvi
|
||||
|
||||
endif DX_COND_ps
|
||||
|
||||
## ------------------------------ ##
|
||||
## Rules specific for PDF output. ##
|
||||
## ------------------------------ ##
|
||||
|
||||
if DX_COND_pdf
|
||||
|
||||
DX_CLEAN_PDF = @DX_DOCDIR@/@PACKAGE@.pdf
|
||||
|
||||
DX_PDF_GOAL = doxygen-pdf
|
||||
|
||||
doxygen-pdf: @DX_DOCDIR@/@PACKAGE@.pdf
|
||||
|
||||
@DX_DOCDIR@/@PACKAGE@.pdf: @DX_DOCDIR@/@PACKAGE@.tag
|
||||
cd @DX_DOCDIR@/latex; \
|
||||
rm -f *.aux *.toc *.idx *.ind *.ilg *.log *.out; \
|
||||
$(DX_PDFLATEX) refman.tex; \
|
||||
$(DX_MAKEINDEX) refman.idx; \
|
||||
$(DX_PDFLATEX) refman.tex; \
|
||||
countdown=5; \
|
||||
while $(DX_EGREP) 'Rerun (LaTeX|to get cross-references right)' \
|
||||
refman.log > /dev/null 2>&1 \
|
||||
&& test $$countdown -gt 0; do \
|
||||
$(DX_PDFLATEX) refman.tex; \
|
||||
countdown=`expr $$countdown - 1`; \
|
||||
done; \
|
||||
mv refman.pdf ../@PACKAGE@.pdf
|
||||
|
||||
endif DX_COND_pdf
|
||||
|
||||
## ------------------------------------------------- ##
|
||||
## Rules specific for LaTeX (shared for PS and PDF). ##
|
||||
## ------------------------------------------------- ##
|
||||
|
||||
if DX_COND_latex
|
||||
|
||||
DX_CLEAN_LATEX = @DX_DOCDIR@/latex
|
||||
|
||||
endif DX_COND_latex
|
||||
|
||||
.PHONY: doxygen-run doxygen-doc $(DX_PS_GOAL) $(DX_PDF_GOAL)
|
||||
|
||||
.INTERMEDIATE: doxygen-run $(DX_PS_GOAL) $(DX_PDF_GOAL)
|
||||
|
||||
doxygen-run: @DX_DOCDIR@/@PACKAGE@.tag
|
||||
|
||||
doxygen-doc: doxygen-run $(DX_PS_GOAL) $(DX_PDF_GOAL)
|
||||
|
||||
doc: doxygen-doc
|
||||
docs: doxygen-doc
|
||||
|
||||
@DX_DOCDIR@/@PACKAGE@.tag: $(DX_CONFIG) $(pkginclude_HEADERS) $(PECOS_extra_dependencies)
|
||||
rm -rf @DX_DOCDIR@
|
||||
$(DX_ENV) $(DX_DOXYGEN) $(srcdir)/$(DX_CONFIG)
|
||||
|
||||
DX_CLEANFILES = \
|
||||
@DX_DOCDIR@/@PACKAGE@.tag \
|
||||
-r \
|
||||
$(DX_CLEAN_HTML) \
|
||||
$(DX_CLEAN_CHM) \
|
||||
$(DX_CLEAN_CHI) \
|
||||
$(DX_CLEAN_MAN) \
|
||||
$(DX_CLEAN_RTF) \
|
||||
$(DX_CLEAN_XML) \
|
||||
$(DX_CLEAN_PS) \
|
||||
$(DX_CLEAN_PDF) \
|
||||
$(DX_CLEAN_LATEX)
|
||||
|
||||
# Additional PECOS dependencies
|
||||
|
||||
endif DX_COND_doc
|
||||
1575
doxygen/cantera.dox
1575
doxygen/cantera.dox
File diff suppressed because it is too large
Load diff
|
|
@ -1,146 +0,0 @@
|
|||
/*! \mainpage The MASA Library
|
||||
|
||||
<b>Version \version</b>, Build Date: \builddate
|
||||
|
||||
Built by: \builduser on \buildhost
|
||||
<hr>
|
||||
|
||||
\section overview Overview
|
||||
|
||||
The MASA (Manufactured Analytical Solutions Abstraction) library is
|
||||
a software interface that provides access to all manufactured solutions to
|
||||
be used by various models throughout the PECOS center.
|
||||
The library is written in
|
||||
C++, but provides an API for development in C and Fortran.
|
||||
|
||||
Thanks for your interest in MASA. To aid in usage, this manual is
|
||||
further divided into the following subsections:
|
||||
|
||||
<ul>
|
||||
<li> \subpage model "Library Overview" </li>
|
||||
<li> \subpage install "Installation/Linkage" </li>
|
||||
<li> \link masa.h C/C++ Interface \endlink </li>
|
||||
<li> \subpage apif "Fortran Interface" </li>
|
||||
<li> \link tut "Tutorial" </li>
|
||||
<li> \subpage mms_avail "Available Manufactured Solutions"</li>
|
||||
<li> \subpage add_sol "Adding Additional Manufactured Solutions to MASA" </li>
|
||||
<li> <a href="http://buildbot.ices.utexas.edu/docs/buildbot/masa/docs/html/lcov/build/src/index.html">Buildbot Coverage</a> </li>
|
||||
</ul>
|
||||
|
||||
<!-- \subpage apiF Fortran API -->
|
||||
<!-- \subpage examples Examples -->
|
||||
|
||||
\section bugs Reporting Bugs
|
||||
|
||||
Bugs in the code and errors or omissions in the documentation can be
|
||||
reported to masa-dev@ices.utexas.edu. Requests and contributions are
|
||||
welcome at the same e-mail address. All bug reports should include:
|
||||
<ul>
|
||||
<li>the version number of the MASA library,
|
||||
<li>the hardware and operating system,
|
||||
<li>the compiler used, including version number and compilation options,
|
||||
<li>a description of the bug behavior, and ideally,
|
||||
<li>a short program which reproduces the bug.
|
||||
</ul>
|
||||
|
||||
\section licence License
|
||||
Copyright (C) 2010 The PECOS Development Team
|
||||
\copydoc LicenseLGPL
|
||||
|
||||
\section acknowledgements Acknowledgments
|
||||
\copydoc Acknowledgments
|
||||
|
||||
\section pecos-center More Information About PECOS
|
||||
\copydoc About2
|
||||
|
||||
*/
|
||||
|
||||
|
||||
/*! \page model Library Overview
|
||||
|
||||
\copydoc LicenseLGPL
|
||||
|
||||
The MASA (Manufactured Analytical Solutions Abstraction) library is a software interface that provides access
|
||||
to various manufactured solutions for a wide variety of differential equations. The library is written in C++,
|
||||
and provides an API for development in C and Fortran.
|
||||
|
||||
<h2>Software Verification</h2>
|
||||
|
||||
Verification of numerical computations, in which one asks if numerical results are an accurate representation of the solution
|
||||
to the mathematical model that is being solved, is relatively well understood. It requires
|
||||
careful attention to good software engineering practices, continuous software testing, and control of numerical
|
||||
discretization errors, through error estimation and adaptivity. While verification processes are well understood,
|
||||
they require substantial effort. As verification of numerical results is a prerequisite for reliable computational
|
||||
predictions, verification processes are integral to all activities in scientific computation.
|
||||
|
||||
MASA is designed to simplify the verification process by providing a common repository of manufactured solutions
|
||||
for common problems in scientific computation.
|
||||
|
||||
<h2>Manufactured Solution Generation</h2>
|
||||
|
||||
The analytical solutions used in this library were generated using symbolic manipulation software, such as Maple.
|
||||
|
||||
<h2>PECOS Center Background</h2>
|
||||
|
||||
The Center for Predictive Engineering and COmputational Sciences (PECOS) is a DOE-funded Center
|
||||
of Excellence within the Institute for Computational Engineering and Sciences (ICES)
|
||||
at The University of Texas at Austin. PECOS is one of five such centers sponsored under
|
||||
the Predictive Science Academic Alliance Program (PSAAP) of the National Nuclear Security
|
||||
Administration’s Advanced Simulation and Computing Program.
|
||||
|
||||
PECOS brings together an interdisciplinary, multi-university team with partners at the
|
||||
DOE National Labs and NASA. The goal of the PECOS Center is to develop the next generation
|
||||
of advanced computational methods for predictive simulation of multiscale, multiphysics phenomena,
|
||||
and to apply these methods to the analysis of vehicles reentering the atmosphere. In pursuing
|
||||
this research, PECOS is advancing the science and modeling of atmospheric reentry, and
|
||||
the science of predictive simulation.
|
||||
|
||||
<h2> Developers </h2>
|
||||
|
||||
Developers of the MASA library include:
|
||||
|
||||
Paul Bauman
|
||||
|
||||
Kemelli Estacio-Hiroms
|
||||
|
||||
<a href="mailto:nick@ices.utexas.edu">Nicholas Malaya</a>
|
||||
|
||||
Todd Oliver
|
||||
|
||||
Onkar Sahni
|
||||
|
||||
Karl W. Schulz
|
||||
|
||||
Chris Simmons
|
||||
|
||||
Roy Stogner
|
||||
|
||||
<h2> Citing MASA </h2>
|
||||
|
||||
A paper detailing the MASA library has been submitted for publication.
|
||||
Upon acceptance, this section will be updated.
|
||||
Please check back for details on how to cite MASA.
|
||||
|
||||
*/
|
||||
|
||||
|
||||
/*! \page mms_avail Available Manufactured Solutions
|
||||
|
||||
The following sections detail all available manufactured solutions in MASA.
|
||||
|
||||
<ul>
|
||||
<li> \subpage heat </li>
|
||||
<li> \subpage laplace </li>
|
||||
<li> \subpage euler </li>
|
||||
<li> \subpage cns </li>
|
||||
<li> \subpage sod </li>
|
||||
<li> \subpage rans </li>
|
||||
</ul>
|
||||
|
||||
*/
|
||||
|
||||
/*! \page tut Tutorial
|
||||
|
||||
The following sections detail all available manufactured solutions in MASA.
|
||||
|
||||
*/
|
||||
|
|
@ -1,20 +0,0 @@
|
|||
\typeout{Document Style `masa'. Released 04 March 2011}
|
||||
\usepackage{pdflscape}
|
||||
\usepackage[authoryear]{natbib}
|
||||
%\usepackage[utf8x]{inputenc}
|
||||
\usepackage{amsmath}
|
||||
\usepackage{amsfonts}
|
||||
\usepackage{geometry}
|
||||
|
||||
\newcommand{\D}{\partial}
|
||||
\newcommand{\Diff}[2] {\dfrac{\partial( #1)}{\partial #2}}
|
||||
\newcommand{\diff}[2] {\dfrac{\partial #1}{\partial #2}}
|
||||
\newcommand{\bv}[1]{\ensuremath{\mbox{\boldmath$ #1 $}}}
|
||||
\newcommand{\gv}[1]{\ensuremath{\mbox{\boldmath$ #1 $}}}
|
||||
\newcommand{\grad}[1]{\gv{\nabla} #1}
|
||||
\newcommand{\Rho}{\,\mathtt{Rho}}
|
||||
\newcommand{\PP}{\,\mathtt{P}}
|
||||
%\newcommand{\U}{\,\mathtt{U}}
|
||||
\newcommand{\V}{\,\mathtt{V}}
|
||||
\newcommand{\W}{\,\mathtt{W}}
|
||||
\newcommand{\Lo}{\,\mathcal{L}}
|
||||
|
|
@ -1,187 +0,0 @@
|
|||
/*! \page install Installation/Linkage
|
||||
|
||||
libMASA uses the GNU autotools suite (autoconf, automake, and libtool)
|
||||
for its development build system. This system is popular among the
|
||||
Linux development community and provides a familiar build environment
|
||||
for end users.
|
||||
|
||||
To build libMASA starting from a release distribution, untar the distribution and
|
||||
enter the top-level directory.
|
||||
|
||||
<div class="fragment"><pre class="fragment">
|
||||
> tar xvfz masa-$(VERSION).tar.gz
|
||||
> cd masa-$(VERSION)/
|
||||
</pre></div>
|
||||
|
||||
<h2>Configuration Requirements</h2>
|
||||
|
||||
Since libMASA provides a Fortran interface, a valid Fortran90 compiler is
|
||||
also required. To date, libMASA has been successfully tested with \e
|
||||
gfortran and the Intel \e ifort compilers. The configuration step
|
||||
will look for available compilers in the user environment but as with
|
||||
any \e autoconf based configuration, these can be overridden with
|
||||
command line arguments (by setting \c CXX, \c FC, and \c F77
|
||||
appropriately).
|
||||
|
||||
<b>Installation Directory</b>: Use the <tt>--prefix</tt> option to
|
||||
specify your desired top-level installation directory for MASA. The
|
||||
examples below all configure libMASA to be installed in the user's ~/bin/masa
|
||||
directory.
|
||||
|
||||
Once configured, issue a <tt>make</tt> to build the software. If successful, this
|
||||
will build the libMASA library (static and dynamic versions) and several
|
||||
examples.
|
||||
|
||||
\code > make \endcode
|
||||
|
||||
<b> Verifying the build:</b> To verify that the software is working
|
||||
properly, a test option is provided to run a short suite of
|
||||
functionality tests against the local build. To run, issue a <tt>make
|
||||
check</tt> to run the tests. If successful, output similar to the
|
||||
following will be generated.
|
||||
|
||||
\code
|
||||
> make check
|
||||
|
||||
-------------------------------------------------------
|
||||
Initializing MASA Tests
|
||||
-------------------------------------------------------
|
||||
PASS: init.sh
|
||||
PASS: misc
|
||||
PASS: fail_cond
|
||||
PASS: catch_exception
|
||||
PASS: register
|
||||
PASS: poly
|
||||
PASS: uninit
|
||||
PASS: pass_func
|
||||
PASS: purge
|
||||
PASS: heat_const_steady
|
||||
PASS: heat_var_steady
|
||||
PASS: heat_const_unsteady
|
||||
PASS: heat_var_unsteady
|
||||
PASS: euler1d
|
||||
PASS: euler2d
|
||||
PASS: euler3d
|
||||
PASS: euler_transient_1d
|
||||
PASS: euler_chem_1d
|
||||
PASS: ns2d
|
||||
PASS: ns3d
|
||||
PASS: ns3d_phys
|
||||
PASS: n2d3d
|
||||
PASS: axi_euler
|
||||
PASS: axi_cns
|
||||
PASS: rans_sa
|
||||
PASS: sod
|
||||
|
||||
-------------------------------------------------------
|
||||
Initializing CMASA Tests
|
||||
-------------------------------------------------------
|
||||
PASS: c_init.sh
|
||||
PASS: c_misc
|
||||
PASS: c_purge
|
||||
PASS: c_heat1dsc
|
||||
PASS: c_heat2dsc
|
||||
PASS: c_heat3dsc
|
||||
PASS: c_euler1d
|
||||
PASS: c_euler2d
|
||||
PASS: c_euler3d
|
||||
PASS: c_euler_chem_1d
|
||||
PASS: c_navierstokes2d
|
||||
PASS: c_navierstokes3d
|
||||
|
||||
-------------------------------------------------------
|
||||
Initializing FortMASA Tests
|
||||
-------------------------------------------------------
|
||||
PASS: f_init.sh
|
||||
MASA :: selected mytest
|
||||
PASS: f_misc
|
||||
PASS: f_purge
|
||||
PASS: f_heat
|
||||
PASS: f_euler1d
|
||||
PASS: f_euler2d
|
||||
PASS: f_euler3d
|
||||
PASS: f_euler_chem_1d
|
||||
PASS: f_cns2d
|
||||
PASS: f_cns3d
|
||||
|
||||
-------------------------------------------------------
|
||||
Initializing MASA Examples Tests
|
||||
-------------------------------------------------------
|
||||
PASS: example_test.sh
|
||||
|
||||
-------------------------------------------------------
|
||||
Finalizing MASA Tests, have a well verified day
|
||||
-------------------------------------------------------
|
||||
PASS: finalize.sh
|
||||
===================
|
||||
All 50 tests passed
|
||||
===================
|
||||
|
||||
\endcode
|
||||
|
||||
<h2> Installation </h2>
|
||||
|
||||
After the build is complete, issue a <tt>make install</tt> to install
|
||||
the library. The installation will consist of three top-level
|
||||
directories housing the library, include files, and
|
||||
example files. An example of the top-level directories after
|
||||
installation is shown below:
|
||||
|
||||
\code > make install \endcode
|
||||
|
||||
Top-level libMASA installation directory:
|
||||
|
||||
\code
|
||||
> ls $HOME/bin/masa/
|
||||
examples/ include/ lib/
|
||||
\endcode
|
||||
|
||||
<h2>Library Linkage</h2>
|
||||
|
||||
To link an external C/C++ or Fortran application with the library, the
|
||||
\c include directory must be added to the compilers include search
|
||||
path in order to access the masa.h header file (or for Fortran, the \c
|
||||
lib directory should be added to access the pre-compiled
|
||||
masa F90 module). The \c lib directory should also be added
|
||||
to the linker search path along with a request to link against the
|
||||
libMASA library. Several example link steps are provided below. These
|
||||
examples assume that the libMASA library has been successfully built and
|
||||
installed previously in the users's ~/bin/masa directory:
|
||||
|
||||
<h3>C/C++ Example</h3>
|
||||
|
||||
\code > $(CC) -I$HOME/bin/masa/include app.c -L$HOME/bin/masa/lib -lmasa \endcode
|
||||
|
||||
If you set your <tt>PKG_CONFIG_PATH</tt> environment variable to contain
|
||||
<tt>$HOME/lib/pkgconfig</tt> you can use <ahref="http://pkg-config.freedesktop.org/wiki/"><tt>pkg-config</tt></a> to
|
||||
lookup the relevant linking information automatically:
|
||||
|
||||
\code > $(CC) `pkg-config --cflags masa` app.c `pkg-config --libs masa` \endcode
|
||||
|
||||
<h3>Fortran Example</h3>
|
||||
|
||||
Fortran applications also require linking against the fmasa library:
|
||||
|
||||
\code > $(FC) -I$HOME/bin/masa/lib app.f90 -L$HOME/bin/masa/lib -lfmasa -lmasa \endcode
|
||||
|
||||
As with C/C++, users can use make use of pkg-config:
|
||||
|
||||
\code > $(FC) `pkg-config --variable=fflags masa` app.f90 `pkg-config --variable=flibs masa` \endcode
|
||||
|
||||
To embed the dynamic library search path for the libMASA library
|
||||
directly into the application executable, use an additional linker
|
||||
option as follows:
|
||||
|
||||
<h3>C/C++ Example</h3>
|
||||
|
||||
\code > $(CC) -I$HOME/bin/masa/include app.c -L$HOME/bin/masa/lib \
|
||||
-Wl,-rpath,$HOME/bin/masa/lib -lmasa \endcode
|
||||
|
||||
|
||||
<b>Important Note:</b> F90 module file formats are not consistent
|
||||
across multiple compilers. Therefore, a Fortran application and the libMASA
|
||||
F90 interface \em must be built with the same Fortran compiler family to ensure
|
||||
compatibility.
|
||||
|
||||
|
||||
*/
|
||||
|
|
@ -1,177 +0,0 @@
|
|||
/*! \page tut Tutorial
|
||||
|
||||
This chapter will introduce the user to the basics of the MASA library.
|
||||
This chapter assumes the user has already built and linked the MASA library
|
||||
into their codebase. Now, you desire to access the magic of MASA
|
||||
and begin the process of verification of your codebase.
|
||||
|
||||
This tutorial will detail the essential subroutines for any MASA program.
|
||||
The c++ MASA bindings are used throughout, but a tutorial using the Fotran90
|
||||
or C-code would be essentially unchanged.
|
||||
|
||||
<h1> Initalizing </h1>
|
||||
|
||||
To begin, any MASA program will call \c masa_init. This routine initalizes
|
||||
a manufactured solution class of some particular type. It requires two inputs:
|
||||
the manufactured solution class name as well as a unique name for this solution.
|
||||
|
||||
Thus, to initalize a one dimensional euler equation manufactured solution with
|
||||
the unique name of 'nick', the function call would look something like:
|
||||
|
||||
\code
|
||||
masa_init("nick","euler_1d");
|
||||
\endcode
|
||||
|
||||
The unique name allows you to initalize several manufactured solutions of the same
|
||||
problem type, should you so desire. This can be useful if you want to access several
|
||||
manufactured solutions of the same type with different parameter sets.
|
||||
You cannot, of course, specify several manufactured solutions with the same unique name!
|
||||
|
||||
Please be careful when specifying the second string: this \em must match the unique
|
||||
identifier for that masa solution. Failing to match here will likely result in MASA aborting.
|
||||
|
||||
A logical question to ask at this juncture is where can you find a list of the
|
||||
available manufactured solutions? The available solutions can be found several ways:
|
||||
|
||||
<ul>
|
||||
<li> Browsing the available manufactured solutions page of this documentation
|
||||
<li> Running the display_solutions executable in your examples directory
|
||||
<li> Browsing through the solutions interactively using MASAshell (also in the examples dir)
|
||||
<li> Calling the function: \c masa_printid()
|
||||
</ul>
|
||||
|
||||
<h2> Setting up the Solution </h2>
|
||||
|
||||
Having initalized the solution, you need to set the variables to some reasonable value.
|
||||
This will depend on your particular problem, but let's continue with the 1d euler example.
|
||||
|
||||
Firstly, let's determine \em what variables need to be set. A list of variables for
|
||||
your solution can be found by:
|
||||
|
||||
<ul>
|
||||
<li> Browsing the particular manufactured solution's page in this documentation
|
||||
<li> Selecting the solution and then displaying the variables interactively using MASAshell
|
||||
<li> Calling the function: \c masa_display_param()
|
||||
</ul>
|
||||
|
||||
The output from masa_display_param() for our euler1d example will look something like:
|
||||
\code
|
||||
|
||||
MASA :: Solution has 14 variables.
|
||||
*-------------------------------------*
|
||||
Gamma is set to: Uninitialized
|
||||
L is set to: Uninitialized
|
||||
R is set to: Uninitialized
|
||||
a_px is set to: Uninitialized
|
||||
a_rhox is set to: Uninitialized
|
||||
a_ux is set to: Uninitialized
|
||||
k is set to: Uninitialized
|
||||
mu is set to: Uninitialized
|
||||
p_0 is set to: Uninitialized
|
||||
p_x is set to: Uninitialized
|
||||
rho_0 is set to: Uninitialized
|
||||
rho_x is set to: Uninitialized
|
||||
u_0 is set to: Uninitialized
|
||||
u_x is set to: Uninitialized
|
||||
*-------------------------------------*
|
||||
|
||||
\endcode
|
||||
|
||||
Thus, euler_1d has 14 variables, all of which should be set to something.
|
||||
We can set a value of a parameter in MASA using the function, \c masa_set_param.
|
||||
|
||||
\c masa_set_param takes as input a string and a double. The string specifies the
|
||||
parameter we are setting and the double will become the parameter's new value.
|
||||
This overwrites the any previous value the paramter may have had.
|
||||
|
||||
Continuing our example, let's set a_rhox to 33.33 (repeating, of course).
|
||||
In our code, this would look like:
|
||||
|
||||
\code
|
||||
|
||||
masa_set_param("a_rhox",33.3333333333333)
|
||||
|
||||
\endcode
|
||||
|
||||
Now, checking \c masa_display_param, we can see we have set the value of a_rhox:
|
||||
|
||||
\code
|
||||
|
||||
MASA :: Solution has 14 variables.
|
||||
*-------------------------------------*
|
||||
Gamma is set to: Uninitialized
|
||||
L is set to: Uninitialized
|
||||
R is set to: Uninitialized
|
||||
a_px is set to: Uninitialized
|
||||
a_rhox is set to: 33.3333333333333
|
||||
a_ux is set to: Uninitialized
|
||||
k is set to: Uninitialized
|
||||
mu is set to: Uninitialized
|
||||
p_0 is set to: Uninitialized
|
||||
p_x is set to: Uninitialized
|
||||
rho_0 is set to: Uninitialized
|
||||
rho_x is set to: Uninitialized
|
||||
u_0 is set to: Uninitialized
|
||||
u_x is set to: Uninitialized
|
||||
*-------------------------------------*
|
||||
|
||||
\endcode
|
||||
|
||||
At this point, we could continue the same process for
|
||||
each remaining variable.
|
||||
|
||||
To save you the tedium of doing this, MASA has graciously provided
|
||||
default values for all manufactured solution classes.
|
||||
In general, the default values have been selected to provide reasonable
|
||||
test conditions for verification and whenever possible, defauls
|
||||
correspond to some simple physical constraints
|
||||
(such as not producing negative energy, or density, etc.).
|
||||
|
||||
A user can invoke these defaults using the routine: \c masa_init_param().
|
||||
For our euler1d problem, the defaults look like:
|
||||
|
||||
\code
|
||||
|
||||
MASA :: Solution has 14 variables.
|
||||
*-------------------------------------*
|
||||
Gamma is set to: 16.1
|
||||
L is set to: 3.02
|
||||
R is set to: 1.01
|
||||
a_px is set to: 6.151
|
||||
a_rhox is set to: 1.2
|
||||
a_ux is set to: 0.03
|
||||
k is set to: 1.38
|
||||
mu is set to: 0.091
|
||||
p_0 is set to: 0.1984
|
||||
p_x is set to: 3.151
|
||||
rho_0 is set to: 91.5
|
||||
rho_x is set to: 5.13
|
||||
u_0 is set to: 0.191
|
||||
u_x is set to: 1.63
|
||||
*-------------------------------------*
|
||||
|
||||
\endcode
|
||||
|
||||
Note that setting the defaults \em will \em overwrite \em all \em previously
|
||||
\em initalized \em values for the masa parameters! So if you desire to
|
||||
alter the default values, call \c masa_set_param \em after \c masa_init_param.
|
||||
|
||||
Finally, you have initalized all the parameters and you are ready to move on
|
||||
... Or are you? Are you certain you initalized every parameter? Do you really
|
||||
want to verify this by checking \c masa_display_param()? Luckily, MASA provides
|
||||
an alternative. The subroutine \c masa_sanity_check() will check that every
|
||||
parameter has been set to \em something.
|
||||
|
||||
<h2> Accessing the Source Terms </h2>
|
||||
|
||||
|
||||
\code
|
||||
> ls $HOME/bin/masa/
|
||||
examples/ include/ lib/
|
||||
\endcode
|
||||
|
||||
|
||||
For further examples (including c-code and fortran), the user is directed
|
||||
to the examples directory included in the MASA distribution.
|
||||
|
||||
*/
|
||||
|
|
@ -1,39 +0,0 @@
|
|||
/*! \page About
|
||||
|
||||
\htmlonly
|
||||
<table border="0" width="660" >
|
||||
<tr><td width=95> <img src="circle-logo-small.png" /> </td>
|
||||
<td>
|
||||
The <a href="http://pecos.ices.utexas.edu">Center for
|
||||
Predictive Engineering and Computational Sciences</a> (PECOS)
|
||||
is one of five US centers sponsored under the Predictive
|
||||
Science Academic Alliance Program (PSAAP) of the National
|
||||
Nuclear Security Administration's Advanced Simulation and
|
||||
Computing Program. The PECOS center is housed within
|
||||
the <a href="http://www.ices.utexas.edu">Institute for
|
||||
Computational Engineering and Sciences (ICES) </a> at the
|
||||
<a href="http://www.utexas.edu">University of Texas at
|
||||
Austin</a>. For additional information or questions regarding
|
||||
the PECOS center, please contact <a href="mailto:info@pecos.ices.utexas.edu">info@pecos.ices.utexas.edu</a>.
|
||||
</td>
|
||||
</tr>
|
||||
</table>
|
||||
\endhtmlonly
|
||||
|
||||
\latexonly
|
||||
\begin{tabular}{m{2.2cm} m{0.80\textwidth} }
|
||||
\includegraphics[width=2cm]{../../doxygen/fig_common/circle-logo.pdf} &
|
||||
The \href{http://pecos.ices.utexas.edu}{Center for Predictive
|
||||
Engineering and Computational Sciences} (PECOS) is one of five US
|
||||
centers sponsored under the Predictive Science Academic Alliance
|
||||
Program (PSAAP) of the National Nuclear Security Administration's
|
||||
Advanced Simulation and Computing Program. The PECOS center is housed
|
||||
within the \href{http://www.ices.utexas.edu}{Institute for
|
||||
Computational Engineering and Sciences} (ICES) at the
|
||||
\href{http://www.utexas.edu"}{University of Texas at Austin}. For
|
||||
additional information or questions regarding the PECOS center, please
|
||||
contact info@pecos.ices.utexas.edu.
|
||||
\end{tabular}
|
||||
\endlatexonly
|
||||
|
||||
*/
|
||||
|
|
@ -1,7 +0,0 @@
|
|||
/*! \page Acknowledgments
|
||||
|
||||
This material is based in part upon work supported by the Department
|
||||
of Energy National Nuclear Security Administration under Award
|
||||
Number \e DE-FC52-08NA28615.
|
||||
|
||||
*/
|
||||
|
|
@ -1,8 +0,0 @@
|
|||
<hr size="1"/><address style="text-align: right;"><small>
|
||||
Generated on $datetime for $projectname
|
||||
by <a href="http://www.doxygen.org/index.html">
|
||||
<em>doxygen</em></a>
|
||||
$doxygenversion</small></address>
|
||||
|
||||
</body>
|
||||
</html>
|
||||
|
|
@ -1,13 +0,0 @@
|
|||
/*! \page License
|
||||
|
||||
<br>
|
||||
This program is free software; you can redistribute it and/or modify
|
||||
it under the terms of the Version 2 GNU General Public License as published by
|
||||
the Free Software Foundation.<br>
|
||||
<br>
|
||||
This program is distributed in the hope that it will be useful, but
|
||||
WITHOUT ANY WARRANTY; without even the implied warranty of
|
||||
MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
|
||||
<a href="http://www.gnu.org/licenses/gpl-2.0.html">GNU General Public License</a>
|
||||
for more details.
|
||||
*/
|
||||
Loading…
Add table
Reference in a new issue