Creation of OpenFOAM-dev repository 15/04/2008

This commit is contained in:
OpenFOAM-admin
2008-04-15 18:56:58 +01:00
commit 3170c7c0c9
9896 changed files with 4016171 additions and 0 deletions

9
doc/Doxygen/Allwmake Executable file
View File

@ -0,0 +1,9 @@
#!/bin/sh
set -x
umask 22
rm -rf html latex man
doxygen
# fix permissions (NB: '-X' and not '-x'!)
chmod -R a+rX ./

1333
doc/Doxygen/Doxyfile Normal file

File diff suppressed because it is too large Load Diff

76
doc/Doxygen/Doxygen.css Normal file
View File

@ -0,0 +1,76 @@
body { color: #000000 ; background: #ffffff; margin: 0px; font-family: verdana, arial, helvetica, sans-serif; text-decoration: none; font-size: 12px; }
a:link { text-decoration: none; color: #0000ff ; }
a:link:hover { text-decoration: none; color: #0000ff ; }
a:visited { text-decoration: none; color: #0000ff ; }
a:visited:hover { text-decoration: none; color: #0000ff ; }
a:link img { border: 0; }
a:visited img { border: 0; }
a:active img { border: 0; }
a.menuLefton { color: #0000ff; font-size: 12px; font-weight: bold; }
td.leftmenu { font-family: verdana, arial, helvetica, sans-serif; text-decoration: none; background: #ddddff; text-align: left; font-size: 14px; height: 20px; width: 200px; }
a.menuTopoff { color: #000000; font-size: 14px; }
a.menuTopoff:visited { color: #000000; font-size: 14px; }
a.menuTopoff:hover { color: #0000ff; font-size: 14px; }
td.topmenu { font-family: verdana, arial, helvetica, sans-serif; background: #ddddff; text-align: center; font-size: 16px; width: 150px; font-weight: bold; }
h1 { font-size: 18px; }
h2 { font-size: 16px; }
h3 { font-size: 14px; }
/* formatting for member functions:
* Since the OpenFOAM code already has nice line-breaks, wrapping the lines
* just looks terrible.
* Give a slightly different background to make it easier to find.
*/
.memitem {
padding: 4px;
background-color: #eef3f5;
border-width: 1px;
border-style: solid;
border-color: #dedeee;
}
.memproto {
background-color: #d5e1e8;
width: 100%;
border-width: 1px;
border-style: solid;
border-color: #84b0c7;
font-weight: bold;
}
table.memname {
width: 100%;
background: #f7f7ff;
white-space: nowrap;
}
.indexkey {
vertical-align: top;
background: #f7f7ff;
}
.indexvalue {
vertical-align: top;
background: #f7f7ff;
}
.paramkey {
width: 5%;
}
.memItemLeft {
background: #f7f7ff;
}
.memItemRight {
background: #f7f7ff;
}
.mdescLeft {
margin: 0px;
}
.mdescRight {
font-style: italic;
}

View File

@ -0,0 +1,57 @@
body { color: #000000 ; background: #ffffff; margin: 0px; font-family: verdana, arial, helvetica, sans-serif; text-decoration: none; font-size: 12px; }
a:link { text-decoration: none; color: #0000ff ; }
a:link:hover { text-decoration: none; color: #0000ff ; }
a:visited { text-decoration: none; color: #0000ff ; }
a:visited:hover { text-decoration: none; color: #0000ff ; }
a:link img { border: 0; }
a:visited img { border: 0; }
a:active img { border: 0; }
a.menuLefton { color: #0000ff; font-size: 12px; font-weight: bold; }
td.leftmenu { font-family: verdana, arial, helvetica, sans-serif; text-decoration: none; background: #ddddff; text-align: left; font-size: 14px; height: 20px; width: 200px; }
a.menuTopoff { color: #000000; font-size: 14px; }
a.menuTopoff:visited { color: #000000; font-size: 14px; }
a.menuTopoff:hover { color: #0000ff; font-size: 14px; }
td.topmenu { font-family: verdana, arial, helvetica, sans-serif; background: #ddddff; text-align: center; font-size: 16px; width: 150px; font-weight: bold; }
h1 { font-size: 18px; }
h2 { font-size: 16px; }
h3 { font-size: 14px; }
/* formatting for member functions:
* Since the OpenFOAM code already has nice line-breaks, wrapping the lines
* just looks terrible.
* Give a slightly different background to make it easier to find.
*/
.memitem {
padding: 4px;
background-color: #eef3f5;
border-width: 1px;
border-style: solid;
border-color: #dedeee;
}
.memproto {
background-color: #d5e1e8;
width: 100%;
border-width: 1px;
border-style: solid;
border-color: #84b0c7;
font-weight: bold;
}
table.memname {
width: 100%;
background: #f7f7ff;
white-space: nowrap;
}
.mdescLeft {
margin: 0px;
}
.mdescRight {
font-style: italic;
}
.paramkey {
width: 5%;
}

View File

@ -0,0 +1,5 @@
Copyright © 2000-2008 OpenCFD Ltd
</td></tr>
</table>
</body>
</html>

View File

@ -0,0 +1,74 @@
<!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN"
"http://www.w3.org/TR/html4/loose.dtd">
<html >
<head>
<title> OpenFOAM programmer's C++ documentation
</title>
<meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1">
<meta name="generator" content="TeX4ht (http://www.cse.ohio-state.edu/~gurari/TeX4ht/mn.html)">
<meta name="originator" content="TeX4ht (http://www.cse.ohio-state.edu/~gurari/TeX4ht/mn.html)">
<!-- html,info -->
<meta name="src" content="index.tex">
<meta name="date" content="2007-04-12 00:02:00">
<link rel="stylesheet" type="text/css" href="../Doxygen.css">
<link rel="stylesheet" type="text/css" href="../tabs.css">
<meta name="keywords" content="computational fluid dynamics, CFD, OpenCFD, OpenFOAM, open source CFD, open source">
<meta name="description" content="OpenCFD Ltd, leaders in open source Computational Fluid Dynamics (CFD), the developers and maintainers of OpenFOAM: the open source CFD toolbox. We supply support and contracted developments for OpenFOAM">
</head>
<body>
<a id="openfoam"> </a>
<!-- Top banner -->
<table style="border-width: 0px; width: 800px; background: #ddddff;" cellspacing=0 cellpadding=0>
<tr>
<td style="width: 9px; height:54px"></td>
<td style="width: 250px; height:54px; vertical-align:middle;
horizontal-align: left; ">
<img alt="OpenFOAM logo" src="../OpenFOAMlogo.jpg"> </td>
<td style="width:350px; height:54px; vertical-align:middle;
horizontal-align: left; ">
<table>
<tr>
<td><img alt="The Open Source CFD Toolbox" src="../OpenSourceToolbox.jpg"></td>
</tr>
</table>
</td>
</tr>
</table>
<!-- Button banner -->
<table style="border-width: 0px; width: 800px; background: #ffffff;" cellspacing=0 cellpadding=0>
<tr>
<td valign=top>
<table width=801 border=0 cellspacing=1 cellpadding=0 bgcolor="#ffffff">
<tr>
<td class=leftmenu>&nbsp;
<a href="http://foam.sourceforge.net/doc/Doxygen/html"
class=menuLefton >Source Guide</a>
</td>
<td class=topmenu>
<a href="http://www.opencfd.co.uk/index.html"
class=menuTopoff >OpenCFD</a>
</td>
<td class=topmenu>
<a href="http://www.opencfd.co.uk/solutions/index.html"
class=menuTopoff >Solutions</a>
</td>
<td class=topmenu>
<a href="http://www.opencfd.co.uk/contact/index.html"
class=menuTopoff >Contact</a>
</td>
<td class=topmenu>
<a href="http://www.opencfd.co.uk/openfoam/index.html"
class=menuTopoff >OpenFOAM</a>
</td>
</tr>
<tr>
<td>
</td>
</tr>
</table>
</td>
</tr>
</table>
<table style="border-width: 0px; width: 800px; background: #ffffff;" cellspacing=5 cellpadding=0>
<tr>
<td>

Binary file not shown.

After

Width:  |  Height:  |  Size: 8.3 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 9.9 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 9.6 KiB

101
doc/Doxygen/tabs.css Normal file
View File

@ -0,0 +1,101 @@
/* tabs styles, based on http://www.alistapart.com/articles/slidingdoors */
DIV.tabs
{
float : left;
width : 100%;
margin-bottom : 2px;
padding-bottom : 6px;
}
DIV.tabs UL
{
margin : 0px;
padding-left : 0px;
border-right : 1px solid #84B0C7;
list-style : none;
}
DIV.tabs LI, DIV.tabs FORM
{
display : inline;
margin : 0px;
padding : 0px;
}
DIV.tabs FORM
{
float : left;
padding : 0px 9px;
}
DIV.tabs A
{
float : left;
font-size : 12px;
font-weight : bold;
text-decoration : none;
border-right : 1px solid #000000;
}
DIV.tabs A:hover
{
background-position: 100% -150px;
}
DIV.tabs A:link, DIV.tabs A:visited,
DIV.tabs A:active, DIV.tabs A:hover
{
color: #000000;
}
DIV.tabs SPAN
{
float : left;
display : block;
padding : 0px 9px;
white-space : nowrap;
}
DIV.tabs INPUT
{
float : right;
display : inline;
font-size : 12px;
}
DIV.tabs TD
{
font-size : 12px;
font-weight : bold;
text-decoration : none;
}
/* Commented Backslash Hack hides rule from IE5-Mac \*/
DIV.tabs SPAN {float : none;}
/* End IE5-Mac hack */
DIV.tabs A:hover SPAN
{
background-position: 0% -150px;
}
DIV.tabs LI#current A
{
border-width : 0px;
border-right : 1px solid #000000;
color: #0000ff;
}
DIV.tabs LI#current SPAN
{
padding-bottom : 0px;
}
DIV.nav
{
background : none;
border : none;
border-bottom : 1px solid #000000;
}

13
doc/Doxygen/tools/README Normal file
View File

@ -0,0 +1,13 @@
Misc. tools for finding and/or repairing common documentation problems
See the comments in the scripts.
1. find-suspiciousTags
2. fix-Class
3. find-tinyDescription
4. find-placeholderDescription
Misc Tools
1. find-templateInComments
2. find-its
3. find-junkFiles

49
doc/Doxygen/tools/find-its Executable file
View File

@ -0,0 +1,49 @@
#!/usr/bin/perl -w
use strict;
use File::Find ();
# -----------------------------------------------------------------------------
#
# Script
# find-its
#
# Description
# Search for *.[CH] files with "it's"
# This contraction (== "it is") looks too much like "its" (possesive)
# and confuses non-native (and some native) English speakers.
#
# - print filename and lineNumber
#
# -----------------------------------------------------------------------------
my $re_filespec = qr{^.+\.[CH]$};
# for the convenience of &wanted calls, including -eval statements:
## use vars qw( *name *dir *prune );
## *name = *File::Find::name;
## *dir = *File::Find::dir;
## *prune = *File::Find::prune;
sub wanted {
unless ( lstat($_) and -f _ and -r _ and not -l _ and /$re_filespec/ ) {
return;
}
local @ARGV = $_;
while (<>) {
if (m{it\'s}) {
print "$File::Find::name line=$.\n";
}
}
close ARGV;
}
## Traverse desired filesystems
for my $dir (@ARGV) {
no warnings 'File::Find';
warn "(**) checking '$dir' ...\n";
File::Find::find( { wanted => \&wanted }, $dir );
}

View File

@ -0,0 +1,37 @@
#!/usr/bin/perl -w
use strict;
use File::Find ();
# -----------------------------------------------------------------------------
#
# Script
# find-junkFiles
#
# Description
# Search for "junk" files left over from editor, core, CVS, etc.
#
# - print filename only
#
# -----------------------------------------------------------------------------
sub wanted {
return unless -f $_;
if (
m{^\.?.+~$} ## editor backup
or m{^\#.+\#$} ## editor autosave
or m{^\.\#.+$} ## cvs replace update (eg, ".#test.c.1.3")
or m{^core(\.\d+)?$} ## core dump
) {
print "$File::Find::name\n";
}
}
## Traverse desired filesystems
for my $dir (@ARGV) {
no warnings 'File::Find';
warn "(**) checking '$dir' ...\n";
File::Find::find( { wanted => \&wanted }, $dir );
}

View File

@ -0,0 +1,73 @@
#!/usr/bin/perl -w
use strict;
use File::Find ();
# -----------------------------------------------------------------------------
#
# Script
# find-placeholderDescription
#
# Description
# Search for *.[H] files with a Description that looks like it is
# a placeholder
# eg, Foam::className
#
# - print filename '#' and the description
#
# -----------------------------------------------------------------------------
my $minLength = 16;
my $re_filespec = qr{^.+\.[H]$};
# for the convenience of &wanted calls, including -eval statements:
## use vars qw( *name *dir *prune );
## *name = *File::Find::name;
## *dir = *File::Find::dir;
## *prune = *File::Find::prune;
sub wanted {
unless ( lstat($_) and -f _ and -r _ and not -l _ and /$re_filespec/ ) {
return;
}
my ( $currentClass, $description );
local @ARGV = $_;
while (<>) {
my $name;
## examine the class name
if (/^Class\s*$/) {
$_ = <>;
($currentClass) = split;
}
if (/^Description\s*$/) {
$_ = <>;
( $description = $_ ) =~ s{^\s+|\s+$}{}g;
# remove trailing punctuation as being noise
$description =~ s{\s*[.,:]+$}{};
last;
}
}
$description ||= '';
## we have 'Class' tag
if ( defined $currentClass ) {
# description looks like a class name
if (
$description =~ m{^\w+(::\w+)+$}
) {
print "$File::Find::name # $description\n";
}
}
}
## Traverse desired filesystems
for my $dir (@ARGV) {
no warnings 'File::Find';
warn "(**) checking '$dir' ...\n";
File::Find::find( { wanted => \&wanted }, $dir );
}

View File

@ -0,0 +1,124 @@
#!/usr/bin/perl -w
use strict;
use File::Find ();
# -----------------------------------------------------------------------------
#
# Script
# find-suspiciousTags
#
# Description
# Search for *.[CH] files with 'Class' or 'Namespace' starting in the
# first column but without a class being defined anywhere in the file.
# These are probably incorrect or should be at least be
# changed to 'In Class' / 'In Namespace' for now.
# - print filename and 'InClass' or 'InNamespace'
#
# Find the namespaces used in the files and compare these to what is
# given on the 'Class' information
# - print filename and corrected Class
#
# Check for trailing garbage in the 'Class' information
# - print filename and 'ClassWithTrailingInformation'
#
# -----------------------------------------------------------------------------
my $re_filespec = qr{^.+\.[CH]$};
# for the convenience of &wanted calls, including -eval statements:
## use vars qw( *name *dir *prune );
## *name = *File::Find::name;
## *dir = *File::Find::dir;
## *prune = *File::Find::prune;
sub wanted {
unless ( lstat($_) and -f _ and -r _ and not -l _ and /$re_filespec/ ) {
return;
}
# potential className
( my $fileClass = $_ ) =~ s{\.[A-Za-z]$}{};
my ( $namespace, $currentClass, %classes, %found ) = ('');
local @ARGV = $_;
while (<>) {
my $name;
## look for (class|namespace), deal with repeats
if ( ($name) = /^\s*class\s+(\w+)\s*/ ) {
$classes{$name}++;
}
elsif ( ($name) = /^\s*namespace\s+(\w+)\s*/ ) {
## reset if 'Foam' namespace appears again
$namespace = '' if $name eq "Foam";
$namespace .= $name . "::";
}
elsif (/^(Class|Namespace)\s*/) {
$found{$1}++;
## examine the class name
if (/^Class\s*$/) {
$_ = <>;
my @trailing;
( $currentClass, @trailing ) = split;
if (@trailing) {
$found{-trailing}++;
}
# the next line should be blank
$_ = <>;
$_ ||= '';
if (not /^\s*$/) {
$found{-spacing}++;
}
}
}
}
# always report if the Class has trailing information
if ( delete $found{-trailing} ) {
print "$File::Find::name ClassWithTrailingInformation\n";
}
# always report if the Class has spacing problem
if ( delete $found{-spacing} ) {
print "$File::Find::name ClassWithSpacingIssue\n";
}
if (%classes) {
## we have 'Class' tag
if ( defined $currentClass ) {
if ($namespace) {
my ($currentNamespace) = $currentClass =~ m{^(.+::)};
$currentNamespace ||= '';
if ( $namespace ne $currentNamespace ) {
$currentClass =~ s{^(.+::)}{};
$currentClass ||= $fileClass;
print "$File::Find::name $namespace$currentClass\n";
}
}
elsif ( not $currentClass ) {
## supply a class name
print "$File::Find::name $fileClass\n";
}
}
}
else {
## no classes, all tags are deemed suspicious
for ( sort keys %found ) {
print "$File::Find::name In$_\n";
}
}
}
## Traverse desired filesystems
for my $dir (@ARGV) {
no warnings 'File::Find';
warn "(**) checking '$dir' ...\n";
File::Find::find( { wanted => \&wanted }, $dir );
}

View File

@ -0,0 +1,54 @@
#!/usr/bin/perl -w
use strict;
use File::Find ();
# -----------------------------------------------------------------------------
#
# Script
# find-templateInComments
#
# Description
# Search for *.[CH] files with '<xxx>' tags within the first comment block
# These likely need to be quoted as '\<xxx\>' for Doxygen.
# - print filename and lineNumber
#
# -----------------------------------------------------------------------------
my $re_filespec = qr{^.+\.[CH]$};
# for the convenience of &wanted calls, including -eval statements:
## use vars qw( *name *dir *prune );
## *name = *File::Find::name;
## *dir = *File::Find::dir;
## *prune = *File::Find::prune;
sub wanted {
unless ( lstat($_) and -f _ and -r _ and not -l _ and /$re_filespec/ ) {
return;
}
local @ARGV = $_;
while (<>) {
if (m{^\s*/\*} ... m{\*/})
{
if (m{\<\s*\w+\s*\>}) {
print "$File::Find::name line=$.\n";
}
if (m{\*/}) {
last;
}
}
}
close ARGV;
}
## Traverse desired filesystems
for my $dir (@ARGV) {
no warnings 'File::Find';
warn "(**) checking '$dir' ...\n";
File::Find::find( { wanted => \&wanted }, $dir );
}

View File

@ -0,0 +1,77 @@
#!/usr/bin/perl -w
use strict;
use File::Find ();
# -----------------------------------------------------------------------------
#
# Script
# find-tinyDescription
#
# Description
# Search for *.[H] files with 'Class' starting in the first column
# and a missing Description, or a tiny Description.
# A tiny Description is less than XX letters and does not resemble
# the class name. We'll look for descriptions matching the class name
# in a later pass.
#
# - print filename '#' and the description
#
# -----------------------------------------------------------------------------
my $minLength = 16;
my $re_filespec = qr{^.+\.[H]$};
# for the convenience of &wanted calls, including -eval statements:
## use vars qw( *name *dir *prune );
## *name = *File::Find::name;
## *dir = *File::Find::dir;
## *prune = *File::Find::prune;
sub wanted {
unless ( lstat($_) and -f _ and -r _ and not -l _ and /$re_filespec/ ) {
return;
}
my ( $currentClass, $description );
local @ARGV = $_;
while (<>) {
my $name;
## examine the class name
if (/^Class\s*$/) {
$_ = <>;
($currentClass) = split;
}
if (/^Description\s*$/) {
$_ = <>;
( $description = $_ ) =~ s{^\s+|\s+$}{}g;
# remove trailing punctuation as being noise
$description =~ s{\s*[.,:]+$}{};
last;
}
}
$description ||= '';
## we have 'Class' tag
if ( defined $currentClass ) {
# description doesnt looks like a class name
if (
$description !~ m{^\w+(::\w+)+$}
and
(length $description < $minLength or $description =~ m{^\S+$})
) {
print "$File::Find::name # $description\n";
}
}
}
## Traverse desired filesystems
for my $dir (@ARGV) {
no warnings 'File::Find';
warn "(**) checking '$dir' ...\n";
File::Find::find( { wanted => \&wanted }, $dir );
}

111
doc/Doxygen/tools/fix-Class Executable file
View File

@ -0,0 +1,111 @@
#!/bin/sh
# -----------------------------------------------------------------------------
# ========= |
# \\ / F ield | OpenFOAM: The Open Source CFD Toolbox
# \\ / O peration |
# \\ / A nd | Copyright (C) 1991-2007 OpenCFD Ltd.
# \\/ M anipulation |
# ------------------------------------------------------------------------------
# License
# This file is part of OpenFOAM.
#
# OpenFOAM is free software; you can redistribute it and/or modify it
# under the terms of the GNU General Public License as published by the
# Free Software Foundation; either version 2 of the License, or (at your
# option) any later version.
#
# OpenFOAM 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 GNU General Public License
# for more details.
#
# You should have received a copy of the GNU General Public License
# along with OpenFOAM; if not, write to the Free Software Foundation,
# Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA
#
# Script
# fix-Class
#
# Description
# Process the lists given on the command line.
# Column 1 = fileName, column 2 = Class or action
# See find-suspiciousTags for details.
#
# 1. fix ClassWithTrailingInformation by hand
# 2. InClass and InNamespace fixup
# 3. change
# |Class
# | anything
# ->
# |Class
# | className
#
# -----------------------------------------------------------------------------
# stop if trailing junk has been detected
for fileList
do
[ -f $fileList -a -r $fileList ] || {
echo "cannot read file list: $fileList"
exit 1
}
grep ClassWithTrailingInformation $fileList
if [ $? = 0 ]
then
echo "#"
echo "# fix ClassWithTrailingInformation by hand"
echo "#"
exit 99
fi
done
for fileList
do
# repair InClass, InNamespace
for tag in Class Namespace
do
backup=".repair-In$tag"
for file in $(sed -n -e "s/In$tag *$//p" $fileList)
do
echo "repair In$tag: $file"
perl -i$backup -pe "s/^$tag/In$tag/" $file
done
done
# repair the class names (with namespace)
backup=".repair-reclassify"
cat $fileList | while read fileName className
do
# use classes with '::' separator to avoid too
# many false positives
perl -i$backup -x $0 $fileName $className
done
done
exit 0
# ---------------------------------------------------------------- end-of-file
# embedded Perl program
#!/usr/bin/perl -w
use strict;
# args: fileName className
# - className must contain '::'
my $className = pop;
@ARGV == 1 and ($className ||= '') =~ /::/ or exit 1;
warn "repair: @ARGV $className\n";
while (<>)
{
if (/^Class\s*$/) {
print;
$_ = <>; # get and discard the next line
$_ = " $className\n";
}
print;
}
# ---------------------------------------------------------------- end-of-file