From 0b7dc317fad8ce8bbd5422fe196c16f7f630fe64 Mon Sep 17 00:00:00 2001 From: Mark Olesen Date: Fri, 16 Apr 2010 08:57:04 +0200 Subject: [PATCH 01/57] ENH: begin reworking doxygen to use xhtml/css and new OpenCFD look - drop old table-based formatting in favour of div. - use single css with @import to minimize the impact of style changes on the html documents themselves. - separate css/ directory - locate css graphic elements inside the css/ directory for easier relative addressing. --- doc/doxygen/Allwmake | 22 + doc/doxygen/Doxyfile | 1306 +++++++++++++++++ doc/doxygen/OpenFOAMdocIcon.png | Bin 0 -> 1240 bytes doc/doxygen/OpenFOAMicon.png | Bin 0 -> 1199 bytes doc/doxygen/_Footer | 9 + doc/doxygen/_Header | 68 + doc/doxygen/css/doxyLayout.css | 171 +++ doc/doxygen/css/doxyTabs.css | 100 ++ doc/doxygen/css/doxygen.css | 111 ++ doc/doxygen/css/doxygen/doxygen.css | 545 +++++++ doc/doxygen/css/doxygen/tabs.css | 105 ++ doc/doxygen/css/img/OpenCFDlogo.png | Bin 0 -> 11529 bytes doc/doxygen/css/img/bg_bullet_full_1.gif | Bin 0 -> 806 bytes doc/doxygen/css/img/bg_bullet_full_2.gif | Bin 0 -> 50 bytes doc/doxygen/css/img/bg_bullet_half_1.gif | Bin 0 -> 825 bytes doc/doxygen/css/img/bg_bullet_half_2.gif | Bin 0 -> 99 bytes doc/doxygen/css/img/bg_corner_topright.gif | Bin 0 -> 60 bytes .../css/img/bg_head_corner_topleft_25px.gif | Bin 0 -> 391 bytes .../css/img/bg_head_corner_topright_25px.gif | Bin 0 -> 389 bytes 19 files changed, 2437 insertions(+) create mode 100755 doc/doxygen/Allwmake create mode 100644 doc/doxygen/Doxyfile create mode 100644 doc/doxygen/OpenFOAMdocIcon.png create mode 100644 doc/doxygen/OpenFOAMicon.png create mode 100644 doc/doxygen/_Footer create mode 100644 doc/doxygen/_Header create mode 100644 doc/doxygen/css/doxyLayout.css create mode 100644 doc/doxygen/css/doxyTabs.css create mode 100644 doc/doxygen/css/doxygen.css create mode 100644 doc/doxygen/css/doxygen/doxygen.css create mode 100644 doc/doxygen/css/doxygen/tabs.css create mode 100644 doc/doxygen/css/img/OpenCFDlogo.png create mode 100644 doc/doxygen/css/img/bg_bullet_full_1.gif create mode 100644 doc/doxygen/css/img/bg_bullet_full_2.gif create mode 100644 doc/doxygen/css/img/bg_bullet_half_1.gif create mode 100644 doc/doxygen/css/img/bg_bullet_half_2.gif create mode 100644 doc/doxygen/css/img/bg_corner_topright.gif create mode 100644 doc/doxygen/css/img/bg_head_corner_topleft_25px.gif create mode 100644 doc/doxygen/css/img/bg_head_corner_topright_25px.gif diff --git a/doc/doxygen/Allwmake b/doc/doxygen/Allwmake new file mode 100755 index 0000000000..a34eb3fd7e --- /dev/null +++ b/doc/doxygen/Allwmake @@ -0,0 +1,22 @@ +#!/bin/sh +cd ${0%/*} || exit 1 # run from this directory +set -x + +rm -rf latex man + +# remove html directory in background +mv html html-stagedRemove$$ 2> /dev/null +rm -rf html-stagedRemove$$ >/dev/null 2>&1 & + +# ensure that created files are readable by everyone +umask 22 +doxygen + +# fix permissions (NB: '+X' and not '+x'!) +chmod -R a+rX html latex man 2>/dev/null + +echo +echo "Done doxygen" +echo + +# ----------------------------------------------------------------- end-of-file diff --git a/doc/doxygen/Doxyfile b/doc/doxygen/Doxyfile new file mode 100644 index 0000000000..39b5dc6ad9 --- /dev/null +++ b/doc/doxygen/Doxyfile @@ -0,0 +1,1306 @@ +# Doxyfile 1.5.3 + +# This file describes the settings to be used by the documentation system +# doxygen (www.doxygen.org) for a project +# +# All text after a hash (#) is considered a comment and will be ignored +# The format is: +# TAG = value [value, ...] +# For lists items can also be appended using: +# TAG += value [value, ...] +# Values that contain spaces should be placed between quotes (" ") + +#--------------------------------------------------------------------------- +# Project related configuration options +#--------------------------------------------------------------------------- + +# This tag specifies the encoding used for all characters in the config file that +# follow. The default is UTF-8 which is also the encoding used for all text before +# the first occurrence of this tag. Doxygen uses libiconv (or the iconv built into +# libc) for the transcoding. See http://www.gnu.org/software/libiconv for the list of +# possible encodings. + +DOXYFILE_ENCODING = UTF-8 + +# The PROJECT_NAME tag is a single word (or a sequence of words surrounded +# by quotes) that should identify the project. + +PROJECT_NAME = OpenFOAM-$(WM_PROJECT_VERSION) + +# The PROJECT_NUMBER tag can be used to enter a project or revision number. +# This could be handy for archiving the generated documentation or +# if some version control system is used. + +PROJECT_NUMBER = + +# The OUTPUT_DIRECTORY tag is used to specify the (relative or absolute) +# base path where the generated documentation will be put. +# If a relative path is entered, it will be relative to the location +# where doxygen was started. If left blank the current directory will be used. + +OUTPUT_DIRECTORY = + +# If the CREATE_SUBDIRS tag is set to YES, then doxygen will create +# 4096 sub-directories (in 2 levels) under the output directory of each output +# format and will distribute the generated files over these directories. +# Enabling this option can be useful when feeding doxygen a huge amount of +# source files, where putting all generated files in the same directory would +# otherwise cause performance problems for the file system. + +CREATE_SUBDIRS = NO + +# The OUTPUT_LANGUAGE tag is used to specify the language in which all +# documentation generated by doxygen is written. Doxygen will use this +# information to generate all constant output in the proper language. +# The default language is English, other supported languages are: +# Afrikaans, Arabic, Brazilian, Catalan, Chinese, Chinese-Traditional, +# Croatian, Czech, Danish, Dutch, Finnish, French, German, Greek, Hungarian, +# Italian, Japanese, Japanese-en (Japanese with English messages), Korean, +# Korean-en, Lithuanian, Norwegian, Polish, Portuguese, Romanian, Russian, +# Serbian, Slovak, Slovene, Spanish, Swedish, and Ukrainian. + +OUTPUT_LANGUAGE = English + +# If the BRIEF_MEMBER_DESC tag is set to YES (the default) Doxygen will +# include brief member descriptions after the members that are listed in +# the file and class documentation (similar to JavaDoc). +# Set to NO to disable this. + +BRIEF_MEMBER_DESC = YES + +# If the REPEAT_BRIEF tag is set to YES (the default) Doxygen will prepend +# the brief description of a member or function before the detailed description. +# Note: if both HIDE_UNDOC_MEMBERS and BRIEF_MEMBER_DESC are set to NO, the +# brief descriptions will be completely suppressed. + +REPEAT_BRIEF = YES + +# This tag implements a quasi-intelligent brief description abbreviator +# that is used to form the text in various listings. Each string +# in this list, if found as the leading text of the brief description, will be +# stripped from the text and the result after processing the whole list, is +# used as the annotated text. Otherwise, the brief description is used as-is. +# If left blank, the following values are used ("$name" is automatically +# replaced with the name of the entity): "The $name class" "The $name widget" +# "The $name file" "is" "provides" "specifies" "contains" +# "represents" "a" "an" "the" + +ABBREVIATE_BRIEF = + +# If the ALWAYS_DETAILED_SEC and REPEAT_BRIEF tags are both set to YES then +# Doxygen will generate a detailed section even if there is only a brief +# description. + +ALWAYS_DETAILED_SEC = NO + +# If the INLINE_INHERITED_MEMB tag is set to YES, doxygen will show all +# inherited members of a class in the documentation of that class as if those +# members were ordinary class members. Constructors, destructors and assignment +# operators of the base classes will not be shown. + +INLINE_INHERITED_MEMB = NO + +# If the FULL_PATH_NAMES tag is set to YES then Doxygen will prepend the full +# path before files name in the file list and in the header files. If set +# to NO the shortest path that makes the file name unique will be used. + +FULL_PATH_NAMES = YES + +# If the FULL_PATH_NAMES tag is set to YES then the STRIP_FROM_PATH tag +# can be used to strip a user-defined part of the path. Stripping is +# only done if one of the specified strings matches the left-hand part of +# the path. The tag can be used to show relative paths in the file list. +# If left blank the directory from which doxygen is run is used as the +# path to strip. + +STRIP_FROM_PATH = $(WM_PROJECT_DIR) + +# The STRIP_FROM_INC_PATH tag can be used to strip a user-defined part of +# the path mentioned in the documentation of a class, which tells +# the reader which header file to include in order to use a class. +# If left blank only the name of the header file containing the class +# definition is used. Otherwise one should specify the include paths that +# are normally passed to the compiler using the -I flag. + +STRIP_FROM_INC_PATH = + +# If the SHORT_NAMES tag is set to YES, doxygen will generate much shorter +# (but less readable) file names. This can be useful is your file systems +# doesn't support long names like on DOS, Mac, or CD-ROM. + +SHORT_NAMES = NO + +# If the JAVADOC_AUTOBRIEF tag is set to YES then Doxygen +# will interpret the first line (until the first dot) of a JavaDoc-style +# comment as the brief description. If set to NO, the JavaDoc +# comments will behave just like regular Qt-style comments +# (thus requiring an explicit @brief command for a brief description.) + +JAVADOC_AUTOBRIEF = NO + +# If the QT_AUTOBRIEF tag is set to YES then Doxygen will +# interpret the first line (until the first dot) of a Qt-style +# comment as the brief description. If set to NO, the comments +# will behave just like regular Qt-style comments (thus requiring +# an explicit \brief command for a brief description.) + +QT_AUTOBRIEF = NO + +# The MULTILINE_CPP_IS_BRIEF tag can be set to YES to make Doxygen +# treat a multi-line C++ special comment block (i.e. a block of //! or /// +# comments) as a brief description. This used to be the default behaviour. +# The new default is to treat a multi-line C++ comment block as a detailed +# description. Set this tag to YES if you prefer the old behaviour instead. + +MULTILINE_CPP_IS_BRIEF = NO + +# If the DETAILS_AT_TOP tag is set to YES then Doxygen +# will output the detailed description near the top, like JavaDoc. +# If set to NO, the detailed description appears after the member +# documentation. + +DETAILS_AT_TOP = YES + +# If the INHERIT_DOCS tag is set to YES (the default) then an undocumented +# member inherits the documentation from any documented member that it +# re-implements. + +INHERIT_DOCS = YES + +# If the SEPARATE_MEMBER_PAGES tag is set to YES, then doxygen will produce +# a new page for each member. If set to NO, the documentation of a member will +# be part of the file/class/namespace that contains it. + +SEPARATE_MEMBER_PAGES = NO + +# The TAB_SIZE tag can be used to set the number of spaces in a tab. +# Doxygen uses this value to replace tabs by spaces in code fragments. + +TAB_SIZE = 4 + +# This tag can be used to specify a number of aliases that acts +# as commands in the documentation. An alias has the form "name=value". +# For example adding "sideeffect=\par Side Effects:\n" will allow you to +# put the command \sideeffect (or @sideeffect) in the documentation, which +# will result in a user-defined paragraph with heading "Side Effects:". +# You can put \n's in the value part of an alias to insert newlines. + +ALIASES = + +# Set the OPTIMIZE_OUTPUT_FOR_C tag to YES if your project consists of C +# sources only. Doxygen will then generate output that is more tailored for C. +# For instance, some of the names that are used will be different. The list +# of all members will be omitted, etc. + +OPTIMIZE_OUTPUT_FOR_C = NO + +# Set the OPTIMIZE_OUTPUT_JAVA tag to YES if your project consists of Java +# sources only. Doxygen will then generate output that is more tailored for Java. +# For instance, namespaces will be presented as packages, qualified scopes +# will look different, etc. + +OPTIMIZE_OUTPUT_JAVA = NO + +# If you use STL classes (i.e. std::string, std::vector, etc.) but do not want to +# include (a tag file for) the STL sources as input, then you should +# set this tag to YES in order to let doxygen match functions declarations and +# definitions whose arguments contain STL classes (e.g. func(std::string); v.s. +# func(std::string) {}). This also make the inheritance and collaboration +# diagrams that involve STL classes more complete and accurate. + +BUILTIN_STL_SUPPORT = NO + +# If you use Microsoft's C++/CLI language, you should set this option to YES to +# enable parsing support. + +CPP_CLI_SUPPORT = NO + +# If member grouping is used in the documentation and the DISTRIBUTE_GROUP_DOC +# tag is set to YES, then doxygen will reuse the documentation of the first +# member in the group (if any) for the other members of the group. By default +# all members of a group must be documented explicitly. + +DISTRIBUTE_GROUP_DOC = NO + +# Set the SUBGROUPING tag to YES (the default) to allow class member groups of +# the same type (for instance a group of public functions) to be put as a +# subgroup of that type (e.g. under the Public Functions section). Set it to +# NO to prevent subgrouping. Alternatively, this can be done per class using +# the \nosubgrouping command. + +SUBGROUPING = YES + +#--------------------------------------------------------------------------- +# Build related configuration options +#--------------------------------------------------------------------------- + +# If the EXTRACT_ALL tag is set to YES doxygen will assume all entities in +# documentation are documented, even if no documentation was available. +# Private class members and static file members will be hidden unless +# the EXTRACT_PRIVATE and EXTRACT_STATIC tags are set to YES + +EXTRACT_ALL = YES + +# If the EXTRACT_PRIVATE tag is set to YES all private members of a class +# will be included in the documentation. + +EXTRACT_PRIVATE = NO + +# If the EXTRACT_STATIC tag is set to YES all static members of a file +# will be included in the documentation. + +EXTRACT_STATIC = YES + +# If the EXTRACT_LOCAL_CLASSES tag is set to YES classes (and structs) +# defined locally in source files will be included in the documentation. +# If set to NO only classes defined in header files are included. + +EXTRACT_LOCAL_CLASSES = YES + +# This flag is only useful for Objective-C code. When set to YES local +# methods, which are defined in the implementation section but not in +# the interface are included in the documentation. +# If set to NO (the default) only methods in the interface are included. + +EXTRACT_LOCAL_METHODS = NO + +# If this flag is set to YES, the members of anonymous namespaces will be extracted +# and appear in the documentation as a namespace called 'anonymous_namespace{file}', +# where file will be replaced with the base name of the file that contains the anonymous +# namespace. By default anonymous namespace are hidden. + +EXTRACT_ANON_NSPACES = NO + +# If the HIDE_UNDOC_MEMBERS tag is set to YES, Doxygen will hide all +# undocumented members of documented classes, files or namespaces. +# If set to NO (the default) these members will be included in the +# various overviews, but no documentation section is generated. +# This option has no effect if EXTRACT_ALL is enabled. + +HIDE_UNDOC_MEMBERS = NO + +# If the HIDE_UNDOC_CLASSES tag is set to YES, Doxygen will hide all +# undocumented classes that are normally visible in the class hierarchy. +# If set to NO (the default) these classes will be included in the various +# overviews. This option has no effect if EXTRACT_ALL is enabled. + +HIDE_UNDOC_CLASSES = NO + +# If the HIDE_FRIEND_COMPOUNDS tag is set to YES, Doxygen will hide all +# friend (class|struct|union) declarations. +# If set to NO (the default) these declarations will be included in the +# documentation. + +HIDE_FRIEND_COMPOUNDS = NO + +# If the HIDE_IN_BODY_DOCS tag is set to YES, Doxygen will hide any +# documentation blocks found inside the body of a function. +# If set to NO (the default) these blocks will be appended to the +# function's detailed documentation block. + +HIDE_IN_BODY_DOCS = NO + +# The INTERNAL_DOCS tag determines if documentation +# that is typed after a \internal command is included. If the tag is set +# to NO (the default) then the documentation will be excluded. +# Set it to YES to include the internal documentation. + +INTERNAL_DOCS = NO + +# If the CASE_SENSE_NAMES tag is set to NO then Doxygen will only generate +# file names in lower-case letters. If set to YES upper-case letters are also +# allowed. This is useful if you have classes or files whose names only differ +# in case and if your file system supports case sensitive file names. Windows +# and Mac users are advised to set this option to NO. + +CASE_SENSE_NAMES = YES + +# If the HIDE_SCOPE_NAMES tag is set to NO (the default) then Doxygen +# will show members with their full class and namespace scopes in the +# documentation. If set to YES the scope will be hidden. + +HIDE_SCOPE_NAMES = YES + +# If the SHOW_INCLUDE_FILES tag is set to YES (the default) then Doxygen +# will put a list of the files that are included by a file in the documentation +# of that file. + +SHOW_INCLUDE_FILES = NO + +# If the INLINE_INFO tag is set to YES (the default) then a tag [inline] +# is inserted in the documentation for inline members. + +INLINE_INFO = YES + +# If the SORT_MEMBER_DOCS tag is set to YES (the default) then doxygen +# will sort the (detailed) documentation of file and class members +# alphabetically by member name. If set to NO the members will appear in +# declaration order. + +SORT_MEMBER_DOCS = NO + +# If the SORT_BRIEF_DOCS tag is set to YES then doxygen will sort the +# brief documentation of file, namespace and class members alphabetically +# by member name. If set to NO (the default) the members will appear in +# declaration order. + +SORT_BRIEF_DOCS = NO + +# If the SORT_BY_SCOPE_NAME tag is set to YES, the class list will be +# sorted by fully-qualified names, including namespaces. If set to +# NO (the default), the class list will be sorted only by class name, +# not including the namespace part. +# Note: This option is not very useful if HIDE_SCOPE_NAMES is set to YES. +# Note: This option applies only to the class list, not to the +# alphabetical list. + +SORT_BY_SCOPE_NAME = NO + +# The GENERATE_TODOLIST tag can be used to enable (YES) or +# disable (NO) the todo list. This list is created by putting \todo +# commands in the documentation. + +GENERATE_TODOLIST = YES + +# The GENERATE_TESTLIST tag can be used to enable (YES) or +# disable (NO) the test list. This list is created by putting \test +# commands in the documentation. + +GENERATE_TESTLIST = YES + +# The GENERATE_BUGLIST tag can be used to enable (YES) or +# disable (NO) the bug list. This list is created by putting \bug +# commands in the documentation. + +GENERATE_BUGLIST = YES + +# The GENERATE_DEPRECATEDLIST tag can be used to enable (YES) or +# disable (NO) the deprecated list. This list is created by putting +# \deprecated commands in the documentation. + +GENERATE_DEPRECATEDLIST= YES + +# The ENABLED_SECTIONS tag can be used to enable conditional +# documentation sections, marked by \if sectionname ... \endif. + +ENABLED_SECTIONS = + +# The MAX_INITIALIZER_LINES tag determines the maximum number of lines +# the initial value of a variable or define consists of for it to appear in +# the documentation. If the initializer consists of more lines than specified +# here it will be hidden. Use a value of 0 to hide initializers completely. +# The appearance of the initializer of individual variables and defines in the +# documentation can be controlled using \showinitializer or \hideinitializer +# command in the documentation regardless of this setting. + +MAX_INITIALIZER_LINES = 30 + +# Set the SHOW_USED_FILES tag to NO to disable the list of files generated +# at the bottom of the documentation of classes and structs. If set to YES the +# list will mention the files that were used to generate the documentation. + +SHOW_USED_FILES = YES + +# If the sources in your project are distributed over multiple directories +# then setting the SHOW_DIRECTORIES tag to YES will show the directory hierarchy +# in the documentation. The default is NO. + +SHOW_DIRECTORIES = YES + +# The FILE_VERSION_FILTER tag can be used to specify a program or script that +# doxygen should invoke to get the current version for each file (typically from the +# version control system). Doxygen will invoke the program by executing (via +# popen()) the command , where is the value of +# the FILE_VERSION_FILTER tag, and is the name of an input file +# provided by doxygen. Whatever the program writes to standard output +# is used as the file version. See the manual for examples. + +FILE_VERSION_FILTER = + +#--------------------------------------------------------------------------- +# configuration options related to warning and progress messages +#--------------------------------------------------------------------------- + +# The QUIET tag can be used to turn on/off the messages that are generated +# by doxygen. Possible values are YES and NO. If left blank NO is used. + +QUIET = NO + +# The WARNINGS tag can be used to turn on/off the warning messages that are +# generated by doxygen. Possible values are YES and NO. If left blank +# NO is used. + +WARNINGS = YES + +# If WARN_IF_UNDOCUMENTED is set to YES, then doxygen will generate warnings +# for undocumented members. If EXTRACT_ALL is set to YES then this flag will +# automatically be disabled. + +WARN_IF_UNDOCUMENTED = YES + +# If WARN_IF_DOC_ERROR is set to YES, doxygen will generate warnings for +# potential errors in the documentation, such as not documenting some +# parameters in a documented function, or documenting parameters that +# don't exist or using markup commands wrongly. + +WARN_IF_DOC_ERROR = YES + +# This WARN_NO_PARAMDOC option can be abled to get warnings for +# functions that are documented, but have no documentation for their parameters +# or return value. If set to NO (the default) doxygen will only warn about +# wrong or incomplete parameter documentation, but not about the absence of +# documentation. + +WARN_NO_PARAMDOC = NO + +# The WARN_FORMAT tag determines the format of the warning messages that +# doxygen can produce. The string should contain the $file, $line, and $text +# tags, which will be replaced by the file and line number from which the +# warning originated and the warning text. Optionally the format may contain +# $version, which will be replaced by the version of the file (if it could +# be obtained via FILE_VERSION_FILTER) + +WARN_FORMAT = "$file:$line: $text " + +# The WARN_LOGFILE tag can be used to specify a file to which warning +# and error messages should be written. If left blank the output is written +# to stderr. + +WARN_LOGFILE = + +#--------------------------------------------------------------------------- +# configuration options related to the input files +#--------------------------------------------------------------------------- + +# The INPUT tag can be used to specify the files and/or directories that contain +# documented source files. You may enter file names like "myfile.cpp" or +# directories like "/usr/src/myproject". Separate the files or directories +# with spaces. + +# INPUT = $(WM_PROJECT_DIR)/src \ +# $(WM_PROJECT_DIR)/applications/utilities \ +# $(WM_PROJECT_DIR)/applications/solvers + +# limit input for testing purposes +INPUT = $(WM_PROJECT_DIR)/src/OpenFOAM/global + +# This tag can be used to specify the character encoding of the source files that +# doxygen parses. Internally doxygen uses the UTF-8 encoding, which is also the default +# input encoding. Doxygen uses libiconv (or the iconv built into libc) for the transcoding. +# See http://www.gnu.org/software/libiconv for the list of possible encodings. + +INPUT_ENCODING = UTF-8 + +# If the value of the INPUT tag contains directories, you can use the +# FILE_PATTERNS tag to specify one or more wildcard pattern (like *.cpp +# and *.h) to filter out the source-files in the directories. If left +# blank the following patterns are tested: +# *.c *.cc *.cxx *.cpp *.c++ *.java *.ii *.ixx *.ipp *.i++ *.inl *.h *.hh *.hxx +# *.hpp *.h++ *.idl *.odl *.cs *.php *.php3 *.inc *.m *.mm *.py + +FILE_PATTERNS = *.H *.C + +# The RECURSIVE tag can be used to turn specify whether or not subdirectories +# should be searched for input files as well. Possible values are YES and NO. +# If left blank NO is used. + +RECURSIVE = YES + +# The EXCLUDE tag can be used to specify files and/or directories that should +# excluded from the INPUT source files. This way you can easily exclude a +# subdirectory from a directory tree whose root is specified with the INPUT tag. + +EXCLUDE = + +# The EXCLUDE_SYMLINKS tag can be used select whether or not files or +# directories that are symbolic links (a Unix filesystem feature) are excluded +# from the input. + +EXCLUDE_SYMLINKS = NO + +# If the value of the INPUT tag contains directories, you can use the +# EXCLUDE_PATTERNS tag to specify one or more wildcard patterns to exclude +# certain files from those directories. Note that the wildcards are matched +# against the file with absolute path, so to exclude all test directories +# for example use the pattern */test/* + +EXCLUDE_PATTERNS = */lnInclude/* \ + */t/* + + +# The EXCLUDE_SYMBOLS tag can be used to specify one or more symbol names +# (namespaces, classes, functions, etc.) that should be excluded from the output. +# The symbol name can be a fully qualified name, a word, or if the wildcard * is used, +# a substring. Examples: ANamespace, AClass, AClass::ANamespace, ANamespace::*Test + +EXCLUDE_SYMBOLS = + +# The EXAMPLE_PATH tag can be used to specify one or more files or +# directories that contain example code fragments that are included (see +# the \include command). + +EXAMPLE_PATH = + + +# If the value of the EXAMPLE_PATH tag contains directories, you can use the +# EXAMPLE_PATTERNS tag to specify one or more wildcard pattern (like *.cpp +# and *.h) to filter out the source-files in the directories. If left +# blank all files are included. + +EXAMPLE_PATTERNS = + +# If the EXAMPLE_RECURSIVE tag is set to YES then subdirectories will be +# searched for input files to be used with the \include or \dontinclude +# commands irrespective of the value of the RECURSIVE tag. +# Possible values are YES and NO. If left blank NO is used. + +EXAMPLE_RECURSIVE = NO + +# The IMAGE_PATH tag can be used to specify one or more files or +# directories that contain image that are included in the documentation (see +# the \image command). + +IMAGE_PATH = + +# The INPUT_FILTER tag can be used to specify a program that doxygen should +# invoke to filter for each input file. Doxygen will invoke the filter program +# by executing (via popen()) the command , where +# is the value of the INPUT_FILTER tag, and is the name of an +# input file. Doxygen will then use the output that the filter program writes +# to standard output. If FILTER_PATTERNS is specified, this tag will be +# ignored. + +INPUT_FILTER = doxyFilt + +# The FILTER_PATTERNS tag can be used to specify filters on a per file pattern +# basis. Doxygen will compare the file name with each pattern and apply the +# filter if there is a match. The filters are a list of the form: +# pattern=filter (like *.cpp=my_cpp_filter). See INPUT_FILTER for further +# info on how filters are used. If FILTER_PATTERNS is empty, INPUT_FILTER +# is applied to all files. + +FILTER_PATTERNS = + +# If the FILTER_SOURCE_FILES tag is set to YES, the input filter (if set using +# INPUT_FILTER) will be used to filter the input files when producing source +# files to browse (i.e. when SOURCE_BROWSER is set to YES). + +FILTER_SOURCE_FILES = NO + +#--------------------------------------------------------------------------- +# configuration options related to source browsing +#--------------------------------------------------------------------------- + +# If the SOURCE_BROWSER tag is set to YES then a list of source files will +# be generated. Documented entities will be cross-referenced with these sources. +# Note: To get rid of all source code in the generated output, make sure also +# VERBATIM_HEADERS is set to NO. If you have enabled CALL_GRAPH or CALLER_GRAPH +# then you must also enable this option. If you don't then doxygen will produce +# a warning and turn it on anyway + +SOURCE_BROWSER = YES + +# Setting the INLINE_SOURCES tag to YES will include the body +# of functions and classes directly in the documentation. + +INLINE_SOURCES = NO + +# Setting the STRIP_CODE_COMMENTS tag to YES (the default) will instruct +# doxygen to hide any special comment blocks from generated source code +# fragments. Normal C and C++ comments will always remain visible. + +STRIP_CODE_COMMENTS = YES + +# If the REFERENCED_BY_RELATION tag is set to YES (the default) +# then for each documented function all documented +# functions referencing it will be listed. + +REFERENCED_BY_RELATION = YES + +# If the REFERENCES_RELATION tag is set to YES (the default) +# then for each documented function all documented entities +# called/used by that function will be listed. + +REFERENCES_RELATION = YES + +# If the REFERENCES_LINK_SOURCE tag is set to YES (the default) +# and SOURCE_BROWSER tag is set to YES, then the hyperlinks from +# functions in REFERENCES_RELATION and REFERENCED_BY_RELATION lists will +# link to the source code. Otherwise they will link to the documentstion. + +REFERENCES_LINK_SOURCE = YES + +# If the USE_HTAGS tag is set to YES then the references to source code +# will point to the HTML generated by the htags(1) tool instead of doxygen +# built-in source browser. The htags tool is part of GNU's global source +# tagging system (see http://www.gnu.org/software/global/global.html). You +# will need version 4.8.6 or higher. + +USE_HTAGS = NO + +# If the VERBATIM_HEADERS tag is set to YES (the default) then Doxygen +# will generate a verbatim copy of the header file for each class for +# which an include is specified. Set to NO to disable this. + +VERBATIM_HEADERS = YES + +#--------------------------------------------------------------------------- +# configuration options related to the alphabetical class index +#--------------------------------------------------------------------------- + +# If the ALPHABETICAL_INDEX tag is set to YES, an alphabetical index +# of all compounds will be generated. Enable this if the project +# contains a lot of classes, structs, unions or interfaces. + +ALPHABETICAL_INDEX = YES + +# If the alphabetical index is enabled (see ALPHABETICAL_INDEX) then +# the COLS_IN_ALPHA_INDEX tag can be used to specify the number of columns +# in which this list will be split (can be a number in the range [1..20]) + +COLS_IN_ALPHA_INDEX = 4 + +# In case all classes in a project start with a common prefix, all +# classes will be put under the same header in the alphabetical index. +# The IGNORE_PREFIX tag can be used to specify one or more prefixes that +# should be ignored while generating the index headers. + +IGNORE_PREFIX = + +#--------------------------------------------------------------------------- +# configuration options related to the HTML output +#--------------------------------------------------------------------------- + +# If the GENERATE_HTML tag is set to YES (the default) Doxygen will +# generate HTML output. + +GENERATE_HTML = YES + +# The HTML_OUTPUT tag is used to specify where the HTML docs will be put. +# If a relative path is entered the value of OUTPUT_DIRECTORY will be +# put in front of it. If left blank `html' will be used as the default path. + +HTML_OUTPUT = html + +# The HTML_FILE_EXTENSION tag can be used to specify the file extension for +# each generated HTML page (for example: .htm,.php,.asp). If it is left blank +# doxygen will generate files with .html extension. + +HTML_FILE_EXTENSION = .html + +# The HTML_HEADER tag can be used to specify a personal HTML header for +# each generated HTML page. If it is left blank doxygen will generate a +# standard header. + +HTML_HEADER = $(WM_PROJECT_DIR)/doc/doxygen/_Header + +# The HTML_FOOTER tag can be used to specify a personal HTML footer for +# each generated HTML page. If it is left blank doxygen will generate a +# standard footer. + +HTML_FOOTER = $(WM_PROJECT_DIR)/doc/doxygen/_Footer + +# The HTML_STYLESHEET tag can be used to specify a user-defined cascading +# style sheet that is used by each HTML page. It can be used to +# fine-tune the look of the HTML output. If the tag is left blank doxygen +# will generate a default style sheet. Note that doxygen will try to copy +# the style sheet file to the HTML output directory, so don't put your own +# stylesheet in the HTML output directory as well, or it will be erased! + +HTML_STYLESHEET = + +# If the HTML_ALIGN_MEMBERS tag is set to YES, the members of classes, +# files or namespaces will be aligned in HTML using tables. If set to +# NO a bullet list will be used. + +HTML_ALIGN_MEMBERS = YES + +# If the GENERATE_HTMLHELP tag is set to YES, additional index files +# will be generated that can be used as input for tools like the +# Microsoft HTML help workshop to generate a compressed HTML help file (.chm) +# of the generated HTML documentation. + +GENERATE_HTMLHELP = NO + +# If the HTML_DYNAMIC_SECTIONS tag is set to YES then the generated HTML +# documentation will contain sections that can be hidden and shown after the +# page has loaded. For this to work a browser that supports +# JavaScript and DHTML is required (for instance Mozilla 1.0+, Firefox +# Netscape 6.0+, Internet explorer 5.0+, Konqueror, or Safari). + +HTML_DYNAMIC_SECTIONS = NO + +# If the GENERATE_HTMLHELP tag is set to YES, the CHM_FILE tag can +# be used to specify the file name of the resulting .chm file. You +# can add a path in front of the file if the result should not be +# written to the html output directory. + +CHM_FILE = + +# If the GENERATE_HTMLHELP tag is set to YES, the HHC_LOCATION tag can +# be used to specify the location (absolute path including file name) of +# the HTML help compiler (hhc.exe). If non-empty doxygen will try to run +# the HTML help compiler on the generated index.hhp. + +HHC_LOCATION = + +# If the GENERATE_HTMLHELP tag is set to YES, the GENERATE_CHI flag +# controls if a separate .chi index file is generated (YES) or that +# it should be included in the master .chm file (NO). + +GENERATE_CHI = NO + +# If the GENERATE_HTMLHELP tag is set to YES, the BINARY_TOC flag +# controls whether a binary table of contents is generated (YES) or a +# normal table of contents (NO) in the .chm file. + +BINARY_TOC = NO + +# The TOC_EXPAND flag can be set to YES to add extra items for group members +# to the contents of the HTML help documentation and to the tree view. + +TOC_EXPAND = NO + +# The DISABLE_INDEX tag can be used to turn on/off the condensed index at +# top of each HTML page. The value NO (the default) enables the index and +# the value YES disables it. + +DISABLE_INDEX = NO + +# This tag can be used to set the number of enum values (range [1..20]) +# that doxygen will group on one line in the generated HTML documentation. + +ENUM_VALUES_PER_LINE = 4 + +# If the GENERATE_TREEVIEW tag is set to YES, a side panel will be +# generated containing a tree-like index structure (just like the one that +# is generated for HTML Help). For this to work a browser that supports +# JavaScript, DHTML, CSS and frames is required (for instance Mozilla 1.0+, +# Netscape 6.0+, Internet explorer 5.0+, or Konqueror). Windows users are +# probably better off using the HTML help feature. + +GENERATE_TREEVIEW = NO + +# If the treeview is enabled (see GENERATE_TREEVIEW) then this tag can be +# used to set the initial width (in pixels) of the frame in which the tree +# is shown. + +TREEVIEW_WIDTH = 250 + +#--------------------------------------------------------------------------- +# configuration options related to the LaTeX output +#--------------------------------------------------------------------------- + +# Path for OpenCFD LaTeX macros + +@INCLUDE_PATH = $(WM_PROJECT_DIR)/doc/Doxygen/Macros/ + +# If the GENERATE_LATEX tag is set to YES (the default) Doxygen will +# generate Latex output. + +GENERATE_LATEX = NO + +# The LATEX_OUTPUT tag is used to specify where the LaTeX docs will be put. +# If a relative path is entered the value of OUTPUT_DIRECTORY will be +# put in front of it. If left blank `latex' will be used as the default path. + +LATEX_OUTPUT = latex + +# The LATEX_CMD_NAME tag can be used to specify the LaTeX command name to be +# invoked. If left blank `latex' will be used as the default command name. + +LATEX_CMD_NAME = latex + +# The MAKEINDEX_CMD_NAME tag can be used to specify the command name to +# generate index for LaTeX. If left blank `makeindex' will be used as the +# default command name. + +MAKEINDEX_CMD_NAME = makeindex + +# If the COMPACT_LATEX tag is set to YES Doxygen generates more compact +# LaTeX documents. This may be useful for small projects and may help to +# save some trees in general. + +COMPACT_LATEX = NO + +# The PAPER_TYPE tag can be used to set the paper type that is used +# by the printer. Possible values are: a4, a4wide, letter, legal and +# executive. If left blank a4wide will be used. + +PAPER_TYPE = a4wide + +# The EXTRA_PACKAGES tag can be to specify one or more names of LaTeX +# packages that should be included in the LaTeX output. + +EXTRA_PACKAGES = $(WM_PROJECT_DIR)/doc/Doxygen/Macros/tensorOperator + +# The LATEX_HEADER tag can be used to specify a personal LaTeX header for +# the generated latex document. The header should contain everything until +# the first chapter. If it is left blank doxygen will generate a +# standard header. Notice: only use this tag if you know what you are doing! + +LATEX_HEADER = + +# If the PDF_HYPERLINKS tag is set to YES, the LaTeX that is generated +# is prepared for conversion to pdf (using ps2pdf). The pdf file will +# contain links (just like the HTML output) instead of page references +# This makes the output suitable for online browsing using a pdf viewer. + +PDF_HYPERLINKS = YES + +# If the USE_PDFLATEX tag is set to YES, pdflatex will be used instead of +# plain latex in the generated Makefile. Set this option to YES to get a +# higher quality PDF documentation. + +USE_PDFLATEX = YES + +# If the LATEX_BATCHMODE tag is set to YES, doxygen will add the \\batchmode. +# command to the generated LaTeX files. This will instruct LaTeX to keep +# running if errors occur, instead of asking the user for help. +# This option is also used when generating formulas in HTML. + +LATEX_BATCHMODE = NO + +# If LATEX_HIDE_INDICES is set to YES then doxygen will not +# include the index chapters (such as File Index, Compound Index, etc.) +# in the output. + +LATEX_HIDE_INDICES = NO + +#--------------------------------------------------------------------------- +# configuration options related to the RTF output +#--------------------------------------------------------------------------- + +# If the GENERATE_RTF tag is set to YES Doxygen will generate RTF output +# The RTF output is optimized for Word 97 and may not look very pretty with +# other RTF readers or editors. + +GENERATE_RTF = NO + +# The RTF_OUTPUT tag is used to specify where the RTF docs will be put. +# If a relative path is entered the value of OUTPUT_DIRECTORY will be +# put in front of it. If left blank `rtf' will be used as the default path. + +RTF_OUTPUT = rtf + +# If the COMPACT_RTF tag is set to YES Doxygen generates more compact +# RTF documents. This may be useful for small projects and may help to +# save some trees in general. + +COMPACT_RTF = NO + +# If the RTF_HYPERLINKS tag is set to YES, the RTF that is generated +# will contain hyperlink fields. The RTF file will +# contain links (just like the HTML output) instead of page references. +# This makes the output suitable for online browsing using WORD or other +# programs which support those fields. +# Note: wordpad (write) and others do not support links. + +RTF_HYPERLINKS = NO + +# Load stylesheet definitions from file. Syntax is similar to doxygen's +# config file, i.e. a series of assignments. You only have to provide +# replacements, missing definitions are set to their default value. + +RTF_STYLESHEET_FILE = + +# Set optional variables used in the generation of an rtf document. +# Syntax is similar to doxygen's config file. + +RTF_EXTENSIONS_FILE = + +#--------------------------------------------------------------------------- +# configuration options related to the man page output +#--------------------------------------------------------------------------- + +# If the GENERATE_MAN tag is set to YES (the default) Doxygen will +# generate man pages + +GENERATE_MAN = NO + +# The MAN_OUTPUT tag is used to specify where the man pages will be put. +# If a relative path is entered the value of OUTPUT_DIRECTORY will be +# put in front of it. If left blank `man' will be used as the default path. + +MAN_OUTPUT = man + +# The MAN_EXTENSION tag determines the extension that is added to +# the generated man pages (default is the subroutine's section .3) + +MAN_EXTENSION = .3 + +# If the MAN_LINKS tag is set to YES and Doxygen generates man output, +# then it will generate one additional man file for each entity +# documented in the real man page(s). These additional files +# only source the real man page, but without them the man command +# would be unable to find the correct page. The default is NO. + +MAN_LINKS = NO + +#--------------------------------------------------------------------------- +# configuration options related to the XML output +#--------------------------------------------------------------------------- + +# If the GENERATE_XML tag is set to YES Doxygen will +# generate an XML file that captures the structure of +# the code including all documentation. + +GENERATE_XML = NO + +# The XML_OUTPUT tag is used to specify where the XML pages will be put. +# If a relative path is entered the value of OUTPUT_DIRECTORY will be +# put in front of it. If left blank `xml' will be used as the default path. + +XML_OUTPUT = xml + +# The XML_SCHEMA tag can be used to specify an XML schema, +# which can be used by a validating XML parser to check the +# syntax of the XML files. + +XML_SCHEMA = + +# The XML_DTD tag can be used to specify an XML DTD, +# which can be used by a validating XML parser to check the +# syntax of the XML files. + +XML_DTD = + +# If the XML_PROGRAMLISTING tag is set to YES Doxygen will +# dump the program listings (including syntax highlighting +# and cross-referencing information) to the XML output. Note that +# enabling this will significantly increase the size of the XML output. + +XML_PROGRAMLISTING = YES + +#--------------------------------------------------------------------------- +# configuration options for the AutoGen Definitions output +#--------------------------------------------------------------------------- + +# If the GENERATE_AUTOGEN_DEF tag is set to YES Doxygen will +# generate an AutoGen Definitions (see autogen.sf.net) file +# that captures the structure of the code including all +# documentation. Note that this feature is still experimental +# and incomplete at the moment. + +GENERATE_AUTOGEN_DEF = NO + +#--------------------------------------------------------------------------- +# configuration options related to the Perl module output +#--------------------------------------------------------------------------- + +# If the GENERATE_PERLMOD tag is set to YES Doxygen will +# generate a Perl module file that captures the structure of +# the code including all documentation. Note that this +# feature is still experimental and incomplete at the +# moment. + +GENERATE_PERLMOD = NO + +# If the PERLMOD_LATEX tag is set to YES Doxygen will generate +# the necessary Makefile rules, Perl scripts and LaTeX code to be able +# to generate PDF and DVI output from the Perl module output. + +PERLMOD_LATEX = NO + +# If the PERLMOD_PRETTY tag is set to YES the Perl module output will be +# nicely formatted so it can be parsed by a human reader. This is useful +# if you want to understand what is going on. On the other hand, if this +# tag is set to NO the size of the Perl module output will be much smaller +# and Perl will parse it just the same. + +PERLMOD_PRETTY = YES + +# The names of the make variables in the generated doxyrules.make file +# are prefixed with the string contained in PERLMOD_MAKEVAR_PREFIX. +# This is useful so different doxyrules.make files included by the same +# Makefile don't overwrite each other's variables. + +PERLMOD_MAKEVAR_PREFIX = + +#--------------------------------------------------------------------------- +# Configuration options related to the preprocessor +#--------------------------------------------------------------------------- + +# If the ENABLE_PREPROCESSING tag is set to YES (the default) Doxygen will +# evaluate all C-preprocessor directives found in the sources and include +# files. + +ENABLE_PREPROCESSING = YES + +# If the MACRO_EXPANSION tag is set to YES Doxygen will expand all macro +# names in the source code. If set to NO (the default) only conditional +# compilation will be performed. Macro expansion can be done in a controlled +# way by setting EXPAND_ONLY_PREDEF to YES. + +MACRO_EXPANSION = YES + +# If the EXPAND_ONLY_PREDEF and MACRO_EXPANSION tags are both set to YES +# then the macro expansion is limited to the macros specified with the +# PREDEFINED and EXPAND_AS_DEFINED tags. + +EXPAND_ONLY_PREDEF = NO + +# If the SEARCH_INCLUDES tag is set to YES (the default) the includes files +# in the INCLUDE_PATH (see below) will be search if a #include is found. + +SEARCH_INCLUDES = NO + +# The INCLUDE_PATH tag can be used to specify one or more directories that +# contain include files that are not input files but should be processed by +# the preprocessor. + +INCLUDE_PATH = + +# You can use the INCLUDE_FILE_PATTERNS tag to specify one or more wildcard +# patterns (like *.h and *.hpp) to filter out the header-files in the +# directories. If left blank, the patterns specified with FILE_PATTERNS will +# be used. + +INCLUDE_FILE_PATTERNS = + +# The PREDEFINED tag can be used to specify one or more macro names that +# are defined before the preprocessor is started (similar to the -D option of +# gcc). The argument of the tag is a list of macros of the form: name +# or name=definition (no spaces). If the definition and the = are +# omitted =1 is assumed. To prevent a macro definition from being +# undefined via #undef or recursively expanded use the := operator +# instead of the = operator. + +PREDEFINED = + +# If the MACRO_EXPANSION and EXPAND_ONLY_PREDEF tags are set to YES then +# this tag can be used to specify a list of macro names that should be expanded. +# The macro definition that is found in the sources will be used. +# Use the PREDEFINED tag if you want to use a different macro definition. + +EXPAND_AS_DEFINED = + +# If the SKIP_FUNCTION_MACROS tag is set to YES (the default) then +# doxygen's preprocessor will remove all function-like macros that are alone +# on a line, have an all uppercase name, and do not end with a semicolon. Such +# function macros are typically used for boiler-plate code, and will confuse +# the parser if not removed. + +SKIP_FUNCTION_MACROS = YES + +#--------------------------------------------------------------------------- +# Configuration::additions related to external references +#--------------------------------------------------------------------------- + +# The TAGFILES option can be used to specify one or more tagfiles. +# Optionally an initial location of the external documentation +# can be added for each tagfile. The format of a tag file without +# this location is as follows: +# TAGFILES = file1 file2 ... +# Adding location for the tag files is done as follows: +# TAGFILES = file1=loc1 "file2 = loc2" ... +# where "loc1" and "loc2" can be relative or absolute paths or +# URLs. If a location is present for each tag, the installdox tool +# does not have to be run to correct the links. +# Note that each tag file must have a unique name +# (where the name does NOT include the path) +# If a tag file is not located in the directory in which doxygen +# is run, you must also specify the path to the tagfile here. + +TAGFILES = + +# When a file name is specified after GENERATE_TAGFILE, doxygen will create +# a tag file that is based on the input files it reads. + +GENERATE_TAGFILE = + +# If the ALLEXTERNALS tag is set to YES all external classes will be listed +# in the class index. If set to NO only the inherited external classes +# will be listed. + +ALLEXTERNALS = YES + +# If the EXTERNAL_GROUPS tag is set to YES all external groups will be listed +# in the modules index. If set to NO, only the current project's groups will +# be listed. + +EXTERNAL_GROUPS = YES + +# The PERL_PATH should be the absolute path and name of the perl script +# interpreter (i.e. the result of `which perl'). + +PERL_PATH = /usr/bin/perl + +#--------------------------------------------------------------------------- +# Configuration options related to the dot tool +#--------------------------------------------------------------------------- + +# If the CLASS_DIAGRAMS tag is set to YES (the default) Doxygen will +# generate a inheritance diagram (in HTML, RTF and LaTeX) for classes with base +# or super classes. Setting the tag to NO turns the diagrams off. Note that +# this option is superseded by the HAVE_DOT option below. This is only a +# fallback. It is recommended to install and use dot, since it yields more +# powerful graphs. + +CLASS_DIAGRAMS = YES + +# You can define message sequence charts within doxygen comments using the \msc +# command. Doxygen will then run the mscgen tool (see http://www.mcternan.me.uk/mscgen/) to +# produce the chart and insert it in the documentation. The MSCGEN_PATH tag allows you to +# specify the directory where the mscgen tool resides. If left empty the tool is assumed to +# be found in the default search path. + +MSCGEN_PATH = + +# If set to YES, the inheritance and collaboration graphs will hide +# inheritance and usage relations if the target is undocumented +# or is not a class. + +HIDE_UNDOC_RELATIONS = YES + +# If you set the HAVE_DOT tag to YES then doxygen will assume the dot tool is +# available from the path. This tool is part of Graphviz, a graph visualization +# toolkit from AT&T and Lucent Bell Labs. The other options in this section +# have no effect if this option is set to NO (the default) + +HAVE_DOT = YES + +# If the CLASS_GRAPH and HAVE_DOT tags are set to YES then doxygen +# will generate a graph for each documented class showing the direct and +# indirect inheritance relations. Setting this tag to YES will force the +# the CLASS_DIAGRAMS tag to NO. + +CLASS_GRAPH = YES + +# If the COLLABORATION_GRAPH and HAVE_DOT tags are set to YES then doxygen +# will generate a graph for each documented class showing the direct and +# indirect implementation dependencies (inheritance, containment, and +# class references variables) of the class with other documented classes. + +COLLABORATION_GRAPH = YES + +# If the GROUP_GRAPHS and HAVE_DOT tags are set to YES then doxygen +# will generate a graph for groups, showing the direct groups dependencies + +GROUP_GRAPHS = YES + +# If the UML_LOOK tag is set to YES doxygen will generate inheritance and +# collaboration diagrams in a style similar to the OMG's Unified Modeling +# Language. + +UML_LOOK = NO + +# If set to YES, the inheritance and collaboration graphs will show the +# relations between templates and their instances. + +TEMPLATE_RELATIONS = YES + +# If the ENABLE_PREPROCESSING, SEARCH_INCLUDES, INCLUDE_GRAPH, and HAVE_DOT +# tags are set to YES then doxygen will generate a graph for each documented +# file showing the direct and indirect include dependencies of the file with +# other documented files. + +INCLUDE_GRAPH = YES + +# If the ENABLE_PREPROCESSING, SEARCH_INCLUDES, INCLUDED_BY_GRAPH, and +# HAVE_DOT tags are set to YES then doxygen will generate a graph for each +# documented header file showing the documented files that directly or +# indirectly include this file. + +INCLUDED_BY_GRAPH = YES + +# If the CALL_GRAPH, SOURCE_BROWSER and HAVE_DOT tags are set to YES then doxygen will +# generate a call dependency graph for every global function or class method. +# Note that enabling this option will significantly increase the time of a run. +# So in most cases it will be better to enable call graphs for selected +# functions only using the \callgraph command. + +CALL_GRAPH = YES + +# If the CALLER_GRAPH, SOURCE_BROWSER and HAVE_DOT tags are set to YES then doxygen will +# generate a caller dependency graph for every global function or class method. +# Note that enabling this option will significantly increase the time of a run. +# So in most cases it will be better to enable caller graphs for selected +# functions only using the \callergraph command. + +CALLER_GRAPH = YES + +# If the GRAPHICAL_HIERARCHY and HAVE_DOT tags are set to YES then doxygen +# will graphical hierarchy of all classes instead of a textual one. + +GRAPHICAL_HIERARCHY = YES + +# If the DIRECTORY_GRAPH, SHOW_DIRECTORIES and HAVE_DOT tags are set to YES +# then doxygen will show the dependencies a directory has on other directories +# in a graphical way. The dependency relations are determined by the #include +# relations between the files in the directories. + +DIRECTORY_GRAPH = YES + +# The DOT_IMAGE_FORMAT tag can be used to set the image format of the images +# generated by dot. Possible values are png, jpg, or gif +# If left blank png will be used. + +DOT_IMAGE_FORMAT = png + +# The tag DOT_PATH can be used to specify the path where the dot tool can be +# found. If left blank, it is assumed the dot tool can be found in the path. + +DOT_PATH = + +# The DOTFILE_DIRS tag can be used to specify one or more directories that +# contain dot files that are included in the documentation (see the +# \dotfile command). + +DOTFILE_DIRS = + +# The MAX_DOT_GRAPH_MAX_NODES tag can be used to set the maximum number of +# nodes that will be shown in the graph. If the number of nodes in a graph +# becomes larger than this value, doxygen will truncate the graph, which is +# visualized by representing a node as a red box. Note that if the number +# of direct children of the root node in a graph is already larger than +# MAX_DOT_GRAPH_NOTES then the graph will not be shown at all. Also note +# that the size of a graph can be further restricted by MAX_DOT_GRAPH_DEPTH. + +DOT_GRAPH_MAX_NODES = 50 + +# The MAX_DOT_GRAPH_DEPTH tag can be used to set the maximum depth of the +# graphs generated by dot. A depth value of 3 means that only nodes reachable +# from the root by following a path via at most 3 edges will be shown. Nodes +# that lay further from the root node will be omitted. Note that setting this +# option to 1 or 2 may greatly reduce the computation time needed for large +# code bases. Also note that the size of a graph can be further restricted by +# DOT_GRAPH_MAX_NODES. Using a depth of 0 means no depth restriction. + +MAX_DOT_GRAPH_DEPTH = 3 + +# Set the DOT_TRANSPARENT tag to YES to generate images with a transparent +# background. This is disabled by default, which results in a white background. +# Warning: Depending on the platform used, enabling this option may lead to +# badly anti-aliased labels on the edges of a graph (i.e. they become hard to +# read). + +DOT_TRANSPARENT = YES + +# Set the DOT_MULTI_TARGETS tag to YES allow dot to generate multiple output +# files in one run (i.e. multiple -o and -T options on the command line). This +# makes dot run faster, but since only newer versions of dot (>1.8.10) +# support this, this feature is disabled by default. + +DOT_MULTI_TARGETS = YES + +# If the GENERATE_LEGEND tag is set to YES (the default) Doxygen will +# generate a legend page explaining the meaning of the various boxes and +# arrows in the dot generated graphs. + +GENERATE_LEGEND = YES + +# If the DOT_CLEANUP tag is set to YES (the default) Doxygen will +# remove the intermediate dot files that are used to generate +# the various graphs. + +DOT_CLEANUP = YES + +#--------------------------------------------------------------------------- +# Configuration::additions related to the search engine +#--------------------------------------------------------------------------- + +# The SEARCHENGINE tag specifies whether or not a search engine should be +# used. If set to NO the values of all tags below this one will be ignored. + +SEARCHENGINE = YES diff --git a/doc/doxygen/OpenFOAMdocIcon.png b/doc/doxygen/OpenFOAMdocIcon.png new file mode 100644 index 0000000000000000000000000000000000000000..705a314103c5da2d696e3ab829aac944555f8925 GIT binary patch literal 1240 zcmV;}1Sk86P)Px#24YJ`L;(K){{a7>y{D4^000SaNLh0L01FcU01FcV0GgZ_00007bV*G`2igP= z4Fwg-;Glv400dY`L_t(o!{wJZENz;5lL+SU`A)^%-x{&61l|~Bk3UJqYjYe03N`op+(GnWKJbWVaD_l zoVCD-WU_tJyX$>?zZvwK9vo;$1mgrrsLE(W6-A^M7gQC=lONq{tVP$hY&exXdAuEC z>WRm8pN#;(ih8?mNy5D+qDw$T48e)E&dwlECxROk@qP%0ytea*n?novq`%nt)tKao zU#qd+Yu(O!000QNwq;#XIv3G$BO-^6oo?TIpsiTI`o35a=#jUn7a zJof3iQ>M4=im7%3%05-a^Q3TcZDmIgD1waa3W}ro`nC@?jt8QkTY5XcAb?C<+*61U z1j^Xz!DVG7;iOXqWa-f8j+^rV5CrBK)I|_kbfI~3k(~Wf&^QRH$Za=Ngn=$FXi&K^ z=hU0F@-8%Z4510-V9o%VrrI;WM&K`iVdVwh$l*mPRRy&ZD&~E=Ag2_RR14@Kkk{E7 z)7&EfG}W6epgRG4--NEac8L0(NsEXT{AlI;T~&R0pVssoxGF?e5|16dn3?JOrgG0` zwS?-cA_Wzt;VxB0l<}g4k5@&%zF6k?{T-9(&%n3Ir!$fYWkW)P$BiD+9s~{%DGl(O z&Oi864Y-A%%ZSJJ{%Zg)-dBE7M3*Yy0+@7TMc7)?p{l6LtYP!^*Y!v{?Rpi}V<78t zA*#vEsN+phJ)|hsNMY^uWhtj9C{9iDh`IXF5r(9G7@&;J>Km+B)&fVU8F zBBEoiE)JCx`<+=W9~+2`a&NQ+)>IO&er$MfBJH-L%Reoqbx{~2iF+`>7P zc6(IahR+wufa}TA+0Yc^R^Rsd(O`a{Z@gxzgPYr3wFUFS?fdZnQP>w%hV z!CDDC1bi}(4-UkB3a}YC2Bd&a;4rZ5asl}NwZ8$LHOWL#m`Er90000Px#24YJ`L;(K){{a7>y{D4^000SaNLh0L01FcU01FcV0GgZ_00007bV*G`2igP= z4FU&t7)K2N00b{dL_t(o!|j(#Y?W0Mg};6N|G$^MXbUYbk<^Blf{%((Fd;?-qb)>( zk%2}d3Z#j^1i?GPM}o+$A(nt50d!Dfj0r(+Ei;3n1Bsd-qC)V20xAkcDk<&lf0ly+ zu{_GXl}b$9vy-z=*2+F>uYC?&=CB^CnJbHs4>9|9&@-t&!ZV9|8p=>t6L14kf5Hm0 zB(M#b9Rl3H=76F zq_wr}jkh*LL{TH?iyj(S(h`p|tVObFOhTBQr3Fb?p87a_CJ4~Frj5s2j~;Hrxmq%* zU1ur)&`=xfS=!>?Hq%ltGe>;nSVu=3%bVd#io$P`iSXDt!p$KP5nUhc_;hsZkzc9^ z!k15j_aFd}@W+;STKQZ|gPob}KXjsP_r7Dr20;{Q^Q`Grs{`khPZdTCGrzuRYt`5L zc5NjHenLEZ;Wh-8yca)i<~9I$ulA;QzfZG6Z7QoDvE09tccallH z|Mx9-c5Xvmuo1CG5@BcsQ)(*P<5(CrvNJBO&lfwmZ{-A_9<=3b@bePru8V&HGvZi` ztr|FJP+79oOMopKQosGidl^vp6rx_i3z5HM@Q6ucHVxpnXATNegW7{GO5+QVf0EMT^DYb^ri%Ya7s;Om-mV> zL$W6o7mPYb_4lp~Mb`pE1@O?tuE||2AqrX-c3Ub8DoqR=S6$i`#~w2)kBQRfUVL^8 z_(h=QWKz5TF@fjr9(>eH%LMosCSPBX3g~z3+kCxUx>OIF?|EJHdn83Ih%@Q*O>GxKuJ-Qs2)|^X=WZH05>Nrso4w~ z4z`#~>ck}{u(CG!JH|SJdEu@dQyvUR2HoZa6QiKwR56KuE + + + + + diff --git a/doc/doxygen/_Header b/doc/doxygen/_Header new file mode 100644 index 0000000000..a11df43510 --- /dev/null +++ b/doc/doxygen/_Header @@ -0,0 +1,68 @@ + + + + + OpenFOAM® programmer's C++ documentation + + + + + + + + +
+
+ +
+ + +
+
+ +
+ diff --git a/doc/doxygen/css/doxyLayout.css b/doc/doxygen/css/doxyLayout.css new file mode 100644 index 0000000000..4c00546d7d --- /dev/null +++ b/doc/doxygen/css/doxyLayout.css @@ -0,0 +1,171 @@ +/* import doxygen-specific adjustments */ +@import url(doxygen.css); +@import url(doxyTabs.css); + + +*{padding:0; margin:0;} + body { font-size:62.5%; background-color: #ffffff; font-family:arial,sans-serif;} /*Font-size: 1.0em = 10px when browser default size is 16px*/ + + p:after {content:"."; display:block; height:0; /*clear:both*/; visibility:hidden;} + +.clear-contentunit {clear:both; width:100%; height:0.1em; border:none; background:rgb(210,210,210); color:rgb(210,210,210);} + + + +/*page-container **************************************/ +.page-container {width:960px; margin:0px auto; margin-top:10px; margin-bottom:10px; font-size:1.0em;} +.page-container:after, .header:after, .header-bottom:after, .header-breadcrumbs:after, .main:after, .main-navigation:after, .main-content:after, .main-content div:after, .main-subcontent:after {content:"."; display:block; height:0; clear:both; visibility:hidden;} + +/*********************header***************************************************/ +.header {width:960px;} +.header-top {width:954px; height:80px; border-top:solid 3px rgb(175,175,175); border-left:solid 3px rgb(175,175,175); border-right:solid 3px rgb(175,175,175); margin-top:10px; background:#ebebeb; background:#d5e1f0; overflow:visible !important /*Firefox*/; overflow:hidden /*IE6*/;} +.header-bottom {width:954px; border-bottom:solid 3px rgb(175,175,175); border-left:solid 3px rgb(175,175,175); border-right:solid 3px rgb(175,175,175); border-top:solid 1px rgb(175,175,175);background:rgb(225,225,225);} +.header .round-border-topleft {width:25px; height:25px; position:absolute; z-index:100; background:url(img/bg_head_corner_topleft_25px.gif) no-repeat; margin-top:-3px; margin-left:-3px;} +.header .round-border-topright {width:25px; height:25px; position:absolute; z-index:100; background:url(img/bg_head_corner_topright_25px.gif) no-repeat; margin-top:-3px; margin-left:932px;} + +/********************sitelogo *************************************************/ +.sitelogo {width:924px; height:40px; position:absolute; z-index:1; margin:20px 0 0 15px; background:url(img/OpenCFDlogo.png) no-repeat;} + +/**************************sitename ************************************************/ +.sitename {width:400px; height:45px; position:absolute; z-index:1; margin:25px 0 0 320px; overflow:visible !important /*Firefox*/; overflow:hidden /*IE6*/;} +.sitename h1 {font-weight:normal; font-size:240%;} +.sitename h2 {margin:-2px 0 0 0; color:rgb(125,125,125); font-weight:normal; font-size:120%;} +.sitename a{text-decoration:none; color:rgb(125,125,125);color:#333;} +.sitename a:hover {text-decoration:none; color:rgb(125,125,125);} + +/*****************header-breadcrumbs ***************************************/ +.header-breadcrumbs ul {float:left; width:560px; list-style:none; padding:7px 0 0 3px; font-family:verdana,arial,sans-serif;} +.header-breadcrumbs {clear:both; width:954px; padding:1.0em 0 1.5em 0; border-left:solid 3px rgb(175,175,175); border-right:solid 3px rgb(175,175,175);} + +.header-breadcrumbs ul li {display:inline; padding:0 0 0 5px; color:#323232; font-size:100%;} +.header-breadcrumbs ul a {color:rgb(70,122,167); text-decoration:none;} +.header-breadcrumbs ul a:hover {color:rgb(42,90,138); color:#333; text-decoration:underline;} +.header-breadcrumbs .searchform {float:right; width:285px; padding:0 17px 0px 0px !important /*Non-IE6*/; padding:0 12px 0px 0px /*IE6*/;} +.header-breadcrumbs .searchform form fieldset {float:right; border:none;} +.header-breadcrumbs .searchform input.field {width:10.0em; padding:0.2em 0 0.2em 0; border:1px solid rgb(200,200,200); font-family:verdana,arial,sans-serif; font-size:120%; } +.header-breadcrumbs .searchform input.button {width:3.0em; padding:1px !important /*Non-IE6*/; padding:0 /*IE6*/; background:rgb(230,230,230); border:solid 1px rgb(150,150,150); text-align:center; font-family:verdana,arial,sans-serif; color:rgb(150,150,150); font-size:120%;} +.header-breadcrumbs .searchform input.button:hover {cursor:pointer; border:solid 1px rgb(80,80,80); background:rgb(220,220,220); color:rgb(80,80,80);} + + + + +/************** NAV STUFF *****************************/ +.nav0 {width:350px; position:absolute; z-index:2; margin:25px 0 0 0; margin-left:610px !important /*Non-IE6*/; margin-left:613px /*IE6*/;} +.nav0 ul {float:right; padding:0 20px 0 0;} +.nav0 li {display:inline; list-style:none;} +.nav0 li a {padding:0 0 0 3px;} +.nav0 a:hover {text-decoration:none;} +.nav0 a img {height:20px; border:none;} +.nav1 {width:350px; position:absolute; z-index:3; margin:55px 0 0 610px;} +.nav1 ul {float:right; padding:0 15px 0 0; font-weight:normal;} +.nav1 li {display:inline; list-style:none;} +.nav1 li a {display:block; float:left; padding:2px 5px 2px 5px; color:rgb(125,125,125); text-decoration:none; font-size:110%;} +.nav1 a:hover {text-decoration:none; color:rgb(50,50,50);} +.nav1_ln { float:right; height:2.1em; width:300px;} +.nav1_ln ul {float:right; padding:7px 15px 0 0; font-weight:normal;} +.nav1_ln li {display:inline; list-style:none;} +.nav1_ln li a {display:block; float:left; padding:2px 5px 2px 5px; color:rgb(125,125,125); text-decoration:none; font-size:110%;} +.nav1_ln a:hover {text-decoration:none; color:rgb(50,50,50);} +.nav2 {white-space:nowrap /*IE hack*/; float:left; width:954px; background:rgb(225,225,225); color:rgb(100,100,100); font-size:130%; height:2.1em;;} /*Color navigation bar normal mode*/ +.nav2 ul {list-style-type:none;} +.nav2 ul li {float:left; z-index:auto !important /*Non-IE6*/; z-index:1000 /*IE6*/; border-right:solid 1px rgb(175,175,175);} +.nav2 ul li a {float:none !important /*Non-IE6*/; float:left /*IE-6*/; display:block; height:2.1em; line-height:2.1em; padding:0 16px 0 16px; text-decoration:none; font-weight:normal; color: rgb(100,100,100);color:#333;} +.nav2 ul li ul {display:none; border:none;} +.nav2 ul li:hover {position:relative;} /*Sylvain IE hack*/ +.nav2 ul li:hover a {background-color:rgb(215,215,215); text-decoration:none;} /*Color main cells hovering mode*/ +.nav2 ul li:hover ul {display:block; width:12.0em; position:absolute; z-index:999; top:2.0em; margin-top:0.1em; left:0;} +.nav2 ul li:hover ul li a {white-space:normal; display:block; width:12.0em; height:auto; line-height:1.3em; margin-left:-1px; padding:4px 16px 4px 16px; border-left:solid 1px rgb(175,175,175); border-bottom: solid 1px rgb(175,175,175); background-color:rgb(240,240,240); font-weight:normal; color:rgb(100,100,100);color:#333;} /*Color subcells normal mode*/ +.nav2 ul li:hover ul li a:hover {background-color:rgb(215,215,215); text-decoration:none;} /*Color subcells hovering mode*/ +.nav2 table {position:absolute; top:0; left:-1px; border-collapse:collapse;} +.nav2 ul li a:hover {position:relative /*Sylvain IE hack*/; z-index:1000 /*Sylvain IE hack*/; background-color:rgb(215,215,215); text-decoration:none;} /*Color main cells hovering mode*/ +.nav2 ul li a:hover ul {display:block; width:12.0em; position:absolute; z-index:999; top:2.1em; t\op:2.0em; left:0; marg\in-top:0.1em;} +.nav2 ul li a:hover ul li a {white-space:normal; display:block; w\idth:12.0em; height:1px; line-height:1.3em; padding:4px 16px 4px 16px; border-left:solid 1px rgb(175,175,175); border-bottom: solid 1px rgb(175,175,175); background-color:rgb(240,240,240); font-weight:normal; color:rgb(50,50,50);} /*Color subcells normal mode*/ +.nav2 ul li a:hover ul li a:hover {background-color:rgb(215,215,215); text-decoration:none;} /*Color subcells hovering mode*/ + +/*nav3-grid ****************************************/ +.nav3-grid {width:199px; border-bottom:solid 1px rgb(200,200,200);} +.nav3-grid dt a, .nav3-grid dt a:visited {display:block; min-height:2.0em /*Non-IE6*/; height:auto !important; height:2.0em /*IE6*/; line-height:2.0em; padding:0px 10px 0px 20px; border-top: solid 1px rgb(200,200,200); text-decoration:none; color:rgb(70,122,167); font-weight:bold; font-size:100%;} +.nav3-grid dd a, .nav3-grid dd a:visited {display:block; min-height:1.7em /*Non-IE6*/; height:auto !important; height:1.7em /*IE6*/; line-height:1.7em; padding:0px 10px 0px 40px; border:none; font-weight:normal; text-decoration:none; color:rgb(70,122,167); font-size:100%;} +.current, .nav3-grid dt a:hover, .nav3-grid dd a:hover {background-color:rgb(225,225,225); color:rgb(42,90,138); text-decoration:none;} + +/*nav3-nobullet *********************/ +nav3-bullet {width:170px; margin:10px 0 0 20px;} +.nav3-bullet dt a, .nav3-bullet dt a:visited {line-height:2.0em; padding:0 0 0 10px; background:url(img/bg_bullet_full_1.gif) no-repeat 0px 50%; text-decoration:none; color:rgb(70,122,167); font-weight:bold; font-size:120%;} +.nav3-bullet dd a, .nav3-bullet dd a:visited {line-height:1.7em; margin:0 0 0 15px; padding:0 0 0 10px; background:url(img/bg_bullet_half_1.gif) no-repeat 0px 50%; text-decoration:none; color:rgb(70,122,167); font-weight:normal; font-size:120%;} +.nav3-bullet dt a:hover {background:url(img/bg_bullet_full_2.gif) no-repeat 0px 50%; text-decoration:underline; color:rgb(42,90,138);} +.nav3-bullet dd a:hover {background:url(img/bg_bullet_half_2.gif) no-repeat 0px 50%; text-decoration:underline; color:rgb(42,90,138);} +.nav3-nobullet {width:170px; margin:10px 0 0 20px;} +.nav3-nobullet dt a, .nav3-nobullet dt a:visited {line-height:2.0em; text-decoration:none; color:rgb(70,122,167); font-weight:bold; font-size:120%;} +.nav3-nobullet dd a, .nav3-nobullet dd a:visited {line-height:1.7em; margin:0 0 0 15px; text-decoration:none; color:rgb(70,122,167); font-weight:normal; font-size:120%;} +.nav3-nobullet dt a:hover, .nav3-nobullet dd a:hover {text-decoration:underline; color:rgb(42,90,138);} + +/*main-navigation ************************************************/ +.main-navigation .loginform {width:160px; margin:-10px 20px 0 20px;} +.main-navigation .loginform p {clear:both; margin:0; padding:0;} +.main-navigation .loginform fieldset {width:160px; border:none;} +.main-navigation .loginform label.top {float:left; width:125px; margin:0 0 2px 0; font-size:110%;} +.main-navigation .loginform label.right {float:left; width:125px; margin:5px 0 0 0; padding:0 0 0 3px; /*IE6*/; font-size:110%;} +.main-navigation .loginform input.field {width:158px; margin:0 0 5px 0; padding:0.1em 0 0.2em 0 !important /*Non-IE6*/; padding:0.2em 0 0.3em 0 /*IE6*/; border:solid 1px rgb(200,200,200); font-family:verdana,arial,sans-serif; font-size:110%;} +.main-navigation .loginform input.checkbox {float:left; margin:5px 0 0 0 !important /*Non-IE6*/; margin:2px 0 0 -3px /*IE6*/; border:none;} +.main-navigation .loginform input.button {float:left; width:5.0em; margin:10px 0 5px 0; padding:1px; background:rgb(230,230,230); border:solid 1px rgb(150,150,150); text-align:center; font-family:verdana,arial,sans-serif; color:rgb(150,150,150); font-size:110%;} +.main-navigation .loginform input.button:hover {cursor:pointer; border:solid 1px rgb(80,80,80); background:rgb(220,220,220); color:rgb(80,80,80);} +.main-navigation .searchform {width:160px; margin:0 20px 0 20px;} +.main-navigation .searchform p {clear:both; margin:0; padding:0;} +.main-navigation .searchform fieldset {border:none;} +.main-navigation .searchform input.field {float:left; width:158px; padding:0.1em 0 0.2em 0 !important /*Non-IE6*/; padding:0.2em 0 0.3em 0 /*IE6*/; border:1px solid rgb(200,200,200); font-family:verdana,arial,sans-serif; font-size:120%;} +.main-navigation .searchform input.button {float:left; width:3.0em; margin-top: 0.5em; padding:1px; background:rgb(230,230,230); border:solid 1px rgb(150,150,150); text-align:center; font-family:verdana,arial,sans-serif; color:rgb(150,150,150); font-size:120%;} +.main-navigation .searchform input.button:hover {cursor:pointer; border:solid 1px rgb(80,80,80); background:rgb(220,220,220); color:rgb(80,80,80);} +.main-navigation h1.first {clear:both; margin:0px; padding:4px 20px 3px 20px; background-color:rgb(190,190,190); background-color:#89aad6;font-family:"trebuchet ms",arial,sans-serif; color:rgb(255,255,255); font-weight:bold; } +.main-navigation h1 {clear:both; margin:30px 0 20px 0; padding:4px 20px 3px 20px; background:rgb(190,190,190);background:#89aad6; font-family:"trebuchet ms",arial,sans-serif; color:rgb(255,255,255); font-weight:bold; font-size:1.2em;} +.main-navigation h2 {clear:both; margin:20px 10px 10px 20px; font-family:"trebuchet ms",arial,sans-serif; color:rgb(100,100,100); font-weight:bold; font-size:150%;} +.main-navigation h3 {clear:both; margin:10px 10px 5px 20px; color:rgb(80,80,80); font-weight:bold; font-size:110%;} /* Note: h2 not existent, to make identical to formats for main-navigation for easier exchange */ +.main-navigation p {clear:both; margin:0 10px 10px 20px; color:rgb(80,80,80); line-height:1.3em; font-size:110%;} +.main-navigation p.center {text-align:center;} +.main-navigation p.right {text-align:right;} +.main-navigation ul {list-style:none; margin:0.5em 5px 1.0em 5px;} +.main-navigation ul li { margin:5px 0 0.2em 2px; background-image:none; line-height:1.4em; font-size:90%; color:#467aa7; font-weight:normal;} +.main-navigation a, .main-navigation ul li ul li,.main-navigation ul li ul li a, .main-navigation ul li ul li a:visited{color:#333;font-weight:normal;} +.main-navigation ol {margin:0.5em 10px 1.0em 40px !important /*Non-IE6*/; margin:0.5em 10px 1.0em 45px /*IE6*/;} +.main-navigation ol li {list-style-position:outside; margin:0 0 0.4em 0; font-size:110%;} + +.main-navigation {font-size:14px;display:inline /*Fix IE floating margin bug*/; float:left; width:200px; height:100%; overflow:visible !important /*Firefox*/; overflow:hidden /*IE6*/; background:rgb(245,245,245);} + +.main-navigation .round-border-topright {width:10px; height:10px; position:absolute; z-index:10; margin:0 0 0 190px; background:url(img/bg_corner_topright.gif) no-repeat;} + +.main-navigation h2 {margin: 5px 10px 5px 10px;} +.main-navigation h1.first ,.main-navigation h1{ background-color:#89aad6 !important;} +.main-navigation {background-color:#d5e1f0 !important;} + + +/******************footer ************************************************/ +.footer {clear:both; width:954px; padding:1.0em 0 1.0em 0; border-top:solid 3px rgb(175,175,175); border-left:solid 3px rgb(175,175,175); border-right:solid 3px rgb(175,175,175); border-bottom:solid 3px rgb(175,175,175); background:rgb(225,225,225); font-size:1.0em; overflow:visible !important /*Firefox*/; overflow:hidden /*IE6*/;} +.footer p {line-height:1.3em; text-align:center; color:rgb(125,125,125); font-weight:bold; font-size:110%;} +.footer p.credits {font-weight:normal;} +.footer a {text-decoration:underline; color:rgb(125,125,125);} +.footer a:hover {text-decoration:none; color:rgb(0,0,0);} +/*.footer a:visited {color:rgb(0,0,0);}*/ +.footer:after {content:"."; display:block; height:0; clear:both; visibility:hidden;} + +/*******************main **********************************************/ +.main {clear:both; width:954px; padding-bottom:30px; border-left:solid 3px rgb(175,175,175); border-right:solid 3px rgb(175,175,175); background:transparent url(img/bg_main.gif) top left repeat-y;} +.main img {clear:both; margin:3px 10px 7px 0; padding:1px;} +.main img.center {clear:both; float:none; display:block; margin:0 auto; padding:1px;} +.main img.right {clear:both; float:right; margin:3px 0 7px 10px; padding:1px;} + +.main a {color:rgb(70,122,167); font-weight:bold; text-decoration:none;} +.main a:hover {color:rgb(42,90,138); text-decoration:underline;} +/*. main a:visited {color:rgb(42,90,138);} */ +.main a img {border:solid 1px rgb(150,150,150);} +.main a:hover img {border:solid 1px rgb(220,220,220);} + +/********************************/ +/* PRINTING and MISCELLANEOUS */ +/********************************/ +@media print {.header-top {width:954px; height:80px; background:rgb(240,240,240); overflow:visible !important /*Firefox*/; overflow:hidden /*IE6*/;}} +@media print {.header-breadcrumbs {width:954px; background:transparent;}} +@media print {.nav2 {float:left; width:954px; border:none; background:rgb(240,240,240); color:rgb(75,75,75); font-size:1.0em; font-size:130%;}} /*Color navigation bar normal mode*/ +@media print {.main {clear:both; width:954px; padding-bottom:30px; background:transparent;}} +@media print {.main-navigation {display:inline /*Fix IE floating margin bug*/; float:left; width:199px; border-right:solid 1px rgb(200,200,200); border-bottom:solid 1px rgb(200,200,200); background-color:rgb(240,240,240); overflow:visible !important /*Firefox*/; overflow:hidden /*IE*/;}} +@media print {.footer {clear:both; width:954px; height:3.7em; padding:1.1em 0 0; background:rgb(240,240,240); font-size:1.0em; overflow:visible !important /*Firefox*/; overflow:hidden /*IE6*/;}} +@media print {div.crosslinks {visibility:hidden;}} + diff --git a/doc/doxygen/css/doxyTabs.css b/doc/doxygen/css/doxyTabs.css new file mode 100644 index 0000000000..3c567bb529 --- /dev/null +++ b/doc/doxygen/css/doxyTabs.css @@ -0,0 +1,100 @@ +/* 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; +} + diff --git a/doc/doxygen/css/doxygen.css b/doc/doxygen/css/doxygen.css new file mode 100644 index 0000000000..116e51ab41 --- /dev/null +++ b/doc/doxygen/css/doxygen.css @@ -0,0 +1,111 @@ +body { + font-family: Lucida Grande, Verdana, Geneva, Arial, sans-serif; + font-size: 12px; +} + +body { + background: #fff; + color: #000; + margin: 0px; + text-decoration: none; +} + +main { + padding: 10px; +} + +/* @group Heading Levels */ + +/* +h1 { + text-align: center; + font-size: 150%; +} + +h2 { + font-size: 120%; +} + +h3 { + font-size: 100%; +} +*/ + +a:link, a:link:hover, a:visited, 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; +} diff --git a/doc/doxygen/css/doxygen/doxygen.css b/doc/doxygen/css/doxygen/doxygen.css new file mode 100644 index 0000000000..d6aaf2804c --- /dev/null +++ b/doc/doxygen/css/doxygen/doxygen.css @@ -0,0 +1,545 @@ +/* The standard CSS for doxygen */ + +body, table, div, p, dl { + font-family: Lucida Grande, Verdana, Geneva, Arial, sans-serif; + font-size: 12px; +} + +/* @group Heading Levels */ + +h1 { + text-align: center; + font-size: 150%; +} + +h2 { + font-size: 120%; +} + +h3 { + font-size: 100%; +} + +dt { + font-weight: bold; +} + +div.multicol { + -moz-column-gap: 1em; + -webkit-column-gap: 1em; + -moz-column-count: 3; + -webkit-column-count: 3; +} + +p.startli, p.startdd, p.starttd { + margin-top: 2px; +} + +p.endli { + margin-bottom: 0px; +} + +p.enddd { + margin-bottom: 4px; +} + +p.endtd { + margin-bottom: 2px; +} + +/* @end */ + +caption { + font-weight: bold; +} + +span.legend { + font-size: 70%; + text-align: center; +} + +h3.version { + font-size: 90%; + text-align: center; +} + +div.qindex, div.navtab{ + background-color: #e8eef2; + border: 1px solid #84b0c7; + text-align: center; + margin: 2px; + padding: 2px; +} + +div.qindex, div.navpath { + width: 100%; + line-height: 140%; +} + +div.navtab { + margin-right: 15px; +} + +/* @group Link Styling */ + +a { + color: #153788; + font-weight: normal; + text-decoration: none; +} + +.contents a:visited { + color: #1b77c5; +} + +a:hover { + text-decoration: underline; +} + +a.qindex { + font-weight: bold; +} + +a.qindexHL { + font-weight: bold; + background-color: #6666cc; + color: #ffffff; + border: 1px double #9295C2; +} + +.contents a.qindexHL:visited { + color: #ffffff; +} + +a.el { + font-weight: bold; +} + +a.elRef { +} + +a.code { + color: #3030f0; +} + +a.codeRef { + color: #3030f0; +} + +/* @end */ + +dl.el { + margin-left: -1cm; +} + +.fragment { + font-family: monospace, fixed; + font-size: 105%; +} + +pre.fragment { + border: 1px solid #CCCCCC; + background-color: #f5f5f5; + padding: 4px 6px; + margin: 4px 8px 4px 2px; + overflow: auto; + word-wrap: break-word; + font-size: 9pt; + line-height: 125%; +} + +div.ah { + background-color: black; + font-weight: bold; + color: #ffffff; + margin-bottom: 3px; + margin-top: 3px +} + +div.groupHeader { + margin-left: 16px; + margin-top: 12px; + margin-bottom: 6px; + font-weight: bold; +} + +div.groupText { + margin-left: 16px; + font-style: italic; +} + +body { + background: white; + color: black; + margin-right: 20px; + margin-left: 20px; +} + +td.indexkey { + background-color: #e8eef2; + font-weight: bold; + border: 1px solid #CCCCCC; + margin: 2px 0px 2px 0; + padding: 2px 10px; +} + +td.indexvalue { + background-color: #e8eef2; + border: 1px solid #CCCCCC; + padding: 2px 10px; + margin: 2px 0px; +} + +tr.memlist { + background-color: #f0f0f0; +} + +p.formulaDsp { + text-align: center; +} + +img.formulaDsp { + +} + +img.formulaInl { + vertical-align: middle; +} + +div.center { + text-align: center; + margin-top: 0px; + margin-bottom: 0px; + padding: 0px; +} + +div.center img { + border: 0px; +} + +img.footer { + border: 0px; + vertical-align: middle; +} + +/* @group Code Colorization */ + +span.keyword { + color: #008000 +} + +span.keywordtype { + color: #604020 +} + +span.keywordflow { + color: #e08000 +} + +span.comment { + color: #800000 +} + +span.preprocessor { + color: #806020 +} + +span.stringliteral { + color: #002080 +} + +span.charliteral { + color: #008080 +} + +span.vhdldigit { + color: #ff00ff +} + +span.vhdlchar { + color: #000000 +} + +span.vhdlkeyword { + color: #700070 +} + +span.vhdllogic { + color: #ff0000 +} + +/* @end */ + +.search { + color: #003399; + font-weight: bold; +} + +form.search { + margin-bottom: 0px; + margin-top: 0px; +} + +input.search { + font-size: 75%; + color: #000080; + font-weight: normal; + background-color: #e8eef2; +} + +td.tiny { + font-size: 75%; +} + +.dirtab { + padding: 4px; + border-collapse: collapse; + border: 1px solid #84b0c7; +} + +th.dirtab { + background: #e8eef2; + font-weight: bold; +} + +hr { + height: 0px; + border: none; + border-top: 1px solid #666; +} + +hr.footer { + height: 1px; +} + +/* @group Member Descriptions */ + +.mdescLeft, .mdescRight, +.memItemLeft, .memItemRight, +.memTemplItemLeft, .memTemplItemRight, .memTemplParams { + background-color: #FAFAFA; + border: none; + margin: 4px; + padding: 1px 0 0 8px; +} + +.mdescLeft, .mdescRight { + padding: 0px 8px 4px 8px; + color: #555; +} + +.memItemLeft, .memItemRight, .memTemplParams { + border-top: 1px solid #ccc; +} + +.memItemLeft, .memTemplItemLeft { + white-space: nowrap; +} + +.memTemplParams { + color: #606060; + white-space: nowrap; +} + +/* @end */ + +/* @group Member Details */ + +/* Styles for detailed member documentation */ + +.memtemplate { + font-size: 80%; + color: #606060; + font-weight: normal; + margin-left: 3px; +} + +.memnav { + background-color: #e8eef2; + border: 1px solid #84b0c7; + text-align: center; + margin: 2px; + margin-right: 15px; + padding: 2px; +} + +.memitem { + padding: 0; + margin-bottom: 10px; +} + +.memname { + white-space: nowrap; + font-weight: bold; + margin-left: 6px; +} + +.memproto { + border-top: 1px solid #84b0c7; + border-left: 1px solid #84b0c7; + border-right: 1px solid #84b0c7; + padding: 0; + background-color: #d5e1e8; + font-weight: bold; + /* firefox specific markup */ + background-image: -moz-linear-gradient(rgba(228, 233, 245, 1.0) 0%, rgba(193, 205, 232, 1.0) 100%); + -moz-box-shadow: rgba(0, 0, 0, 0.15) 5px 5px 5px; + -moz-border-radius-topright: 8px; + -moz-border-radius-topleft: 8px; + /* webkit specific markup */ + background-image: -webkit-gradient(linear, 0% 0%, 0% 100%, from(rgba(228, 233, 245, 1.0)), to(rgba(193, 205, 232, 1.0))); + -webkit-box-shadow: 5px 5px 5px rgba(0, 0, 0, 0.15); + -webkit-border-top-right-radius: 8px; + -webkit-border-top-left-radius: 8px; + +} + +.memdoc { + border-bottom: 1px solid #84b0c7; + border-left: 1px solid #84b0c7; + border-right: 1px solid #84b0c7; + padding: 2px 5px; + background-color: #eef3f5; + border-top-width: 0; + /* firefox specific markup */ + -moz-border-radius-bottomleft: 8px; + -moz-border-radius-bottomright: 8px; + -moz-box-shadow: rgba(0, 0, 0, 0.15) 5px 5px 5px; + /* webkit specific markup */ + -webkit-border-bottom-left-radius: 8px; + -webkit-border-bottom-right-radius: 8px; + -webkit-box-shadow: 5px 5px 5px rgba(0, 0, 0, 0.15); +} + +.paramkey { + text-align: right; +} + +.paramtype { + white-space: nowrap; +} + +.paramname { + color: #602020; + white-space: nowrap; +} +.paramname em { + font-style: normal; +} + +/* @end */ + +/* @group Directory (tree) */ + +/* for the tree view */ + +.ftvtree { + font-family: sans-serif; + margin: 0.5em; +} + +/* these are for tree view when used as main index */ + +.directory { + font-size: 9pt; + font-weight: bold; +} + +.directory h3 { + margin: 0px; + margin-top: 1em; + font-size: 11pt; +} + +/* +The following two styles can be used to replace the root node title +with an image of your choice. Simply uncomment the next two styles, +specify the name of your image and be sure to set 'height' to the +proper pixel height of your image. +*/ + +/* +.directory h3.swap { + height: 61px; + background-repeat: no-repeat; + background-image: url("yourimage.gif"); +} +.directory h3.swap span { + display: none; +} +*/ + +.directory > h3 { + margin-top: 0; +} + +.directory p { + margin: 0px; + white-space: nowrap; +} + +.directory div { + display: none; + margin: 0px; +} + +.directory img { + vertical-align: -30%; +} + +/* these are for tree view when not used as main index */ + +.directory-alt { + font-size: 100%; + font-weight: bold; +} + +.directory-alt h3 { + margin: 0px; + margin-top: 1em; + font-size: 11pt; +} + +.directory-alt > h3 { + margin-top: 0; +} + +.directory-alt p { + margin: 0px; + white-space: nowrap; +} + +.directory-alt div { + display: none; + margin: 0px; +} + +.directory-alt img { + vertical-align: -30%; +} + +/* @end */ + +address { + font-style: normal; + color: #333; +} + +table.doxtable { + border-collapse:collapse; +} + +table.doxtable td, table.doxtable th { + border: 1px solid #153788; + padding: 3px 7px 2px; +} + +table.doxtable th { + background-color: #254798; + color: #FFFFFF; + font-size: 110%; + padding-bottom: 4px; + padding-top: 5px; + text-align:left; +} + diff --git a/doc/doxygen/css/doxygen/tabs.css b/doc/doxygen/css/doxygen/tabs.css new file mode 100644 index 0000000000..a444163416 --- /dev/null +++ b/doc/doxygen/css/doxygen/tabs.css @@ -0,0 +1,105 @@ +/* tabs styles, based on http://www.alistapart.com/articles/slidingdoors */ + +DIV.tabs +{ + float : left; + width : 100%; + background : url("tab_b.gif") repeat-x bottom; + margin-bottom : 4px; +} + +DIV.tabs UL +{ + margin : 0px; + padding-left : 10px; + list-style : none; +} + +DIV.tabs LI, DIV.tabs FORM +{ + display : inline; + margin : 0px; + padding : 0px; +} + +DIV.tabs FORM +{ + float : right; +} + +DIV.tabs A +{ + float : left; + background : url("tab_r.gif") no-repeat right top; + border-bottom : 1px solid #84B0C7; + font-size : 80%; + font-weight : bold; + text-decoration : none; +} + +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: #1A419D; +} + +DIV.tabs SPAN +{ + float : left; + display : block; + background : url("tab_l.gif") no-repeat left top; + padding : 5px 9px; + white-space : nowrap; +} + +DIV.tabs #MSearchBox +{ + float : right; + display : inline; + font-size : 1em; +} + +DIV.tabs TD +{ + font-size : 80%; + 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 +{ + background-position: 100% -150px; + border-width : 0px; +} + +DIV.tabs LI.current SPAN +{ + background-position: 0% -150px; + padding-bottom : 6px; +} + +DIV.navpath +{ + background : none; + border : none; + border-bottom : 1px solid #84B0C7; + text-align : center; + margin : 2px; + padding : 2px; +} diff --git a/doc/doxygen/css/img/OpenCFDlogo.png b/doc/doxygen/css/img/OpenCFDlogo.png new file mode 100644 index 0000000000000000000000000000000000000000..15c03032cad560b323539fd1567fcdac036612da GIT binary patch literal 11529 zcmXwfbzBtR+x7qoh$xG+gp_o5cPpJsN_TgIlz@PMfPgd-(%nmUce6@&cfRBI_q@Z0 zWtl%__uS`>D^9qQg7ho2w`c$WypolXPyqm>pWu5MR7CKV*x1Me{Da`EA}t1#ju7pD z{~#NEkd^?R{{3XO)=B|YWz3M$m zOQwXRkd~8@lFDJe%rt5bb(QQsY;44pm|fW$$ZncbQqx`3c2qW~_|*Fu2OCF1f+3TX zG=h9!LRKcZp;efv2VV>|(bxabTUe1Kou$Eab0vA5-+V+6MQDT;`N=Bt$KYrXKpOmK zb}uA5AX)I)GsHjYcd1r<@bqQ)ogy4W=g8D=)IVR!%|CC=lL5^#=gxqKrZ!7ju-rqjwMDGoB zJDBqi%zh3iJ>6nurt!w_BRLJ6i**MlzEbD-68|Sr9?rfeaqy zQMf^N(O@_wcEjbrPZ1&YffBGg{`NT1_j6?ZgnzvLA}z7U+4k zyT-9Ws}efUmZLm{*}l}!C_q9T-!2t3$39CZ)C#p$oj>mnjg7r;Qk3gcm;Uej|FtH? zc1WE?gC*Mgd*s>D>FHUN$11w;HH7~X z=m{S1^IY%p!F~S9ushZMLCfWQ{Q5*C`1rRw_S@etfp3l(l|Q6Al!1WhcD{p!il`K8 zCu0cO?5zk|$J3mRk+b0Z3%{67~zkW)wCj#Tq2f5vx2STdrYH7LbPW3mqy4youIdTNJ_qze%GC+$6{(?Xh>Gf$iS8^gMkrK_)_yXqmp9G z71dUMGJF2osvRzN^Web1CeKJ$S64?zw&i3V3hb$HqZF({_YT`hcuv9(%O4u?ear(diApPOcLR2$qlseW zesSVBI60xce(iRCT>2PmU#F3roUDBq-qPZ$_OWsmzO#m`*W@Oj8j)@*s9Bx@io)YAc>FVl=i6N4hp#H73 zUF5sFFPP|Xcvn_k%@L9PQC{BF)sqs5>MuMxceuz$=)sX9B+lku$^-yn)y82f-zr>TgP3Ub31qjox1Xjc z)$O&Bki=tUo{>$Bk7pIU^?g&$I5{*`d@IdN0#E1goQT9@K5h*S4IKt^W^adfY+P1e zUjD;}!M;8KSo+YowYFB}ak830#r)gWe&?7%8X_hpNCsr8=r(Zs*pGS1XXA>|Kv376 zczYc=XBq#&GDzp?6uRHJzr@9$)-QCLa1JHKnG;RY^%{@i3^}`$#n_;4-xxCezYlagvQf zi$N2S!ezS<^76HYLi#`yX)sUp8js!G<$?TC)65QlrOX?s`;Fe+60kIdd*#x#T}M`KAr#T9e;0fQbk2YeS{3?5^nGAM)ex?PZo1^ zhx&7L=3?#W{gb_p|A>YfCNk+QR2WOghYq)9QQ*iHyin~nG`wGZBQi&3BDxxk zGq@yf%C6ccV>4I&^CywQ$Z$F*|EX9)=Zlc% z*C!9Dis?MG5L6Skd9crE+M;Q0+xegaz(T>_jyCo2@o_3DDh~NppBty$@BQ$l!kDNU zR8asDY|-mxn1)@V)K&te?=sVN-Ru0F!p6>y1d!^nN1H267J04t`T1#$H#Ro*bambH z*rCD9zg5VvzKkYWF_g~E|CmgkG059KDi)2Y4@}yL#s6W9a*uH%)GRf+ zi<1*&nuQcpt(M`%#Z*&h^2gdw?Vqh$PhA8B)8otntl+a$I2Mf7)01n{=gzv5Zp6Op z-1-qp>WGD}2&-QO9k+j6RESDWlGhXMB!y%~Zn5l_Lt_bNTd@3%k%hP@bMilZcEI|{sJjGdXY zWyyUGeK|G6S8?2GU7{;P$(-GJC05c@@zbt#bJ49jM}xwhw~`j&xz*zMY7^J^%BMY0&oN%;J)tWg=Vxh zjpylwkF2b=7iWIxL1{6<(}fq+zMLaRv7`#}CaexW2wVUyn(APdr!S zIGgxwKg@Ac3bA%waw=BP8qpj?4mJl9(B4a1tPS(21&_}a_J{NZCZ_rc)(0I(mAtU`CxT`eKeHGVjRAJ4oiD!-% zmY8NO7>8F_r~2Qu;na|mlardNBfqyjd8BuDchovOH1xK~6#;Pg#caO}yVxGjSe+lTuDD&YFyes{xT zV@g5U-PCaAL2fBY$%OCU*Vor2-eK%<54GMB<7nQp@!gUGZ9P4ChLe{-fZM^sa~r*W0^wu{XO;nD~!NJ>i2b zIRru;>~(cmvZ0c3TgwQ(BgVmb4)D0HuE)(RA7fbDq~-?(1_A-U1`|(j?kkLYH#atD zHPN+6IJ__SQ#7iu*K?oUS5h8s%5Ox0<%5m-?BVX}$@f7zD{Lt0*r(1RKxH>_Q`j^`KSUw&R1+mX?;N zWI`FjZu>mLt#s;H^u z>ejiY&VVSHyT-P#c7xiztXR8-k9MbYz>S(Z-}7wC`{He0rSE*DDVQY|i?z0DE@kq2 znhy;Jqn}$}et*f~Xj5s}87ei*?^}$TAZQ(XnO=itubmZ8Bs%4n9n1E2ChGK*4G1VH zDVe?Mtl>?@4<%qX8+zw|k3c5icCK~QzE&jbz;}8d0xl8=C@W)Lxt=V@SY2Hu4ZgcN zGSEpaz=`bMl==+9wBGLS?yjyWHHMRg{`-3$;=pM0I#JA~nOJ+RfAsF&xU08!jXD?x zb46`nw;0Q;G9M)mesi><-ba#>_Z$&nu+kk1tIlRcMN7-V*m$x<$DQ4IGB?*-vrHfS z3=quw-Cf$cQipBD*nz;YIXfE>_+(|ZJKa9mJ^g;eZ=gh{PEJmaoPt7CWS_pdQkCc?dCwBZI9cO1}Z*T8V!}Kiy|AadRn|y8FgErr&k_qO{?A6>U=lO)byFrx))y>raH+ba6oSUbneFyfaq3r3 zLFSCFgOr-g{~MhYQxWbnxq>)fwub+6JW=R*uWaY~I z3Xtg_;rBxy9UsdQKj~2rqWBsWg(;?4s$0UziQ4PvL$X|EU;vDP8GWcHoKrgo)*@-J zt-zvIDjGdKy|5}ATrOf@=KBH$Zfa^204(sIX=&AEb5k|6iMq`C&6!#iV!{0;Yz?}8 zhf6md9UYEqJ$hff>q#xvraT9^js*Qc=mG+~l)S6``LjQlH!*&9ygT5>RAdu#+v(a& zRDH9(^V543ta=*K~x#{0<3N^e8Iiep?b@d(_mtK1Saq2S=g0Qx0m6(Br!bDS0`C?&i&gb)1 zzV@{btTO0yHd8bR`C495@_9_Cnv+wdE)@#E!^88Z+Hipsdn`RY{Tkil`Z!ArjUrep z5hq;2`|9vH@OZgsuguynnq@dB-dPIwgao#W4#}4FA#wD-QB#&ifTf`zHyKY2nLypyF0i2dg%|I3?U&P zU_kEVWUZGoqaLITk*3Q{R}i!iAb{O`>WelFZA6nN7THv*zkhL%`nlkLliVO2><0HD zDh3Ad^1#SToL7u`#l^({;MCCkXPSK@h9=@O@tuxDI((KDB`*)%^i)@~F@Z_Y+iu6cQW~BA>>K z(T<@}a?={p*w6s(Zmi7taeI!H8@*Kr%BZ%(k$zNq%{$LYCY&PTSFyqJie;6~H8%67 z&PN=Oj!quqp0AHBd{O5I*{5$gGwJ;({I2$$`BW^F0TDU5i1gQ;CZ_79zU5U_lQ6Q_ zU{?o+wxg%VJA3skBr@Prd&iA4E`zeiHn|K+30zfQgM^qkEiKL0<)|kXYm;W`I9oFE zcnTQ>g;~3r=0Y-DYasj=5%6iXD}01$1PKM5fsRfa=F{EJgrtV7z<|qbG4|)YP*q-6 zo33$hzSq4e(9a+P2I(+yZJ-31BWsS+p|0LD5Dss>{ySEI!-+vuXHo)#3H>J94&42# zn92pt>u;venvohGA^(d_-vJ%{7B6+qmzQp?Dazj7cii?X0I;&zYCETPv;8NlGYmjP z&BUaT`ay6CPmnw5iX!0OJdW*jYPbhmQ%*j^j1Ory4qKL|@hDe1YXvLFd+%OV3?vZ& zq?;2r*&SkF$4eLV`g~>hU%iW5qqOY>L&P#5f&)uS_h9K6Rq!w~EAp1(+1dWh4*8vz zji_8S0vk@{R+N+TIzLt(S<{KAHrX1@2!nuhXT*R-xJ)KnMVVp4Z0M)s;Sz81M_dw^ z{jV@?K!mQW5&hbPe zL|c3eNu3cN56}H@sbL$03cEbMw;XhX4@x8zXsuWX21@zf-+Q8phz!`$O=$>k9RFwm z0pS(0t)dj=+1*s*Wy^@)mOdFQvWd>3K_gq=-L*11%B$5FO&2^#?dtk{Av_vq3~%-fg6uBT z6oJACQ${5RE=}vlR~~8n?yi=*h=7c&va#vjQiJM66dNum!2Nk(U}W52|IL;2n+5ga z+sDh5DlUy_tsjkztb&f>tYdukJ%gCQZzc%GrE({KSupL9@_ipOyk_eYj(bl$7 z@kO)ba1J#Y(bWqEi|5X5nQZrKjTl0mNfazS-OPR=rWA`LCSP=AXM0=etBB(SnT-F* zz0OHe%+}`S>fq=|4;%kerz00@xHgYpvtZlpSi_UbppgjKneyabJOA0Tpew{ODV1 z6>QBuhb~4SpenLTZG<)AWCNm^Z`|jhu~BPd2<0SbzH<8%kG=Nr`>+mIq@+=V3hqFF*>>FOn=B$?)>J&w;`OAnrY!vUTSI)-idsd1MMDr>Onoe9uzBdC)g+aC)(1~? zkZ!ASvK^sSYX+r=o9*oFS!1d0IrsVcTc4!exU=#0&MhpgKEc;p#$h;F0V6&d@AKbk zaTRdAYFk=r&Rese%p1-U4}*w}vZXh8xFl4dE@G1fgJh?$W-m84cb8m+D*ntGrU!8L zCbStsHb_V@R%FKjXcYq2a14FmP!;p-c;xUQDs8XCBM#>U1u zb6S_TvO_iaKX)leNkwWMvLZN%h4l^brI?bQwuGOOu^`1aKi9^`@?%D$_P9^a&ajMg z90qg=BFph&>*}~y36TIHKOV7)f%-TipbztS0c6trj`gJ= zi2MO^P*x5`^ZD=Jv1w>0*nrP69aK~+?MFJbHifH}0anqL-NrQCIc|~!fg%A{g&CCnU)o6XeqmMwl(TJ`KDNJVMhD?jo&F~@PHP| z(dzyi0^hrgj9c&7(e+THx z_@Q+V0}<(Oa&!c>PNHy18z(0=08kklAIHp)(ppA)#s{t+Z_5500|QNgg=@?AbH#!G z?rQ>7)8g)x>YDC6^_=xx>}Mi9*-Uy(L;@ZVz~S+}!7@_AO7#OxX3RT&rucr+;L_4k zqLLzugX64D00=eAQ%JJ{lX_4ssS2dPgQNehm?nq%wJYJNi8Rl6ken{pJ5q3Q;X0{M zAhig)zoVt4W#wkKUp5Uu_Er2R;dRU!Z;xdWa@(!*9QIrgCezNQ2{u~PzMh#}(`#}d z2P53n^ZG4Mxz`P-Mo)2(V~^RNu6*LOxfePS0lh~&*voM|FAU+AW5y^TQcT3W1u`&!l{1xR-oEa*Y(8;_cKexN-yw^XXt zA`MD|7kh9FvS(yV&7M_UB_NM-KUh&$Rz@JRnJQ3rtzvg$EGWDM_Y48R&c#k22crQ5 zL`0lwN39spkskM^yt#Z!ZaeiQelW133fDjPi+qv%SkS1l6S4Ob$e7W{hDJtUPF5LQ ztajZA6JNwJ=VCvNWr{|`dj534Y~lxTp^xP8ZR{g^uR=Pv;et=M^-ykucrR!&*q@AL zbsi@WkdTxPD?IX?N&_N(evb(SohrQUhx<^}EcYwBl#Bm^{TN6ew#JR6oQb3-&xexP zH!8JpkCMKtGw9TQ&9jVN3q>a|vbs{%(%9Gg_U&6{ZK+I0x{&i*KxERTH=6iFirSo7 zP*4!n(8!2f=TxkP2hvI?Sg`ng99ER{u~!G1tVQVEuOBr5dCE>~z6_3tde z79A2O)t1n5*}C4}-#hSB_4OG$YG!lDU^-K@N1cV0>bFF^%L1vN?}_CGkNnG)V)>9+ zg?C?~qCy~O&ptz|%+$jdR?+4Q!kxi<2LRAWTbx0*&`=Y2OSSZMzQGvf66*)6ap+s# zps`()B#~)X)drpwFM#CakV3ZhXhp_PsxWB8d6iv+gBn z35idI3uX4LphhUu5kYC=81nI?!|Y-SalG76yn?>(K&Q?*W2vyFx763K&GPT6eQ#28 z|3_KR0LbY9{AqC4`@ho#yIuFDS+%vb41=Kb=3~)Xn(#c?Ov-B280~p=F^#tcycAq2 z!=SddHnQ!Us$QECwz`%UKFl>Cf~b-UXQjyxbaoKLwl_D;=5t*Wf>~jhmRin6L9(mY>L@FUL3W3fzt;NaVRfMG}Hc?5Wm$IO94$Z z#qWW`g?HDLYi`=W9Y`8U`yuGf)ycvz`1+Xm&!3r_!FRFI(b~KbNx4VxCg+*`c^{#S zwR%hnKS+w^^W z-^Znf)mg;4Cr;tR0rAHz+zO4B?LGAZJ#OyQUWgL& zyUEGRKL@sVb`F-CG;LMqv!yGS9zUJGo5#pyZf~mVGrropxR~f+ay!6t(ka8oq#C!?8@Jrz5R{RjiQTd&`O1xsO!VtIlYntnhn{$Em)mOBi>$0HY{`fFvr+$$C)3F;y?I6VwTS0+_RD!R z12Z#jKj8aij)F7-)|iNp?1#Hot7{uQJ+3dkj*~~1K&xi~q;{V_fByLsPtfc9{$e%& zf#M#syH^vtwmWZ0pw4V~;rsVH58}DF_Xq=r@3uzLI_=2x_4O}`^{fvZrxbJEU}2F3 z=PRV?*I#QMJ7!kwp6|^bP4%lnlc69Q3WT`rtsGcO@BN!Oh*=uNX$$Fmt^;5t@bfnn z7rXSwy)V)zsRXT1N4MC4T*Y*O{{DXDTpWv~`V-KsF8(QCZ6!~G9U+nZ0*lIJ|623u z@xfDIC7Ipa$k@1I1te#7##b>!%zMzLQm~VOgc1m-A+uKeDexCGB{nxN!C-wzVlp&G zPBhgl)-qfvpvw0u4*F(UU$s z{@V%eM#o_$7}*QWYXkWd4$GBh-d?Aj(TS?6%5Ec8AtGvO>Sm&XMpU(ZH$Crsng~Pu zlss|pu!oo!$M^63CSa(VUjI}gsmF*s%45=Q-#QcH4n+i*3>tlICN{t}*jQgbx4`9d zRr=>|PMG3EI?d;WTB~V3fqUleRZ5)l13p&Pil+Rt^1q!Rd^*{^D2k_6Frpv_NI5vv z8cM%PVwo{FId6@CvO-m5CG6`OeRKOs@yKBv~%Xz+TZc0*YeB`1)R6UfS9Vk$CEleAu~(k1(6<`s4vd2?>cYj^WCEP&lcHO>MbFXF=Dc zdlMcJ89AEH%jSw$*@Ee#jl0mf?~zkdC4YCs2AZ01-Jm>l#@FXX@k3HJYS zL?n=H6jxXFa;eVVKvq^3gj;JMfD-mA*3I*KxCM73g@aips9=?+6g=MngCXHE=|b@S zUHR8)nwnR$0R|}1=^8CYM`UZAUw0oK?~Ztxo!I`nz6*15az1b#&!!{w($;S8u^3h0 z_ddOe?6x{nm!*88D?<5ZXOAU?f$36wKUg%y{TT*FlG(TVu4G9T3`R}6Z21zhBHnz!hmpD{aC?W<1DosGZ=-S02EQ1SKP0C`T%s|*DzXr4u zGX7$nj6_P13wY6OV0PQj!j^BGw-5jg4GlW$XE*5TP-u9}1D1m6e(#pq zNQT4SObKX)f^9-e3>2zr?BOsSdjrtUwx&o(NbtkT=dj&%I_>Ju^_G>Clmz2wHJ;tw z7Kjv8oHCv-`^cvx7kqVU5r zz+$|)LA!l-t_u^-0uFmvj9aLh-QA`T7TyVcg$RhumM&5Mu*CVAfwTQ|wmz7|L`m6& zhli7&pKr{#H`i4Wm2Y0QBA5kpm3Q^OKat+&TLR_q#>+)80-)jGW1ZEkhp9FP%J}pB z4KTfzHHrMw`^EB$=S$wzTRGQ}tgN#W>A4%QAw~uU6Z{^K{#S|ykt~C~@d_#1YP9%n z*&Qzbqh)BXEirN&56twBlhr{%LHYSxqw!Qof`chm&u!<{wzlvH2$DgmJvo^+R%U2u z$i~*z`(k(cDlDTY>1eJZr?8MVV{{g4x6rm+eNW@sF(^D-w&d<>RE=Azi<1)|HWmEB zm3nYgH^HhZE7k5*bhZVfV1@DKvHdBeJ(mwLNUUyXD` z{06%jY*velgutJ}&5@lHtI61}lEM$?s`~mQ!Qa++EDgEfUHY1%<)CxLmOQkqC;#>f zYfi6P1U&)(_kZ%e_%PMq|KdnoUiRsqGa_>B)u+|PU3)au3)5+Rm*D@t0(pWf4l@`u z^y#Tb=MijiqAYgoW{v;Mks$S2O-5QT>f7>NAplb*pKF{hbz!9~p@?)}D5rvx6MCax zoWeifoP9WMEL23^NpZa*et5`ab#-MU;uZwTCdQrW5>AMDO(llueN0X<$S|k)Z3ISW zOHHld`I04|>>zYMJJTJBhXnZD9n@9CZ~1nd_-M}>eEUJOQf(X##pz)Q*~DzNs{jW6->K;Q{^@p!CQ`Fo2_pI7e*;nKKqBx-Ua}~m;K2l@mzrIJ^`R8)zfyUe z4S@J{r1*9`VbQSt|5LXBkZ9_d$iRjTCpVZ=iFAhktut}>2cf{zr1T=F7w6|DY{}8l zuL)j}TOqJ6{GTw5JI-nS^P2|-=&FDGVtSa`%vi{IE1H&RV(Q5Zl2zQ9OPNm}dy@WH g(f`mG#<72bL?F$ip>!m8xEGL>RFEhY`}Fz$0f!5aX8-^I literal 0 HcmV?d00001 diff --git a/doc/doxygen/css/img/bg_bullet_full_1.gif b/doc/doxygen/css/img/bg_bullet_full_1.gif new file mode 100644 index 0000000000000000000000000000000000000000..45cce6f70731fde7681290309d061eb3485885d2 GIT binary patch literal 806 zcmV+>1KIpXNk%w1VFdsM0QUd@000010RaL60s{jB1Ox;H1qB8M1_uWR2nYxX2?+`c z3JVJh3=9kn4Gj(s4i66x5D*X%5fKs+5)%^>6ciK{6%`g178e&67#J8C85tTH8XFrM z92^`S9UUGX9v>ecARr(iAt53nA|oRsBqSsyB_$>%CMPE+C@3f?DJd!{Dl021EG#T7 zEiEoCE-x=HFfcGNF)=bSGBYzXG&D3dH8nOiHa9mnI5;>tIXOByIy*Z%JUl!-Jv}}? zK0iM{KtMo2K|w-7LPJACL_|bIMMXwNMn^|SNJvOYNl8jdN=r*iOiWBoO-)WtPESuy zP*6}&QBhJ-Qd3h?R8&+|RaI72R##V7SXfwDSy@_IT3cINTwGjTU0q&YUSD5dU|?Wj zVPRroVq;@tWMpJzWo2e&W@l$-XlQ6@X=!R|YHMq2Y;0_8ZEbFDZf|dIaBy&OadC2T za&vQYbaZreb#-=jc6WDoczAeud3kzzdV70&e0+R;eSLm@et&;|fPjF3fq{a8f`fyD zgoK2Jg@uNOhKGlTh=_=ZiHVAeii?YjjEszpjg5|uj*pLzkdTm(k&%*;l9Q8@l$4Z} zm6ev3mY0{8n3$NEnVFiJnwy)OoSdAUot>VZo}ZteprD|kp`oIpqNAguq@<*!rKP5( zrl+T;sHmu^si~@}s;jH3tgNi9t*x%EuCK4Ju&}VPv9YqUva_?Zw6wIfwY9dkwzs#p zxVX5vxw*Q!y1To(yu7@dCU$jHda z$;ryf%FD~k%*@Qq&CSlv&d<-!(9qD)(b3Y<($mw^)YR0~)z#M4*4Nk9*x1lt)=I7_<=;-L_>FMg~>g((4 z?Ck9A?d|UF?(gsK@bK{Q@$vHV^7Hfa^z`)g_4W4l_V@Sq`1ttw`T6?#`uqF){QUg= k{r&#_{{R2~EC2ui00jUA06+)}0DlP_NU)$mf&l>lJ8I*E{r~^~ literal 0 HcmV?d00001 diff --git a/doc/doxygen/css/img/bg_bullet_full_2.gif b/doc/doxygen/css/img/bg_bullet_full_2.gif new file mode 100644 index 0000000000000000000000000000000000000000..98807b21e1924965ac7c8f294b91e2a7c4b39860 GIT binary patch literal 50 ucmZ?wbhEHbWMyDwn8?6jo6*kz13DlENZf&gn}Lx-#$&?*$0kNb25SJWVg|kd literal 0 HcmV?d00001 diff --git a/doc/doxygen/css/img/bg_bullet_half_1.gif b/doc/doxygen/css/img/bg_bullet_half_1.gif new file mode 100644 index 0000000000000000000000000000000000000000..04e6f94141bc53e94305667bff3619674efee4ca GIT binary patch literal 825 zcmV-91IGMENk%w1VFmyO0QUd@000010RaL60s{jB1Ox;H1qB8M1_uWR2nYxX2?+`c z3JVJh3=9kn4Gj(s4i66x5D*X%5fKs+5)%^>6ciK{6%`g178e&67#J8C85tTH8XFrM z92^`S9UUGX9v>ecARr(iAt53nA|oRsBqSsyB_$>%CMPE+C@3f?DJd!{Dl021EG#T7 zEiEoCE-x=HFfcGNF)=bSGBYzXG&D3dH8nOiHa9mnI5;>tIXOByIy*Z%JUl!-Jv}}? zK0iM{KtMo2K|w-7LPJACL_|bIMMXwNMn^|SNJvOYNl8jdN=r*iOiWBoO-)WtPESuy zP*6}&QBhJ-Qd3h?R8&+|RaI72R##V7SXfwDSy@_IT3cINTwGjTU0q&YUSD5dU|?Wj zVPRroVq;@tWMpJzWo2e&W@l$-XlQ6@X=!R|YHMq2Y;0_8ZEbFDZf|dIaBy&OadC2T za&vQYbaZreb#-=jc6WDoczAeud3kzzdV70&e0+R;eSLm@et&;|fPjF3fq{a8f`fyD zgoK2Jg@uNOhKGlTh=_=ZiHVAeii?YjjEszpjg5|uj*pLzkdTm(k&%*;l9Q8@l$4Z} zm6ev3mY0{8n3$NEnVFiJnwy)OoSdAUot>VZo}ZteprD|kp`oIpqNAguq@<*!rKP5( zrl+T;sHmu^si~@}s;jH3tgNi9t*x%EuCK4Ju&}VPv9YqUva_?Zw6wIfwY9dkwzs#p zxVX5vxw*Q!y1To(yu7@dCU$jHda z$;ryf%FD~k%*@Qq&CSlv&d<-!(9qD)(b3Y<($mw^)YR0~)z#M4*4Nk9*x1lt)=I7_<=;-L_>FMg~>g((4 z?Ck9A?d|UF?(gsK@bK{Q@$vHV^7Hfa^z`)g_4W4l_V@Sq`1ttw`T6?#`uqF){QUg= z{r&#_{{R2~A^8Le00930EC2ui00saC06+*90RIUT`0L-Vg9is99B8m$Lxd221q1*) D%&UxL literal 0 HcmV?d00001 diff --git a/doc/doxygen/css/img/bg_bullet_half_2.gif b/doc/doxygen/css/img/bg_bullet_half_2.gif new file mode 100644 index 0000000000000000000000000000000000000000..9be6bc623d141645afceebe8c36a34711102d034 GIT binary patch literal 99 zcmZ?wbhEHbWMyDw*v!CSo6#RoJ}aedY5CL*8xLJPa`Eo#_n-g$`}hC i0|N(x4oDJYh69HHgCK_s!-55ljqHL<3K<3p4AuaX5*rBs literal 0 HcmV?d00001 diff --git a/doc/doxygen/css/img/bg_corner_topright.gif b/doc/doxygen/css/img/bg_corner_topright.gif new file mode 100644 index 0000000000000000000000000000000000000000..95b146294bb3ffdc32b3ecdbeca7cfa00d32a132 GIT binary patch literal 60 zcmZ?wbhEHbP-#>r;{PE+*w{PFReEIVE^XK>P-@kkJ z?&ZsuPo6w^`0(NV`}gnMxpV8*ts6IPT)ler%9SgZFJHcN>C(lE7cX46aOTXJlP6Ce zKYsk^(W6I>965aW@S#J84jw#s;J|@>`}XbKyLZ>FT|0N~+_7WFwr$(CZr!?N%a+ZX zH*egyal?iU>({RbI)i~Mp!k!8k%2*%K?kH8-<#KObFbx$V$v3yH_`7mDafw-*kKa#m~4zR{oyPrS7XNRM+Olt?4Vz z-`4KJ;jN=B+1Ka76f#+S+H_|L->Gx^8F+o=7SCf$)lu$US9*SeveNzF%oTf2ad zR_&fr21Os4Lv?K0KE)?W_pC)60|1L9 Bw2A-# literal 0 HcmV?d00001 diff --git a/doc/doxygen/css/img/bg_head_corner_topright_25px.gif b/doc/doxygen/css/img/bg_head_corner_topright_25px.gif new file mode 100644 index 0000000000000000000000000000000000000000..1bcf6a6a4c610a6a28601037b62c3e838f141381 GIT binary patch literal 389 zcmZ?wbhEHblw^=(xXQrr|NsBLfB*jZ^XK>P-#>r;{PE+*w{PFReEIVE^XK>P-@kkJ z?&ZsuPo6w^`0(NV`}gnMxpV8*ts6IPT)ler%9SgZFJHcN>C(lE7cX46aOTXJlP6Ce zKYsk^(W6I>965aW@S#J84jw#s;J|@>`}XbKyLZ>FT|0N~+_7WFwr$(CZr!?N%a+ZX zH*egyal?iU>({RbI)i~Mp!k!8k%2*%K?kH8N2_3l^xdS!m{UtIJ$14rbW>UT{K~g;m7+1|elW Date: Fri, 16 Apr 2010 19:27:39 +0200 Subject: [PATCH 02/57] ENH: update Doxyfile to 1.6.3 --- doc/doxygen/Doxyfile | 459 +++++++++++++++++++++++++++++++++---------- 1 file changed, 359 insertions(+), 100 deletions(-) diff --git a/doc/doxygen/Doxyfile b/doc/doxygen/Doxyfile index 39b5dc6ad9..1b1f98598f 100644 --- a/doc/doxygen/Doxyfile +++ b/doc/doxygen/Doxyfile @@ -1,4 +1,4 @@ -# Doxyfile 1.5.3 +# Doxyfile 1.6.3 # This file describes the settings to be used by the documentation system # doxygen (www.doxygen.org) for a project @@ -14,11 +14,11 @@ # Project related configuration options #--------------------------------------------------------------------------- -# This tag specifies the encoding used for all characters in the config file that -# follow. The default is UTF-8 which is also the encoding used for all text before -# the first occurrence of this tag. Doxygen uses libiconv (or the iconv built into -# libc) for the transcoding. See http://www.gnu.org/software/libiconv for the list of -# possible encodings. +# This tag specifies the encoding used for all characters in the config file +# that follow. The default is UTF-8 which is also the encoding used for all +# text before the first occurrence of this tag. Doxygen uses libiconv (or the +# iconv built into libc) for the transcoding. See +# http://www.gnu.org/software/libiconv for the list of possible encodings. DOXYFILE_ENCODING = UTF-8 @@ -54,10 +54,11 @@ CREATE_SUBDIRS = NO # information to generate all constant output in the proper language. # The default language is English, other supported languages are: # Afrikaans, Arabic, Brazilian, Catalan, Chinese, Chinese-Traditional, -# Croatian, Czech, Danish, Dutch, Finnish, French, German, Greek, Hungarian, -# Italian, Japanese, Japanese-en (Japanese with English messages), Korean, -# Korean-en, Lithuanian, Norwegian, Polish, Portuguese, Romanian, Russian, -# Serbian, Slovak, Slovene, Spanish, Swedish, and Ukrainian. +# Croatian, Czech, Danish, Dutch, Esperanto, Farsi, Finnish, French, German, +# Greek, Hungarian, Italian, Japanese, Japanese-en (Japanese with English +# messages), Korean, Korean-en, Lithuanian, Norwegian, Macedonian, Persian, +# Polish, Portuguese, Romanian, Russian, Serbian, Serbian-Cyrilic, Slovak, +# Slovene, Spanish, Swedish, Ukrainian, and Vietnamese. OUTPUT_LANGUAGE = English @@ -154,13 +155,6 @@ QT_AUTOBRIEF = NO MULTILINE_CPP_IS_BRIEF = NO -# If the DETAILS_AT_TOP tag is set to YES then Doxygen -# will output the detailed description near the top, like JavaDoc. -# If set to NO, the detailed description appears after the member -# documentation. - -DETAILS_AT_TOP = YES - # If the INHERIT_DOCS tag is set to YES (the default) then an undocumented # member inherits the documentation from any documented member that it # re-implements. @@ -195,14 +189,37 @@ ALIASES = OPTIMIZE_OUTPUT_FOR_C = NO # Set the OPTIMIZE_OUTPUT_JAVA tag to YES if your project consists of Java -# sources only. Doxygen will then generate output that is more tailored for Java. -# For instance, namespaces will be presented as packages, qualified scopes -# will look different, etc. +# sources only. Doxygen will then generate output that is more tailored for +# Java. For instance, namespaces will be presented as packages, qualified +# scopes will look different, etc. OPTIMIZE_OUTPUT_JAVA = NO -# If you use STL classes (i.e. std::string, std::vector, etc.) but do not want to -# include (a tag file for) the STL sources as input, then you should +# Set the OPTIMIZE_FOR_FORTRAN tag to YES if your project consists of Fortran +# sources only. Doxygen will then generate output that is more tailored for +# Fortran. + +OPTIMIZE_FOR_FORTRAN = NO + +# Set the OPTIMIZE_OUTPUT_VHDL tag to YES if your project consists of VHDL +# sources. Doxygen will then generate output that is tailored for +# VHDL. + +OPTIMIZE_OUTPUT_VHDL = NO + +# Doxygen selects the parser to use depending on the extension of the files it parses. +# With this tag you can assign which parser to use for a given extension. +# Doxygen has a built-in mapping, but you can override or extend it using this tag. +# The format is ext=language, where ext is a file extension, and language is one of +# the parsers supported by doxygen: IDL, Java, Javascript, C#, C, C++, D, PHP, +# Objective-C, Python, Fortran, VHDL, C, C++. For instance to make doxygen treat +# .inc files as Fortran files (default is PHP), and .f files as C (default is Fortran), +# use: inc=Fortran f=C. Note that for custom extensions you also need to set FILE_PATTERNS otherwise the files are not read by doxygen. + +EXTENSION_MAPPING = + +# If you use STL classes (i.e. std::string, std::vector, etc.) but do not want +# to include (a tag file for) the STL sources as input, then you should # set this tag to YES in order to let doxygen match functions declarations and # definitions whose arguments contain STL classes (e.g. func(std::string); v.s. # func(std::string) {}). This also make the inheritance and collaboration @@ -215,6 +232,21 @@ BUILTIN_STL_SUPPORT = NO CPP_CLI_SUPPORT = NO +# Set the SIP_SUPPORT tag to YES if your project consists of sip sources only. +# Doxygen will parse them like normal C++ but will assume all classes use public +# instead of private inheritance when no explicit protection keyword is present. + +SIP_SUPPORT = NO + +# For Microsoft's IDL there are propget and propput attributes to indicate getter +# and setter methods for a property. Setting this option to YES (the default) +# will make doxygen to replace the get and set methods by a property in the +# documentation. This will only work if the methods are indeed getting or +# setting a simple type. If this is not the case, or you want to show the +# methods anyway, you should set this option to NO. + +IDL_PROPERTY_SUPPORT = YES + # If member grouping is used in the documentation and the DISTRIBUTE_GROUP_DOC # tag is set to YES, then doxygen will reuse the documentation of the first # member in the group (if any) for the other members of the group. By default @@ -230,6 +262,32 @@ DISTRIBUTE_GROUP_DOC = NO SUBGROUPING = YES +# When TYPEDEF_HIDES_STRUCT is enabled, a typedef of a struct, union, or enum +# is documented as struct, union, or enum with the name of the typedef. So +# typedef struct TypeS {} TypeT, will appear in the documentation as a struct +# with name TypeT. When disabled the typedef will appear as a member of a file, +# namespace, or class. And the struct will be named TypeS. This can typically +# be useful for C code in case the coding convention dictates that all compound +# types are typedef'ed and only the typedef is referenced, never the tag name. + +TYPEDEF_HIDES_STRUCT = NO + +# The SYMBOL_CACHE_SIZE determines the size of the internal cache use to +# determine which symbols to keep in memory and which to flush to disk. +# When the cache is full, less often used symbols will be written to disk. +# For small to medium size projects (<1000 input files) the default value is +# probably good enough. For larger projects a too small cache size can cause +# doxygen to be busy swapping symbols to and from disk most of the time +# causing a significant performance penality. +# If the system has enough physical memory increasing the cache will improve the +# performance by keeping more symbols in memory. Note that the value works on +# a logarithmic scale so increasing the size by one will rougly double the +# memory usage. The cache size is given by this formula: +# 2^(16+SYMBOL_CACHE_SIZE). The valid range is 0..9, the default is 0, +# corresponding to a cache size of 2^16 = 65536 symbols + +SYMBOL_CACHE_SIZE = 0 + #--------------------------------------------------------------------------- # Build related configuration options #--------------------------------------------------------------------------- @@ -264,10 +322,11 @@ EXTRACT_LOCAL_CLASSES = YES EXTRACT_LOCAL_METHODS = NO -# If this flag is set to YES, the members of anonymous namespaces will be extracted -# and appear in the documentation as a namespace called 'anonymous_namespace{file}', -# where file will be replaced with the base name of the file that contains the anonymous -# namespace. By default anonymous namespace are hidden. +# If this flag is set to YES, the members of anonymous namespaces will be +# extracted and appear in the documentation as a namespace called +# 'anonymous_namespace{file}', where file will be replaced with the base +# name of the file that contains the anonymous namespace. By default +# anonymous namespace are hidden. EXTRACT_ANON_NSPACES = NO @@ -327,6 +386,12 @@ HIDE_SCOPE_NAMES = YES SHOW_INCLUDE_FILES = NO +# If the FORCE_LOCAL_INCLUDES tag is set to YES then Doxygen +# will list include files with double quotes in the documentation +# rather than with sharp brackets. + +FORCE_LOCAL_INCLUDES = NO + # If the INLINE_INFO tag is set to YES (the default) then a tag [inline] # is inserted in the documentation for inline members. @@ -346,6 +411,16 @@ SORT_MEMBER_DOCS = NO SORT_BRIEF_DOCS = NO +# If the SORT_MEMBERS_CTORS_1ST tag is set to YES then doxygen will sort the (brief and detailed) documentation of class members so that constructors and destructors are listed first. If set to NO (the default) the constructors will appear in the respective orders defined by SORT_MEMBER_DOCS and SORT_BRIEF_DOCS. This tag will be ignored for brief docs if SORT_BRIEF_DOCS is set to NO and ignored for detailed docs if SORT_MEMBER_DOCS is set to NO. + +SORT_MEMBERS_CTORS_1ST = NO + +# If the SORT_GROUP_NAMES tag is set to YES then doxygen will sort the +# hierarchy of group names into alphabetical order. If set to NO (the default) +# the group names will appear in their defined order. + +SORT_GROUP_NAMES = NO + # If the SORT_BY_SCOPE_NAME tag is set to YES, the class list will be # sorted by fully-qualified names, including namespaces. If set to # NO (the default), the class list will be sorted only by class name, @@ -407,9 +482,22 @@ SHOW_USED_FILES = YES SHOW_DIRECTORIES = YES +# Set the SHOW_FILES tag to NO to disable the generation of the Files page. +# This will remove the Files entry from the Quick Index and from the +# Folder Tree View (if specified). The default is YES. + +SHOW_FILES = YES + +# Set the SHOW_NAMESPACES tag to NO to disable the generation of the +# Namespaces page. +# This will remove the Namespaces entry from the Quick Index +# and from the Folder Tree View (if specified). The default is YES. + +SHOW_NAMESPACES = YES + # The FILE_VERSION_FILTER tag can be used to specify a program or script that -# doxygen should invoke to get the current version for each file (typically from the -# version control system). Doxygen will invoke the program by executing (via +# doxygen should invoke to get the current version for each file (typically from +# the version control system). Doxygen will invoke the program by executing (via # popen()) the command , where is the value of # the FILE_VERSION_FILTER tag, and is the name of an input file # provided by doxygen. Whatever the program writes to standard output @@ -417,6 +505,15 @@ SHOW_DIRECTORIES = YES FILE_VERSION_FILTER = +# The LAYOUT_FILE tag can be used to specify a layout file which will be parsed by +# doxygen. The layout file controls the global structure of the generated output files +# in an output format independent way. The create the layout file that represents +# doxygen's defaults, run doxygen with the -l option. You can optionally specify a +# file name after the option, if omitted DoxygenLayout.xml will be used as the name +# of the layout file. + +LAYOUT_FILE = + #--------------------------------------------------------------------------- # configuration options related to warning and progress messages #--------------------------------------------------------------------------- @@ -484,10 +581,11 @@ WARN_LOGFILE = # limit input for testing purposes INPUT = $(WM_PROJECT_DIR)/src/OpenFOAM/global -# This tag can be used to specify the character encoding of the source files that -# doxygen parses. Internally doxygen uses the UTF-8 encoding, which is also the default -# input encoding. Doxygen uses libiconv (or the iconv built into libc) for the transcoding. -# See http://www.gnu.org/software/libiconv for the list of possible encodings. +# This tag can be used to specify the character encoding of the source files +# that doxygen parses. Internally doxygen uses the UTF-8 encoding, which is +# also the default input encoding. Doxygen uses libiconv (or the iconv built +# into libc) for the transcoding. See http://www.gnu.org/software/libiconv for +# the list of possible encodings. INPUT_ENCODING = UTF-8 @@ -496,9 +594,10 @@ INPUT_ENCODING = UTF-8 # and *.h) to filter out the source-files in the directories. If left # blank the following patterns are tested: # *.c *.cc *.cxx *.cpp *.c++ *.java *.ii *.ixx *.ipp *.i++ *.inl *.h *.hh *.hxx -# *.hpp *.h++ *.idl *.odl *.cs *.php *.php3 *.inc *.m *.mm *.py +# *.hpp *.h++ *.idl *.odl *.cs *.php *.php3 *.inc *.m *.mm *.py *.f90 -FILE_PATTERNS = *.H *.C +FILE_PATTERNS = *.H \ + *.C # The RECURSIVE tag can be used to turn specify whether or not subdirectories # should be searched for input files as well. Possible values are YES and NO. @@ -524,14 +623,14 @@ EXCLUDE_SYMLINKS = NO # against the file with absolute path, so to exclude all test directories # for example use the pattern */test/* -EXCLUDE_PATTERNS = */lnInclude/* \ +EXCLUDE_PATTERNS = */lnInclude/* \ */t/* - # The EXCLUDE_SYMBOLS tag can be used to specify one or more symbol names -# (namespaces, classes, functions, etc.) that should be excluded from the output. -# The symbol name can be a fully qualified name, a word, or if the wildcard * is used, -# a substring. Examples: ANamespace, AClass, AClass::ANamespace, ANamespace::*Test +# (namespaces, classes, functions, etc.) that should be excluded from the +# output. The symbol name can be a fully qualified name, a word, or if the +# wildcard * is used, a substring. Examples: ANamespace, AClass, +# AClass::ANamespace, ANamespace::*Test EXCLUDE_SYMBOLS = @@ -541,7 +640,6 @@ EXCLUDE_SYMBOLS = EXAMPLE_PATH = - # If the value of the EXAMPLE_PATH tag contains directories, you can use the # EXAMPLE_PATTERNS tag to specify one or more wildcard pattern (like *.cpp # and *.h) to filter out the source-files in the directories. If left @@ -567,14 +665,17 @@ IMAGE_PATH = # by executing (via popen()) the command , where # is the value of the INPUT_FILTER tag, and is the name of an # input file. Doxygen will then use the output that the filter program writes -# to standard output. If FILTER_PATTERNS is specified, this tag will be +# to standard output. +# If FILTER_PATTERNS is specified, this tag will be # ignored. INPUT_FILTER = doxyFilt # The FILTER_PATTERNS tag can be used to specify filters on a per file pattern -# basis. Doxygen will compare the file name with each pattern and apply the -# filter if there is a match. The filters are a list of the form: +# basis. +# Doxygen will compare the file name with each pattern and apply the +# filter if there is a match. +# The filters are a list of the form: # pattern=filter (like *.cpp=my_cpp_filter). See INPUT_FILTER for further # info on how filters are used. If FILTER_PATTERNS is empty, INPUT_FILTER # is applied to all files. @@ -594,9 +695,7 @@ FILTER_SOURCE_FILES = NO # If the SOURCE_BROWSER tag is set to YES then a list of source files will # be generated. Documented entities will be cross-referenced with these sources. # Note: To get rid of all source code in the generated output, make sure also -# VERBATIM_HEADERS is set to NO. If you have enabled CALL_GRAPH or CALLER_GRAPH -# then you must also enable this option. If you don't then doxygen will produce -# a warning and turn it on anyway +# VERBATIM_HEADERS is set to NO. SOURCE_BROWSER = YES @@ -611,13 +710,13 @@ INLINE_SOURCES = NO STRIP_CODE_COMMENTS = YES -# If the REFERENCED_BY_RELATION tag is set to YES (the default) +# If the REFERENCED_BY_RELATION tag is set to YES # then for each documented function all documented # functions referencing it will be listed. REFERENCED_BY_RELATION = YES -# If the REFERENCES_RELATION tag is set to YES (the default) +# If the REFERENCES_RELATION tag is set to YES # then for each documented function all documented entities # called/used by that function will be listed. @@ -626,7 +725,8 @@ REFERENCES_RELATION = YES # If the REFERENCES_LINK_SOURCE tag is set to YES (the default) # and SOURCE_BROWSER tag is set to YES, then the hyperlinks from # functions in REFERENCES_RELATION and REFERENCED_BY_RELATION lists will -# link to the source code. Otherwise they will link to the documentstion. +# link to the source code. +# Otherwise they will link to the documentation. REFERENCES_LINK_SOURCE = YES @@ -676,6 +776,11 @@ IGNORE_PREFIX = GENERATE_HTML = YES +# If the HTML_FOOTER_DESCRIPTION tag is set to YES, Doxygen will +# add generated date, project name and doxygen version to HTML footer. + +HTML_FOOTER_DESCRIPTION= NO + # The HTML_OUTPUT tag is used to specify where the HTML docs will be put. # If a relative path is entered the value of OUTPUT_DIRECTORY will be # put in front of it. If left blank `html' will be used as the default path. @@ -709,19 +814,18 @@ HTML_FOOTER = $(WM_PROJECT_DIR)/doc/doxygen/_Footer HTML_STYLESHEET = +# If the HTML_TIMESTAMP tag is set to YES then the footer of each generated HTML +# page will contain the date and time when the page was generated. Setting +# this to NO can help when comparing the output of multiple runs. + +HTML_TIMESTAMP = NO + # If the HTML_ALIGN_MEMBERS tag is set to YES, the members of classes, # files or namespaces will be aligned in HTML using tables. If set to # NO a bullet list will be used. HTML_ALIGN_MEMBERS = YES -# If the GENERATE_HTMLHELP tag is set to YES, additional index files -# will be generated that can be used as input for tools like the -# Microsoft HTML help workshop to generate a compressed HTML help file (.chm) -# of the generated HTML documentation. - -GENERATE_HTMLHELP = NO - # If the HTML_DYNAMIC_SECTIONS tag is set to YES then the generated HTML # documentation will contain sections that can be hidden and shown after the # page has loaded. For this to work a browser that supports @@ -730,6 +834,39 @@ GENERATE_HTMLHELP = NO HTML_DYNAMIC_SECTIONS = NO +# If the GENERATE_DOCSET tag is set to YES, additional index files +# will be generated that can be used as input for Apple's Xcode 3 +# integrated development environment, introduced with OSX 10.5 (Leopard). +# To create a documentation set, doxygen will generate a Makefile in the +# HTML output directory. Running make will produce the docset in that +# directory and running "make install" will install the docset in +# ~/Library/Developer/Shared/Documentation/DocSets so that Xcode will find +# it at startup. +# See http://developer.apple.com/tools/creatingdocsetswithdoxygen.html for more information. + +GENERATE_DOCSET = NO + +# When GENERATE_DOCSET tag is set to YES, this tag determines the name of the +# feed. A documentation feed provides an umbrella under which multiple +# documentation sets from a single provider (such as a company or product suite) +# can be grouped. + +DOCSET_FEEDNAME = "Doxygen generated docs" + +# When GENERATE_DOCSET tag is set to YES, this tag specifies a string that +# should uniquely identify the documentation set bundle. This should be a +# reverse domain-name style string, e.g. com.mycompany.MyDocSet. Doxygen +# will append .docset to the name. + +DOCSET_BUNDLE_ID = org.doxygen.Project + +# If the GENERATE_HTMLHELP tag is set to YES, additional index files +# will be generated that can be used as input for tools like the +# Microsoft HTML help workshop to generate a compiled HTML help file (.chm) +# of the generated HTML documentation. + +GENERATE_HTMLHELP = NO + # If the GENERATE_HTMLHELP tag is set to YES, the CHM_FILE tag can # be used to specify the file name of the resulting .chm file. You # can add a path in front of the file if the result should not be @@ -750,6 +887,12 @@ HHC_LOCATION = GENERATE_CHI = NO +# If the GENERATE_HTMLHELP tag is set to YES, the CHM_INDEX_ENCODING +# is used to encode HtmlHelp index (hhk), content (hhc) and project file +# content. + +CHM_INDEX_ENCODING = + # If the GENERATE_HTMLHELP tag is set to YES, the BINARY_TOC flag # controls whether a binary table of contents is generated (YES) or a # normal table of contents (NO) in the .chm file. @@ -761,6 +904,71 @@ BINARY_TOC = NO TOC_EXPAND = NO +# If the GENERATE_QHP tag is set to YES and both QHP_NAMESPACE and QHP_VIRTUAL_FOLDER +# are set, an additional index file will be generated that can be used as input for +# Qt's qhelpgenerator to generate a Qt Compressed Help (.qch) of the generated +# HTML documentation. + +GENERATE_QHP = NO + +# If the QHG_LOCATION tag is specified, the QCH_FILE tag can +# be used to specify the file name of the resulting .qch file. +# The path specified is relative to the HTML output folder. + +QCH_FILE = + +# The QHP_NAMESPACE tag specifies the namespace to use when generating +# Qt Help Project output. For more information please see +# http://doc.trolltech.com/qthelpproject.html#namespace + +QHP_NAMESPACE = org.doxygen.Project + +# The QHP_VIRTUAL_FOLDER tag specifies the namespace to use when generating +# Qt Help Project output. For more information please see +# http://doc.trolltech.com/qthelpproject.html#virtual-folders + +QHP_VIRTUAL_FOLDER = doc + +# If QHP_CUST_FILTER_NAME is set, it specifies the name of a custom filter to add. +# For more information please see +# http://doc.trolltech.com/qthelpproject.html#custom-filters + +QHP_CUST_FILTER_NAME = + +# The QHP_CUST_FILT_ATTRS tag specifies the list of the attributes of the custom filter to add.For more information please see +# Qt Help Project / Custom Filters. + +QHP_CUST_FILTER_ATTRS = + +# The QHP_SECT_FILTER_ATTRS tag specifies the list of the attributes this project's +# filter section matches. +# Qt Help Project / Filter Attributes. + +QHP_SECT_FILTER_ATTRS = + +# If the GENERATE_QHP tag is set to YES, the QHG_LOCATION tag can +# be used to specify the location of Qt's qhelpgenerator. +# If non-empty doxygen will try to run qhelpgenerator on the generated +# .qhp file. + +QHG_LOCATION = + +# If the GENERATE_ECLIPSEHELP tag is set to YES, additional index files +# will be generated, which together with the HTML files, form an Eclipse help +# plugin. To install this plugin and make it available under the help contents +# menu in Eclipse, the contents of the directory containing the HTML and XML +# files needs to be copied into the plugins directory of eclipse. The name of +# the directory within the plugins directory should be the same as +# the ECLIPSE_DOC_ID value. After copying Eclipse needs to be restarted before the help appears. + +GENERATE_ECLIPSEHELP = NO + +# A unique identifier for the eclipse help plugin. When installing the plugin +# the directory name containing the HTML and XML files should also have +# this name. + +ECLIPSE_DOC_ID = org.doxygen.Project + # The DISABLE_INDEX tag can be used to turn on/off the condensed index at # top of each HTML page. The value NO (the default) enables the index and # the value YES disables it. @@ -772,29 +980,54 @@ DISABLE_INDEX = NO ENUM_VALUES_PER_LINE = 4 -# If the GENERATE_TREEVIEW tag is set to YES, a side panel will be -# generated containing a tree-like index structure (just like the one that +# The GENERATE_TREEVIEW tag is used to specify whether a tree-like index +# structure should be generated to display hierarchical information. +# If the tag value is set to YES, a side panel will be generated +# containing a tree-like index structure (just like the one that # is generated for HTML Help). For this to work a browser that supports -# JavaScript, DHTML, CSS and frames is required (for instance Mozilla 1.0+, -# Netscape 6.0+, Internet explorer 5.0+, or Konqueror). Windows users are -# probably better off using the HTML help feature. +# JavaScript, DHTML, CSS and frames is required (i.e. any modern browser). +# Windows users are probably better off using the HTML help feature. GENERATE_TREEVIEW = NO +# By enabling USE_INLINE_TREES, doxygen will generate the Groups, Directories, +# and Class Hierarchy pages using a tree view instead of an ordered list. + +USE_INLINE_TREES = NO + # If the treeview is enabled (see GENERATE_TREEVIEW) then this tag can be # used to set the initial width (in pixels) of the frame in which the tree # is shown. TREEVIEW_WIDTH = 250 +# Use this tag to change the font size of Latex formulas included +# as images in the HTML documentation. The default is 10. Note that +# when you change the font size after a successful doxygen run you need +# to manually remove any form_*.png images from the HTML output directory +# to force them to be regenerated. + +FORMULA_FONTSIZE = 10 + +# When the SEARCHENGINE tag is enabled doxygen will generate a search box for the HTML output. The underlying search engine uses javascript +# and DHTML and should work on any modern browser. Note that when using HTML help (GENERATE_HTMLHELP), Qt help (GENERATE_QHP), or docsets (GENERATE_DOCSET) there is already a search function so this one should +# typically be disabled. For large projects the javascript based search engine +# can be slow, then enabling SERVER_BASED_SEARCH may provide a better solution. + +SEARCHENGINE = YES + +# When the SERVER_BASED_SEARCH tag is enabled the search engine will be implemented using a PHP enabled web server instead of at the web client using Javascript. Doxygen will generate the search PHP script and index +# file to put on the web server. The advantage of the server based approach is that it scales better to large projects and allows full text search. The disadvances is that it is more difficult to setup +# and does not have live searching capabilities. + +SERVER_BASED_SEARCH = NO +# old default +# SERVER_BASED_SEARCH = YES + #--------------------------------------------------------------------------- # configuration options related to the LaTeX output #--------------------------------------------------------------------------- -# Path for OpenCFD LaTeX macros - -@INCLUDE_PATH = $(WM_PROJECT_DIR)/doc/Doxygen/Macros/ - # If the GENERATE_LATEX tag is set to YES (the default) Doxygen will # generate Latex output. @@ -808,6 +1041,9 @@ LATEX_OUTPUT = latex # The LATEX_CMD_NAME tag can be used to specify the LaTeX command name to be # invoked. If left blank `latex' will be used as the default command name. +# Note that when enabling USE_PDFLATEX this option is only used for +# generating bitmaps for formulas in the HTML output, but not in the +# Makefile that is written to the output directory. LATEX_CMD_NAME = latex @@ -867,6 +1103,10 @@ LATEX_BATCHMODE = NO LATEX_HIDE_INDICES = NO +# If LATEX_SOURCE_CODE is set to YES then doxygen will include source code with syntax highlighting in the LaTeX output. Note that which sources are shown also depends on other settings such as SOURCE_BROWSER. + +LATEX_SOURCE_CODE = NO + #--------------------------------------------------------------------------- # configuration options related to the RTF output #--------------------------------------------------------------------------- @@ -1003,8 +1243,10 @@ GENERATE_PERLMOD = NO PERLMOD_LATEX = NO # If the PERLMOD_PRETTY tag is set to YES the Perl module output will be -# nicely formatted so it can be parsed by a human reader. This is useful -# if you want to understand what is going on. On the other hand, if this +# nicely formatted so it can be parsed by a human reader. +# This is useful +# if you want to understand what is going on. +# On the other hand, if this # tag is set to NO the size of the Perl module output will be much smaller # and Perl will parse it just the same. @@ -1091,9 +1333,11 @@ SKIP_FUNCTION_MACROS = YES # Optionally an initial location of the external documentation # can be added for each tagfile. The format of a tag file without # this location is as follows: -# TAGFILES = file1 file2 ... +# +# TAGFILES = file1 file2 ... # Adding location for the tag files is done as follows: -# TAGFILES = file1=loc1 "file2 = loc2" ... +# +# TAGFILES = file1=loc1 "file2 = loc2" ... # where "loc1" and "loc2" can be relative or absolute paths or # URLs. If a location is present for each tag, the installdox tool # does not have to be run to correct the links. @@ -1140,10 +1384,11 @@ PERL_PATH = /usr/bin/perl CLASS_DIAGRAMS = YES # You can define message sequence charts within doxygen comments using the \msc -# command. Doxygen will then run the mscgen tool (see http://www.mcternan.me.uk/mscgen/) to -# produce the chart and insert it in the documentation. The MSCGEN_PATH tag allows you to -# specify the directory where the mscgen tool resides. If left empty the tool is assumed to -# be found in the default search path. +# command. Doxygen will then run the mscgen tool (see +# http://www.mcternan.me.uk/mscgen/) to produce the chart and insert it in the +# documentation. The MSCGEN_PATH tag allows you to specify the directory where +# the mscgen tool resides. If left empty the tool is assumed to be found in the +# default search path. MSCGEN_PATH = @@ -1160,6 +1405,29 @@ HIDE_UNDOC_RELATIONS = YES HAVE_DOT = YES +# By default doxygen will write a font called FreeSans.ttf to the output +# directory and reference it in all dot files that doxygen generates. This +# font does not include all possible unicode characters however, so when you need +# these (or just want a differently looking font) you can specify the font name +# using DOT_FONTNAME. You need need to make sure dot is able to find the font, +# which can be done by putting it in a standard location or by setting the +# DOTFONTPATH environment variable or by setting DOT_FONTPATH to the directory +# containing the font. + +DOT_FONTNAME = FreeSans + +# The DOT_FONTSIZE tag can be used to set the size of the font of dot graphs. +# The default size is 10pt. + +DOT_FONTSIZE = 10 + +# By default doxygen will tell dot to use the output directory to look for the +# FreeSans.ttf font (which doxygen will put there itself). If you specify a +# different font using DOT_FONTNAME you can set the path where dot +# can find it using this tag. + +DOT_FONTPATH = + # If the CLASS_GRAPH and HAVE_DOT tags are set to YES then doxygen # will generate a graph for each documented class showing the direct and # indirect inheritance relations. Setting this tag to YES will force the @@ -1204,19 +1472,19 @@ INCLUDE_GRAPH = YES INCLUDED_BY_GRAPH = YES -# If the CALL_GRAPH, SOURCE_BROWSER and HAVE_DOT tags are set to YES then doxygen will -# generate a call dependency graph for every global function or class method. -# Note that enabling this option will significantly increase the time of a run. -# So in most cases it will be better to enable call graphs for selected -# functions only using the \callgraph command. +# If the CALL_GRAPH and HAVE_DOT options are set to YES then +# doxygen will generate a call dependency graph for every global function +# or class method. Note that enabling this option will significantly increase +# the time of a run. So in most cases it will be better to enable call graphs +# for selected functions only using the \callgraph command. CALL_GRAPH = YES -# If the CALLER_GRAPH, SOURCE_BROWSER and HAVE_DOT tags are set to YES then doxygen will -# generate a caller dependency graph for every global function or class method. -# Note that enabling this option will significantly increase the time of a run. -# So in most cases it will be better to enable caller graphs for selected -# functions only using the \callergraph command. +# If the CALLER_GRAPH and HAVE_DOT tags are set to YES then +# doxygen will generate a caller dependency graph for every global function +# or class method. Note that enabling this option will significantly increase +# the time of a run. So in most cases it will be better to enable caller +# graphs for selected functions only using the \callergraph command. CALLER_GRAPH = YES @@ -1249,12 +1517,12 @@ DOT_PATH = DOTFILE_DIRS = -# The MAX_DOT_GRAPH_MAX_NODES tag can be used to set the maximum number of +# The DOT_GRAPH_MAX_NODES tag can be used to set the maximum number of # nodes that will be shown in the graph. If the number of nodes in a graph # becomes larger than this value, doxygen will truncate the graph, which is -# visualized by representing a node as a red box. Note that if the number -# of direct children of the root node in a graph is already larger than -# MAX_DOT_GRAPH_NOTES then the graph will not be shown at all. Also note +# visualized by representing a node as a red box. Note that doxygen if the +# number of direct children of the root node in a graph is already larger than +# DOT_GRAPH_MAX_NODES then the graph will not be shown at all. Also note # that the size of a graph can be further restricted by MAX_DOT_GRAPH_DEPTH. DOT_GRAPH_MAX_NODES = 50 @@ -1270,10 +1538,10 @@ DOT_GRAPH_MAX_NODES = 50 MAX_DOT_GRAPH_DEPTH = 3 # Set the DOT_TRANSPARENT tag to YES to generate images with a transparent -# background. This is disabled by default, which results in a white background. -# Warning: Depending on the platform used, enabling this option may lead to -# badly anti-aliased labels on the edges of a graph (i.e. they become hard to -# read). +# background. This is disabled by default, because dot on Windows does not +# seem to support this out of the box. Warning: Depending on the platform used, +# enabling this option may lead to badly anti-aliased labels on the edges of +# a graph (i.e. they become hard to read). DOT_TRANSPARENT = YES @@ -1295,12 +1563,3 @@ GENERATE_LEGEND = YES # the various graphs. DOT_CLEANUP = YES - -#--------------------------------------------------------------------------- -# Configuration::additions related to the search engine -#--------------------------------------------------------------------------- - -# The SEARCHENGINE tag specifies whether or not a search engine should be -# used. If set to NO the values of all tags below this one will be ignored. - -SEARCHENGINE = YES From 9c32ce1016a7fc438754f50505e580e8c212b38e Mon Sep 17 00:00:00 2001 From: Mark Olesen Date: Fri, 23 Apr 2010 18:35:55 +0200 Subject: [PATCH 03/57] STYLE: use forAll macro in more places, avoid LF-CR endings --- .../combustion/dieselEngineFoam/YEqn.H | 2 +- .../combustion/dieselEngineFoam/rhoEqn.H | 2 +- .../solvers/combustion/reactingFoam/YEqn.H | 2 +- .../solvers/combustion/rhoReactingFoam/YEqn.H | 2 +- .../incompressible/pimpleDyMFoam/correctPhi.H | 2 +- .../lagrangian/reactingParcelFilmFoam/YEqn.H | 2 +- .../multiphase/bubbleFoam/createPhia.H | 2 +- .../multiphase/bubbleFoam/createPhib.H | 2 +- .../compressibleInterDyMFoam/createFields.H | 2 +- .../multiphase/interDyMFoam/createFields.H | 2 +- .../solvers/multiphase/interFoam/correctPhi.H | 2 +- .../interPhaseChangeFoam/correctPhi.H | 2 +- .../solvers/multiphase/settlingFoam/pmhEqn.H | 2 +- .../phaseModel/phaseModel/phaseModel.C | 2 +- .../foamToEnsight/foamToEnsight.C | 4 +- .../dataConversion/foamToGMV/gmvOutput.H | 6 +- .../foamToGMV/gmvOutputHeader.H | 2 +- .../USERD_get_gold_variable_info.H | 2 +- .../USERD_get_part_element_ids_by_type.H | 2 +- .../USERD_get_part_elements_by_type.H | 2 +- .../ensightFoamReader/USERD_set_filenames.H | 6 +- .../ensightFoamReader/getLagrangianScalar.H | 2 +- .../ensightFoamReader/getLagrangianVector.H | 2 +- .../ensightFoamReader/getPatchFieldScalar.H | 8 +- .../ensightFoamReader/getPatchFieldTensor.H | 6 +- .../ensightFoamReader/getPatchFieldVector.H | 6 +- .../SpaldingsLaw/SpaldingsLaw.C | 2 +- .../primitiveEntry/primitiveEntryIO.C | 2 +- .../PrimitivePatchInterpolation.C | 2 +- .../matrices/scalarMatrices/SVD/SVD.C | 2 +- .../primitiveMesh/primitivePatch/walkPatch.C | 2 +- .../attachDetach/attachInterface.C | 2 +- src/dynamicMesh/polyMeshAdder/polyMeshAdder.C | 4 +- .../polyTopoChange/addPatchCellLayer.C | 4 +- .../repatchPolyTopoChanger.C | 2 +- .../enrichedPatch/enrichedPatchFaces.C | 4 +- .../quadraticFitSnGradData.C | 7 +- .../schemes/FitData/FitData.C | 2 +- .../dieselSpray/parcel/setRelaxationTimes.C | 2 +- .../autoHexMesh/shellSurfaces/shellSurfaces.C | 2 +- src/meshTools/octree/treeLeaf.C | 2 +- src/randomProcesses/fft/fftRenumber.C | 2 +- src/sampling/sampledSet/face/faceOnlySet.C | 2 +- src/sampling/sampledSet/uniform/uniformSet.C | 4 +- .../kinematicSingleLayer.C | 2124 ++++++++--------- .../kinematicSingleLayer.H | 964 ++++---- .../kinematicSingleLayerTemplates.C | 124 +- .../thermoSingleLayer/thermoSingleLayer.C | 2 +- .../ODEChemistryModel/ODEChemistryModel.C | 6 +- .../EulerImplicit/EulerImplicit.C | 6 +- .../chemistryModel/chemistrySolver/ode/ode.C | 2 +- .../chemistrySolver/sequential/sequential.C | 6 +- .../reaction/Reactions/Reaction/Reaction.C | 2 +- .../faceTriangulation/faceTriangulation.C | 2 +- src/triSurface/triSurface/triSurface.C | 6 +- .../mixer/constant/polyMesh/blockMeshDict | 204 +- 56 files changed, 1784 insertions(+), 1789 deletions(-) diff --git a/applications/solvers/combustion/dieselEngineFoam/YEqn.H b/applications/solvers/combustion/dieselEngineFoam/YEqn.H index 9d46c0d611..f6251d1c30 100644 --- a/applications/solvers/combustion/dieselEngineFoam/YEqn.H +++ b/applications/solvers/combustion/dieselEngineFoam/YEqn.H @@ -14,7 +14,7 @@ tmp > mvConvection label inertIndex = -1; volScalarField Yt = 0.0*Y[0]; - for (label i=0; i > mvConvection label inertIndex = -1; volScalarField Yt = 0.0*Y[0]; - for (label i=0; i > mvConvection label inertIndex = -1; volScalarField Yt = 0.0*Y[0]; - for (label i=0; i > mvConvection label inertIndex = -1; volScalarField Yt = 0.0*Y[0]; - for (label i=0; i(Ua.boundaryField()[i])) { diff --git a/applications/solvers/multiphase/bubbleFoam/createPhib.H b/applications/solvers/multiphase/bubbleFoam/createPhib.H index 77bb467063..bdf4c46bcc 100644 --- a/applications/solvers/multiphase/bubbleFoam/createPhib.H +++ b/applications/solvers/multiphase/bubbleFoam/createPhib.H @@ -36,7 +36,7 @@ calculatedFvPatchScalarField::typeName ); - for (label i=0; i(Ub.boundaryField()[i])) { diff --git a/applications/solvers/multiphase/compressibleInterDyMFoam/createFields.H b/applications/solvers/multiphase/compressibleInterDyMFoam/createFields.H index 3da1b5e9c1..9d3be93d0e 100644 --- a/applications/solvers/multiphase/compressibleInterDyMFoam/createFields.H +++ b/applications/solvers/multiphase/compressibleInterDyMFoam/createFields.H @@ -135,7 +135,7 @@ zeroGradientFvPatchScalarField::typeName ); - for (label i=0; i(U_.boundaryField()[i])) { diff --git a/applications/utilities/postProcessing/dataConversion/foamToEnsight/foamToEnsight.C b/applications/utilities/postProcessing/dataConversion/foamToEnsight/foamToEnsight.C index 29bb06782f..dff5d8b8c8 100644 --- a/applications/utilities/postProcessing/dataConversion/foamToEnsight/foamToEnsight.C +++ b/applications/utilities/postProcessing/dataConversion/foamToEnsight/foamToEnsight.C @@ -341,9 +341,9 @@ int main(int argc, char *argv[]) { wordList fieldNames = objects.names(volFieldTypes[i]); - for (label j=0; jsize(); n++) + forAll(*sprayPtr, n) { elemid_array[n] = n + 1; } diff --git a/applications/utilities/postProcessing/graphics/ensightFoamReader/USERD_get_part_elements_by_type.H b/applications/utilities/postProcessing/graphics/ensightFoamReader/USERD_get_part_elements_by_type.H index d90f3643fc..c9fd0d389f 100644 --- a/applications/utilities/postProcessing/graphics/ensightFoamReader/USERD_get_part_elements_by_type.H +++ b/applications/utilities/postProcessing/graphics/ensightFoamReader/USERD_get_part_elements_by_type.H @@ -234,7 +234,7 @@ int USERD_get_part_elements_by_type } else if (part_number == nPatches+2) { - for (label n=0; nsize(); n++) + forAll(*sprayPtr, n) { conn_array[n][0] = n + 1; } diff --git a/applications/utilities/postProcessing/graphics/ensightFoamReader/USERD_set_filenames.H b/applications/utilities/postProcessing/graphics/ensightFoamReader/USERD_set_filenames.H index ccaad12cb3..a85c942a08 100644 --- a/applications/utilities/postProcessing/graphics/ensightFoamReader/USERD_set_filenames.H +++ b/applications/utilities/postProcessing/graphics/ensightFoamReader/USERD_set_filenames.H @@ -99,7 +99,7 @@ int USERD_set_filenames label nVar = 0; wordList scalars = objects.names(scalarName); - for (label n=0; n= 0) if (s.size()) { - for (label n = 0; n < s.size(); n++) + forAll(s, n) { var_array[n+1] = s[n]; } diff --git a/applications/utilities/postProcessing/graphics/ensightFoamReader/getLagrangianVector.H b/applications/utilities/postProcessing/graphics/ensightFoamReader/getLagrangianVector.H index c6548c1408..31e4bc729c 100644 --- a/applications/utilities/postProcessing/graphics/ensightFoamReader/getLagrangianVector.H +++ b/applications/utilities/postProcessing/graphics/ensightFoamReader/getLagrangianVector.H @@ -22,7 +22,7 @@ if (nVar >= 0) if (v.size()) { - for (label n = 0; n < v.size(); n++) + forAll(v, n) { if (component == 0) { diff --git a/applications/utilities/postProcessing/graphics/ensightFoamReader/getPatchFieldScalar.H b/applications/utilities/postProcessing/graphics/ensightFoamReader/getPatchFieldScalar.H index 0c91c665e6..46f4f46d8d 100644 --- a/applications/utilities/postProcessing/graphics/ensightFoamReader/getPatchFieldScalar.H +++ b/applications/utilities/postProcessing/graphics/ensightFoamReader/getPatchFieldScalar.H @@ -39,7 +39,7 @@ const polyBoundaryMesh& bMesh = meshPtr->boundaryMesh(); if (which_type == Z_TRI03) { label counter = 1; - for (label facei=0; faceiboundaryMesh(); if (which_type == Z_TRI03) { label counter = 1; - for (label n=0; nboundaryMesh(); if (which_type == Z_TRI03) { label counter = 1; - for (label facei=0; facei::makeFaceToEdgeWeights() const faceToEdgeWeightsPtr_ = new scalarList(patch_.nInternalEdges()); scalarList& weights = *faceToEdgeWeightsPtr_; - for (label edgei = 0; edgei < weights.size(); edgei++) + forAll(weights, edgei) { vector P = faces[edgeFaces[edgei][0]].centre(points); vector N = faces[edgeFaces[edgei][1]].centre(points); diff --git a/src/OpenFOAM/matrices/scalarMatrices/SVD/SVD.C b/src/OpenFOAM/matrices/scalarMatrices/SVD/SVD.C index 841dbc7d0a..1d4716a222 100644 --- a/src/OpenFOAM/matrices/scalarMatrices/SVD/SVD.C +++ b/src/OpenFOAM/matrices/scalarMatrices/SVD/SVD.C @@ -363,7 +363,7 @@ Foam::SVD::SVD(const scalarRectangularMatrix& A, const scalar minCondition) // zero singular values that are less than minCondition*maxS const scalar minS = minCondition*S_[findMax(S_)]; - for (label i = 0; i < S_.size(); i++) + forAll(S_, i) { if (S_[i] <= minS) { diff --git a/src/OpenFOAM/meshes/primitiveMesh/primitivePatch/walkPatch.C b/src/OpenFOAM/meshes/primitiveMesh/primitivePatch/walkPatch.C index a94cf99ae4..956846fb94 100644 --- a/src/OpenFOAM/meshes/primitiveMesh/primitivePatch/walkPatch.C +++ b/src/OpenFOAM/meshes/primitiveMesh/primitivePatch/walkPatch.C @@ -153,7 +153,7 @@ void Foam::walkPatch::faceToFace indexInFace_.append(fp); // Visit neighbouring faces in order, starting at fp. - for (label i = 0; i < f.size(); i++) + forAll(f, i) { label fp1 = reverse_ ? f.rcIndex(fp) : f.fcIndex(fp); label nbr = getNeighbour(faceI, fp, f[fp], f[fp1]); diff --git a/src/dynamicMesh/attachDetach/attachInterface.C b/src/dynamicMesh/attachDetach/attachInterface.C index e195395e6a..8217d549be 100644 --- a/src/dynamicMesh/attachDetach/attachInterface.C +++ b/src/dynamicMesh/attachDetach/attachInterface.C @@ -88,7 +88,7 @@ void Foam::attachDetach::attachInterface // Pout << "Points to be mapped: " << removedPoints << endl; // Remove all faces from the slave patch - for (label i = 0; i < slavePatch.size(); i++) + forAll(slavePatch, i) { ref.setAction(polyRemoveFace(i + slavePatchStart)); // Pout << "Removing face " << i + slavePatchStart << endl; diff --git a/src/dynamicMesh/polyMeshAdder/polyMeshAdder.C b/src/dynamicMesh/polyMeshAdder/polyMeshAdder.C index 4eae7a7c69..76e0bd0f89 100644 --- a/src/dynamicMesh/polyMeshAdder/polyMeshAdder.C +++ b/src/dynamicMesh/polyMeshAdder/polyMeshAdder.C @@ -265,7 +265,7 @@ Foam::List Foam::polyMeshAdder::combinePatches // Copy patches0 with new sizes. First patches always come from // mesh0 and will always be present. - for (label patchI = 0; patchI < patches0.size(); patchI++) + forAll(patches0, patchI) { // Originates from mesh0. Clone with new size & filter out empty // patch. @@ -363,7 +363,7 @@ Foam::labelList Foam::polyMeshAdder::getFaceOrder labelList oldToNew(owner.size(), -1); // Leave boundary faces in order - for (label faceI = nInternalFaces; faceI < owner.size(); faceI++) + for (label faceI = nInternalFaces; faceI < owner.size(); ++faceI) { oldToNew[faceI] = faceI; } diff --git a/src/dynamicMesh/polyTopoChange/polyTopoChange/addPatchCellLayer.C b/src/dynamicMesh/polyTopoChange/polyTopoChange/addPatchCellLayer.C index 5d4ff5722f..9105db9023 100644 --- a/src/dynamicMesh/polyTopoChange/polyTopoChange/addPatchCellLayer.C +++ b/src/dynamicMesh/polyTopoChange/polyTopoChange/addPatchCellLayer.C @@ -915,7 +915,7 @@ void Foam::addPatchCellLayer::setRefinement vector disp = firstLayerDisp[patchPointI]; - for (label i = 0; i < addedPoints_[patchPointI].size(); i++) + forAll(addedPoints_[patchPointI], i) { pt += disp; @@ -1000,7 +1000,7 @@ void Foam::addPatchCellLayer::setRefinement face newFace(f.size()); - for (label i = 0; i < addedCells[patchFaceI].size(); i++) + forAll(addedCells[patchFaceI], i) { forAll(f, fp) { diff --git a/src/dynamicMesh/polyTopoChange/repatchPolyTopoChanger/repatchPolyTopoChanger.C b/src/dynamicMesh/polyTopoChange/repatchPolyTopoChanger/repatchPolyTopoChanger.C index 428f6e0e49..f5040a0d8e 100644 --- a/src/dynamicMesh/polyTopoChange/repatchPolyTopoChanger/repatchPolyTopoChanger.C +++ b/src/dynamicMesh/polyTopoChange/repatchPolyTopoChanger/repatchPolyTopoChanger.C @@ -262,7 +262,7 @@ void Foam::repatchPolyTopoChanger::changeAnchorPoint label fVert = fp; - for (label i = 0; i < f.size(); i++) + forAll(f, i) { newFace[i] = f[fVert++]; diff --git a/src/dynamicMesh/slidingInterface/enrichedPatch/enrichedPatchFaces.C b/src/dynamicMesh/slidingInterface/enrichedPatch/enrichedPatchFaces.C index f92963bb2c..1bc7f633dd 100644 --- a/src/dynamicMesh/slidingInterface/enrichedPatch/enrichedPatchFaces.C +++ b/src/dynamicMesh/slidingInterface/enrichedPatch/enrichedPatchFaces.C @@ -200,7 +200,7 @@ void Foam::enrichedPatch::calcEnrichedFaces // Go through the points and collect them based on // weights from lower to higher. This gives the // correct order of points along the edge. - for (label passI = 0; passI < edgePointWeights.size(); passI++) + forAll(edgePointWeights, passI) { // Max weight can only be one, so the sorting is // done by elimination. @@ -351,7 +351,7 @@ void Foam::enrichedPatch::calcEnrichedFaces // Go through the points and collect them based on // weights from lower to higher. This gives the // correct order of points along the edge. - for (label pass = 0; pass < edgePointWeights.size(); pass++) + forAll(edgePointWeights, passI) { // Max weight can only be one, so the sorting is // done by elimination. diff --git a/src/finiteVolume/finiteVolume/snGradSchemes/quadraticFitSnGrad/quadraticFitSnGradData.C b/src/finiteVolume/finiteVolume/snGradSchemes/quadraticFitSnGrad/quadraticFitSnGradData.C index 101acff876..dc93fbbfc1 100644 --- a/src/finiteVolume/finiteVolume/snGradSchemes/quadraticFitSnGrad/quadraticFitSnGradData.C +++ b/src/finiteVolume/finiteVolume/snGradSchemes/quadraticFitSnGrad/quadraticFitSnGradData.C @@ -31,10 +31,7 @@ License // * * * * * * * * * * * * * * Static Data Members * * * * * * * * * * * * * // -namespace Foam -{ - defineTypeNameAndDebug(quadraticFitSnGradData, 0); -} +defineTypeNameAndDebug(Foam::quadraticFitSnGradData, 0); // * * * * * * * * * * * * * * * * Constructors * * * * * * * * * * * * * * // @@ -205,7 +202,7 @@ Foam::label Foam::quadraticFitSnGradData::calcFit // calculate the matrix of the polynomial components scalarRectangularMatrix B(C.size(), minSize_, scalar(0)); - for (label ip = 0; ip < C.size(); ip++) + forAll(C, ip) { const point& p = C[ip]; diff --git a/src/finiteVolume/interpolation/surfaceInterpolation/schemes/FitData/FitData.C b/src/finiteVolume/interpolation/surfaceInterpolation/schemes/FitData/FitData.C index 69df844100..053c08b2f9 100644 --- a/src/finiteVolume/interpolation/surfaceInterpolation/schemes/FitData/FitData.C +++ b/src/finiteVolume/interpolation/surfaceInterpolation/schemes/FitData/FitData.C @@ -164,7 +164,7 @@ void Foam::FitData::calcFit // Matrix of the polynomial components scalarRectangularMatrix B(C.size(), minSize_, scalar(0)); - for (label ip = 0; ip < C.size(); ip++) + forAll(C, ip) { const point& p = C[ip]; diff --git a/src/lagrangian/dieselSpray/parcel/setRelaxationTimes.C b/src/lagrangian/dieselSpray/parcel/setRelaxationTimes.C index 7192e70ad1..698f347b03 100644 --- a/src/lagrangian/dieselSpray/parcel/setRelaxationTimes.C +++ b/src/lagrangian/dieselSpray/parcel/setRelaxationTimes.C @@ -258,7 +258,7 @@ void parcel::setRelaxationTimes scalar vapourSurfaceEnthalpy = 0.0; scalar vapourFarEnthalpy = 0.0; - for (label k = 0; k < sDB.gasProperties().size(); k++) + forAll(sDB.gasProperties(), k) { vapourSurfaceEnthalpy += sDB.composition().Y()[k][celli]*sDB.gasProperties()[k].H(tBoilingSurface); vapourFarEnthalpy += sDB.composition().Y()[k][celli]*sDB.gasProperties()[k].H(temperature); diff --git a/src/mesh/autoMesh/autoHexMesh/shellSurfaces/shellSurfaces.C b/src/mesh/autoMesh/autoHexMesh/shellSurfaces/shellSurfaces.C index bacbbd17b5..c957f32f64 100644 --- a/src/mesh/autoMesh/autoHexMesh/shellSurfaces/shellSurfaces.C +++ b/src/mesh/autoMesh/autoHexMesh/shellSurfaces/shellSurfaces.C @@ -177,7 +177,7 @@ void Foam::shellSurfaces::orient() boundBox shellBb(points[0], points[0]); // Assume surface is compact! - for (label i = 0; i < points.size(); i++) + forAll(points, i) { const point& pt = points[i]; shellBb.min() = min(shellBb.min(), pt); diff --git a/src/meshTools/octree/treeLeaf.C b/src/meshTools/octree/treeLeaf.C index 823594fb71..9f672f73fa 100644 --- a/src/meshTools/octree/treeLeaf.C +++ b/src/meshTools/octree/treeLeaf.C @@ -453,7 +453,7 @@ Foam::Ostream& Foam::operator<< (Ostream& os, const treeLeaf& leaf) { // Storage not trimmed os << token::SPACE << leaf.size() << token::SPACE << token::BEGIN_LIST; - for (label i = 0; i < leaf.size(); i++) + forAll(leaf, i) { os << token::SPACE << leaf.indices()[i]; } diff --git a/src/randomProcesses/fft/fftRenumber.C b/src/randomProcesses/fft/fftRenumber.C index c88dfb12c6..d18f19c6d6 100644 --- a/src/randomProcesses/fft/fftRenumber.C +++ b/src/randomProcesses/fft/fftRenumber.C @@ -115,7 +115,7 @@ void fftRenumber List renumData(data); label nnprod(1); - for (label i=0; i= startSegmentI; --i) + for (label i = samplingPts.size() - 1; i >= startSegmentI; --i) { samplingSegments.append(segmentI); } diff --git a/src/sampling/sampledSet/uniform/uniformSet.C b/src/sampling/sampledSet/uniform/uniformSet.C index 877ec14392..02e731e3e5 100644 --- a/src/sampling/sampledSet/uniform/uniformSet.C +++ b/src/sampling/sampledSet/uniform/uniformSet.C @@ -64,7 +64,7 @@ bool Foam::uniformSet::nextSample samplePt += offset; sampleI++; - for(; sampleI < nPoints_; sampleI++) + for (; sampleI < nPoints_; sampleI++) { scalar s = (samplePt - currentPt) & normOffset; @@ -328,7 +328,7 @@ void Foam::uniformSet::calcSamples ); // fill sampleSegments - for(label i = samplingPts.size() - 1; i >= startSegmentI; --i) + for (label i = samplingPts.size() - 1; i >= startSegmentI; --i) { samplingSegments.append(segmentI); } diff --git a/src/surfaceFilmModels/surfaceFilmModel/kinematicSingleLayer/kinematicSingleLayer.C b/src/surfaceFilmModels/surfaceFilmModel/kinematicSingleLayer/kinematicSingleLayer.C index 376d2cd199..090b1091ae 100644 --- a/src/surfaceFilmModels/surfaceFilmModel/kinematicSingleLayer/kinematicSingleLayer.C +++ b/src/surfaceFilmModels/surfaceFilmModel/kinematicSingleLayer/kinematicSingleLayer.C @@ -1,1062 +1,1062 @@ -/*---------------------------------------------------------------------------*\ - ========= | - \\ / F ield | OpenFOAM: The Open Source CFD Toolbox - \\ / O peration | - \\ / A nd | Copyright (C) 2009-2010 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 3 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, see . - -\*---------------------------------------------------------------------------*/ - -#include "kinematicSingleLayer.H" -#include "fvm.H" -#include "fvcDiv.H" -#include "fvcLaplacian.H" -#include "fvcSnGrad.H" -#include "fvcReconstruct.H" -#include "fvcVolumeIntegrate.H" -#include "addToRunTimeSelectionTable.H" -#include "directMappedWallPolyPatch.H" - -// Sub-models -#include "injectionModel.H" - -// * * * * * * * * * * * * * * Static Data Members * * * * * * * * * * * * * // - -namespace Foam -{ - namespace surfaceFilmModels - { - defineTypeNameAndDebug(kinematicSingleLayer, 0); - addToRunTimeSelectionTable - ( - surfaceFilmModel, - kinematicSingleLayer, - mesh - ); - } -} - - -// * * * * * * * * * * * * Protected Member Functions * * * * * * * * * * * // - -bool Foam::surfaceFilmModels::kinematicSingleLayer::read() -{ - if (surfaceFilmModel::read()) - { - const dictionary& solution = filmRegion_.solutionDict().subDict("PISO"); - solution.lookup("momentumPredictor") >> momentumPredictor_; - solution.lookup("nOuterCorr") >> nOuterCorr_; - solution.lookup("nCorr") >> nCorr_; - solution.lookup("nNonOrthCorr") >> nNonOrthCorr_; - - coeffs_.lookup("Cf") >> Cf_; - coeffs_.lookup("deltaStable") >> deltaStable_; - - return true; - } - else - { - return false; - } -} - - -void Foam::surfaceFilmModels::kinematicSingleLayer::initialise() -{ - if (debug) - { - Pout<< "kinematicSingleLayer::initialise()" << endl; - } - - label nBoundaryFaces = 0; - DynamicList
diff --git a/doc/doxygen/_Header b/doc/doxygen/_Header index a11df43510..e788da5f0d 100644 --- a/doc/doxygen/_Header +++ b/doc/doxygen/_Header @@ -5,8 +5,11 @@ OpenFOAM® programmer's C++ documentation - - + + + + +
- +

h3 { + margin-top: 0; +} + +.directory p { + margin: 0px; + white-space: nowrap; +} + +.directory div { + display: none; + margin: 0px; +} + +.directory img { + vertical-align: -30%; +} + +/* these are for tree view when not used as main index */ + +.directory-alt { + font-size: 100%; + font-weight: bold; +} + +.directory-alt h3 { + margin: 0px; + margin-top: 1em; + font-size: 11pt; +} + +.directory-alt > h3 { + margin-top: 0; +} + +.directory-alt p { + margin: 0px; + white-space: nowrap; +} + +.directory-alt div { + display: none; + margin: 0px; +} + +.directory-alt img { + vertical-align: -30%; +} + +/* @end */ + +address { + font-style: normal; + color: #333; +} + +table.doxtable { + border-collapse:collapse; +} + +table.doxtable td, table.doxtable th { + border: 1px solid #153788; + padding: 3px 7px 2px; +} + +table.doxtable th { + background-color: #254798; + color: #FFFFFF; + font-size: 110%; + padding-bottom: 4px; + padding-top: 5px; + text-align:left; +} + diff --git a/doc/doxygen/css/doxygen/doxygen.css b/doc/doxygen/css/doxygen/doxygen.css deleted file mode 100644 index d6aaf2804c..0000000000 --- a/doc/doxygen/css/doxygen/doxygen.css +++ /dev/null @@ -1,545 +0,0 @@ -/* The standard CSS for doxygen */ - -body, table, div, p, dl { - font-family: Lucida Grande, Verdana, Geneva, Arial, sans-serif; - font-size: 12px; -} - -/* @group Heading Levels */ - -h1 { - text-align: center; - font-size: 150%; -} - -h2 { - font-size: 120%; -} - -h3 { - font-size: 100%; -} - -dt { - font-weight: bold; -} - -div.multicol { - -moz-column-gap: 1em; - -webkit-column-gap: 1em; - -moz-column-count: 3; - -webkit-column-count: 3; -} - -p.startli, p.startdd, p.starttd { - margin-top: 2px; -} - -p.endli { - margin-bottom: 0px; -} - -p.enddd { - margin-bottom: 4px; -} - -p.endtd { - margin-bottom: 2px; -} - -/* @end */ - -caption { - font-weight: bold; -} - -span.legend { - font-size: 70%; - text-align: center; -} - -h3.version { - font-size: 90%; - text-align: center; -} - -div.qindex, div.navtab{ - background-color: #e8eef2; - border: 1px solid #84b0c7; - text-align: center; - margin: 2px; - padding: 2px; -} - -div.qindex, div.navpath { - width: 100%; - line-height: 140%; -} - -div.navtab { - margin-right: 15px; -} - -/* @group Link Styling */ - -a { - color: #153788; - font-weight: normal; - text-decoration: none; -} - -.contents a:visited { - color: #1b77c5; -} - -a:hover { - text-decoration: underline; -} - -a.qindex { - font-weight: bold; -} - -a.qindexHL { - font-weight: bold; - background-color: #6666cc; - color: #ffffff; - border: 1px double #9295C2; -} - -.contents a.qindexHL:visited { - color: #ffffff; -} - -a.el { - font-weight: bold; -} - -a.elRef { -} - -a.code { - color: #3030f0; -} - -a.codeRef { - color: #3030f0; -} - -/* @end */ - -dl.el { - margin-left: -1cm; -} - -.fragment { - font-family: monospace, fixed; - font-size: 105%; -} - -pre.fragment { - border: 1px solid #CCCCCC; - background-color: #f5f5f5; - padding: 4px 6px; - margin: 4px 8px 4px 2px; - overflow: auto; - word-wrap: break-word; - font-size: 9pt; - line-height: 125%; -} - -div.ah { - background-color: black; - font-weight: bold; - color: #ffffff; - margin-bottom: 3px; - margin-top: 3px -} - -div.groupHeader { - margin-left: 16px; - margin-top: 12px; - margin-bottom: 6px; - font-weight: bold; -} - -div.groupText { - margin-left: 16px; - font-style: italic; -} - -body { - background: white; - color: black; - margin-right: 20px; - margin-left: 20px; -} - -td.indexkey { - background-color: #e8eef2; - font-weight: bold; - border: 1px solid #CCCCCC; - margin: 2px 0px 2px 0; - padding: 2px 10px; -} - -td.indexvalue { - background-color: #e8eef2; - border: 1px solid #CCCCCC; - padding: 2px 10px; - margin: 2px 0px; -} - -tr.memlist { - background-color: #f0f0f0; -} - -p.formulaDsp { - text-align: center; -} - -img.formulaDsp { - -} - -img.formulaInl { - vertical-align: middle; -} - -div.center { - text-align: center; - margin-top: 0px; - margin-bottom: 0px; - padding: 0px; -} - -div.center img { - border: 0px; -} - -img.footer { - border: 0px; - vertical-align: middle; -} - -/* @group Code Colorization */ - -span.keyword { - color: #008000 -} - -span.keywordtype { - color: #604020 -} - -span.keywordflow { - color: #e08000 -} - -span.comment { - color: #800000 -} - -span.preprocessor { - color: #806020 -} - -span.stringliteral { - color: #002080 -} - -span.charliteral { - color: #008080 -} - -span.vhdldigit { - color: #ff00ff -} - -span.vhdlchar { - color: #000000 -} - -span.vhdlkeyword { - color: #700070 -} - -span.vhdllogic { - color: #ff0000 -} - -/* @end */ - -.search { - color: #003399; - font-weight: bold; -} - -form.search { - margin-bottom: 0px; - margin-top: 0px; -} - -input.search { - font-size: 75%; - color: #000080; - font-weight: normal; - background-color: #e8eef2; -} - -td.tiny { - font-size: 75%; -} - -.dirtab { - padding: 4px; - border-collapse: collapse; - border: 1px solid #84b0c7; -} - -th.dirtab { - background: #e8eef2; - font-weight: bold; -} - -hr { - height: 0px; - border: none; - border-top: 1px solid #666; -} - -hr.footer { - height: 1px; -} - -/* @group Member Descriptions */ - -.mdescLeft, .mdescRight, -.memItemLeft, .memItemRight, -.memTemplItemLeft, .memTemplItemRight, .memTemplParams { - background-color: #FAFAFA; - border: none; - margin: 4px; - padding: 1px 0 0 8px; -} - -.mdescLeft, .mdescRight { - padding: 0px 8px 4px 8px; - color: #555; -} - -.memItemLeft, .memItemRight, .memTemplParams { - border-top: 1px solid #ccc; -} - -.memItemLeft, .memTemplItemLeft { - white-space: nowrap; -} - -.memTemplParams { - color: #606060; - white-space: nowrap; -} - -/* @end */ - -/* @group Member Details */ - -/* Styles for detailed member documentation */ - -.memtemplate { - font-size: 80%; - color: #606060; - font-weight: normal; - margin-left: 3px; -} - -.memnav { - background-color: #e8eef2; - border: 1px solid #84b0c7; - text-align: center; - margin: 2px; - margin-right: 15px; - padding: 2px; -} - -.memitem { - padding: 0; - margin-bottom: 10px; -} - -.memname { - white-space: nowrap; - font-weight: bold; - margin-left: 6px; -} - -.memproto { - border-top: 1px solid #84b0c7; - border-left: 1px solid #84b0c7; - border-right: 1px solid #84b0c7; - padding: 0; - background-color: #d5e1e8; - font-weight: bold; - /* firefox specific markup */ - background-image: -moz-linear-gradient(rgba(228, 233, 245, 1.0) 0%, rgba(193, 205, 232, 1.0) 100%); - -moz-box-shadow: rgba(0, 0, 0, 0.15) 5px 5px 5px; - -moz-border-radius-topright: 8px; - -moz-border-radius-topleft: 8px; - /* webkit specific markup */ - background-image: -webkit-gradient(linear, 0% 0%, 0% 100%, from(rgba(228, 233, 245, 1.0)), to(rgba(193, 205, 232, 1.0))); - -webkit-box-shadow: 5px 5px 5px rgba(0, 0, 0, 0.15); - -webkit-border-top-right-radius: 8px; - -webkit-border-top-left-radius: 8px; - -} - -.memdoc { - border-bottom: 1px solid #84b0c7; - border-left: 1px solid #84b0c7; - border-right: 1px solid #84b0c7; - padding: 2px 5px; - background-color: #eef3f5; - border-top-width: 0; - /* firefox specific markup */ - -moz-border-radius-bottomleft: 8px; - -moz-border-radius-bottomright: 8px; - -moz-box-shadow: rgba(0, 0, 0, 0.15) 5px 5px 5px; - /* webkit specific markup */ - -webkit-border-bottom-left-radius: 8px; - -webkit-border-bottom-right-radius: 8px; - -webkit-box-shadow: 5px 5px 5px rgba(0, 0, 0, 0.15); -} - -.paramkey { - text-align: right; -} - -.paramtype { - white-space: nowrap; -} - -.paramname { - color: #602020; - white-space: nowrap; -} -.paramname em { - font-style: normal; -} - -/* @end */ - -/* @group Directory (tree) */ - -/* for the tree view */ - -.ftvtree { - font-family: sans-serif; - margin: 0.5em; -} - -/* these are for tree view when used as main index */ - -.directory { - font-size: 9pt; - font-weight: bold; -} - -.directory h3 { - margin: 0px; - margin-top: 1em; - font-size: 11pt; -} - -/* -The following two styles can be used to replace the root node title -with an image of your choice. Simply uncomment the next two styles, -specify the name of your image and be sure to set 'height' to the -proper pixel height of your image. -*/ - -/* -.directory h3.swap { - height: 61px; - background-repeat: no-repeat; - background-image: url("yourimage.gif"); -} -.directory h3.swap span { - display: none; -} -*/ - -.directory > h3 { - margin-top: 0; -} - -.directory p { - margin: 0px; - white-space: nowrap; -} - -.directory div { - display: none; - margin: 0px; -} - -.directory img { - vertical-align: -30%; -} - -/* these are for tree view when not used as main index */ - -.directory-alt { - font-size: 100%; - font-weight: bold; -} - -.directory-alt h3 { - margin: 0px; - margin-top: 1em; - font-size: 11pt; -} - -.directory-alt > h3 { - margin-top: 0; -} - -.directory-alt p { - margin: 0px; - white-space: nowrap; -} - -.directory-alt div { - display: none; - margin: 0px; -} - -.directory-alt img { - vertical-align: -30%; -} - -/* @end */ - -address { - font-style: normal; - color: #333; -} - -table.doxtable { - border-collapse:collapse; -} - -table.doxtable td, table.doxtable th { - border: 1px solid #153788; - padding: 3px 7px 2px; -} - -table.doxtable th { - background-color: #254798; - color: #FFFFFF; - font-size: 110%; - padding-bottom: 4px; - padding-top: 5px; - text-align:left; -} - diff --git a/doc/doxygen/css/doxygen/tabs.css b/doc/doxygen/css/doxygen/tabs.css deleted file mode 100644 index a444163416..0000000000 --- a/doc/doxygen/css/doxygen/tabs.css +++ /dev/null @@ -1,105 +0,0 @@ -/* tabs styles, based on http://www.alistapart.com/articles/slidingdoors */ - -DIV.tabs -{ - float : left; - width : 100%; - background : url("tab_b.gif") repeat-x bottom; - margin-bottom : 4px; -} - -DIV.tabs UL -{ - margin : 0px; - padding-left : 10px; - list-style : none; -} - -DIV.tabs LI, DIV.tabs FORM -{ - display : inline; - margin : 0px; - padding : 0px; -} - -DIV.tabs FORM -{ - float : right; -} - -DIV.tabs A -{ - float : left; - background : url("tab_r.gif") no-repeat right top; - border-bottom : 1px solid #84B0C7; - font-size : 80%; - font-weight : bold; - text-decoration : none; -} - -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: #1A419D; -} - -DIV.tabs SPAN -{ - float : left; - display : block; - background : url("tab_l.gif") no-repeat left top; - padding : 5px 9px; - white-space : nowrap; -} - -DIV.tabs #MSearchBox -{ - float : right; - display : inline; - font-size : 1em; -} - -DIV.tabs TD -{ - font-size : 80%; - 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 -{ - background-position: 100% -150px; - border-width : 0px; -} - -DIV.tabs LI.current SPAN -{ - background-position: 0% -150px; - padding-bottom : 6px; -} - -DIV.navpath -{ - background : none; - border : none; - border-bottom : 1px solid #84B0C7; - text-align : center; - margin : 2px; - padding : 2px; -} diff --git a/doc/doxygen/css/openfoam.css b/doc/doxygen/css/openfoam.css new file mode 100644 index 0000000000..a2e67a318d --- /dev/null +++ b/doc/doxygen/css/openfoam.css @@ -0,0 +1,7 @@ +/* import doxygen-specific styles */ +@import url(doxygen.css); /* standard doxygen style with very minor mods */ +@import url(doxyMod.css); /* modifications to standard doxygen style */ +@import url(doxyTabs.css); /* modified doxygen tabs style */ +@import url(cfdLayout.css); /* OpenCFD layout styles */ +@import url(cfdNav.css); /* OpenCFD navigation styles */ + diff --git a/etc/controlDict b/etc/controlDict index f74a8bc38f..e1af08c7ae 100644 --- a/etc/controlDict +++ b/etc/controlDict @@ -21,8 +21,8 @@ Documentation docBrowser "kde-open %f"; doxyDocDirs ( - "$WM_PROJECT_USER_DIR/Doxygen/html" - "~OpenFOAM/Doxygen/html" + "$WM_PROJECT_USER_DIR/html" + "~OpenFOAM/html" "$WM_PROJECT_DIR/doc/Doxygen/html" ); doxySourceFileExts From 35afeb9b189552a0271325d509576acc35a60cc1 Mon Sep 17 00:00:00 2001 From: Mark Olesen Date: Mon, 3 May 2010 08:38:39 +0200 Subject: [PATCH 11/57] STYLE: remove superfluous uses of argList::validArgs.clear() - a holdover from the old days --- applications/test/FixedList/FixedListTest.C | 1 - applications/test/ODETest/ODETest.C | 1 - applications/test/prefixOSstream/prefixOSstreamTest.C | 1 - applications/test/readCHEMKINIII/readCHEMKINIII.C | 1 - .../utilities/mesh/manipulation/mergeMeshes/mergeMeshes.C | 2 -- .../utilities/mesh/manipulation/objToVTK/objToVTK.C | 1 - .../miscellaneous/expandDictionary/expandDictionary.C | 1 - applications/utilities/preProcessing/mapFields/mapFields.C | 1 - applications/utilities/surface/surfaceAdd/surfaceAdd.C | 1 - .../utilities/surface/surfaceAutoPatch/surfaceAutoPatch.C | 1 - applications/utilities/surface/surfaceCheck/surfaceCheck.C | 3 --- applications/utilities/surface/surfaceClean/surfaceClean.C | 1 - .../utilities/surface/surfaceCoarsen/surfaceCoarsen.C | 1 - .../utilities/surface/surfaceConvert/surfaceConvert.C | 1 - .../surface/surfaceFeatureExtract/surfaceFeatureExtract.C | 2 -- applications/utilities/surface/surfaceFind/surfaceFind.C | 6 ++---- .../utilities/surface/surfaceOrient/surfaceOrient.C | 1 - .../utilities/surface/surfacePointMerge/surfacePointMerge.C | 1 - .../surface/surfaceRefineRedGreen/surfaceRefineRedGreen.C | 1 - .../utilities/surface/surfaceSmooth/surfaceSmooth.C | 1 - .../surface/surfaceSplitByPatch/surfaceSplitByPatch.C | 3 +-- .../surfaceSplitNonManifolds/surfaceSplitNonManifolds.C | 2 -- .../utilities/surface/surfaceSubset/surfaceSubset.C | 1 - .../surface/surfaceTransformPoints/surfaceTransformPoints.C | 1 - .../thermophysical/adiabaticFlameT/adiabaticFlameT.C | 1 - .../utilities/thermophysical/chemkinToFoam/chemkinToFoam.C | 1 - .../thermophysical/equilibriumFlameT/equilibriumFlameT.C | 1 - .../mixtureAdiabaticFlameT/mixtureAdiabaticFlameT.C | 1 - 28 files changed, 3 insertions(+), 37 deletions(-) diff --git a/applications/test/FixedList/FixedListTest.C b/applications/test/FixedList/FixedListTest.C index 79abb4a34a..208ff277b1 100644 --- a/applications/test/FixedList/FixedListTest.C +++ b/applications/test/FixedList/FixedListTest.C @@ -43,7 +43,6 @@ using namespace Foam; int main(int argc, char *argv[]) { - argList::validArgs.clear(); argList args(argc, argv); FixedList list; diff --git a/applications/test/ODETest/ODETest.C b/applications/test/ODETest/ODETest.C index e8d29553e1..2a3b8357b9 100644 --- a/applications/test/ODETest/ODETest.C +++ b/applications/test/ODETest/ODETest.C @@ -104,7 +104,6 @@ public: int main(int argc, char *argv[]) { - argList::validArgs.clear(); argList::validArgs.append("ODESolver"); argList args(argc, argv); diff --git a/applications/test/prefixOSstream/prefixOSstreamTest.C b/applications/test/prefixOSstream/prefixOSstreamTest.C index 98bcee40c4..093c540e96 100644 --- a/applications/test/prefixOSstream/prefixOSstreamTest.C +++ b/applications/test/prefixOSstream/prefixOSstreamTest.C @@ -45,7 +45,6 @@ using namespace Foam; int main(int argc, char *argv[]) { - argList::validArgs.clear(); argList args(argc, argv); //Pout.prefix() = '[' + name(Pstream::myProcNo()) + "] "; diff --git a/applications/test/readCHEMKINIII/readCHEMKINIII.C b/applications/test/readCHEMKINIII/readCHEMKINIII.C index 9165f84839..7005f93592 100644 --- a/applications/test/readCHEMKINIII/readCHEMKINIII.C +++ b/applications/test/readCHEMKINIII/readCHEMKINIII.C @@ -35,7 +35,6 @@ using namespace Foam; int main(int argc, char *argv[]) { - argList::validArgs.clear(); argList::validArgs.append("CHEMKINIIIFile"); argList::addOption("thermo", "fileName"); argList args(argc, argv); diff --git a/applications/utilities/mesh/manipulation/mergeMeshes/mergeMeshes.C b/applications/utilities/mesh/manipulation/mergeMeshes/mergeMeshes.C index 03741a528c..af09f07933 100644 --- a/applications/utilities/mesh/manipulation/mergeMeshes/mergeMeshes.C +++ b/applications/utilities/mesh/manipulation/mergeMeshes/mergeMeshes.C @@ -61,8 +61,6 @@ int main(int argc, char *argv[]) ); argList::noParallel(); - argList::validArgs.clear(); - argList::validArgs.append("masterCase"); argList::addOption ( diff --git a/applications/utilities/mesh/manipulation/objToVTK/objToVTK.C b/applications/utilities/mesh/manipulation/objToVTK/objToVTK.C index 2cb7ef6c5b..55a2238757 100644 --- a/applications/utilities/mesh/manipulation/objToVTK/objToVTK.C +++ b/applications/utilities/mesh/manipulation/objToVTK/objToVTK.C @@ -110,7 +110,6 @@ labelList parseVertices(const string& line) int main(int argc, char *argv[]) { argList::noParallel(); - argList::validArgs.clear(); argList::validArgs.append("OBJ file"); argList::validArgs.append("output VTK file"); argList args(argc, argv); diff --git a/applications/utilities/miscellaneous/expandDictionary/expandDictionary.C b/applications/utilities/miscellaneous/expandDictionary/expandDictionary.C index c488cb6602..08e8f29f24 100644 --- a/applications/utilities/miscellaneous/expandDictionary/expandDictionary.C +++ b/applications/utilities/miscellaneous/expandDictionary/expandDictionary.C @@ -44,7 +44,6 @@ int main(int argc, char *argv[]) { argList::noBanner(); argList::noParallel(); - argList::validArgs.clear(); argList::validArgs.append("inputDict"); argList args(argc, argv); diff --git a/applications/utilities/preProcessing/mapFields/mapFields.C b/applications/utilities/preProcessing/mapFields/mapFields.C index 2d416fd029..0b1d251483 100644 --- a/applications/utilities/preProcessing/mapFields/mapFields.C +++ b/applications/utilities/preProcessing/mapFields/mapFields.C @@ -232,7 +232,6 @@ int main(int argc, char *argv[]) "map volume fields from one mesh to another" ); argList::noParallel(); - argList::validArgs.clear(); argList::validArgs.append("sourceCase"); argList::addOption diff --git a/applications/utilities/surface/surfaceAdd/surfaceAdd.C b/applications/utilities/surface/surfaceAdd/surfaceAdd.C index 5dd58b1402..2c6d1509d9 100644 --- a/applications/utilities/surface/surfaceAdd/surfaceAdd.C +++ b/applications/utilities/surface/surfaceAdd/surfaceAdd.C @@ -51,7 +51,6 @@ int main(int argc, char *argv[]) ); argList::noParallel(); - argList::validArgs.clear(); argList::validArgs.append("surfaceFile"); argList::validArgs.append("surfaceFile"); argList::validArgs.append("output surfaceFile"); diff --git a/applications/utilities/surface/surfaceAutoPatch/surfaceAutoPatch.C b/applications/utilities/surface/surfaceAutoPatch/surfaceAutoPatch.C index 8144b54f21..1ab3b58082 100644 --- a/applications/utilities/surface/surfaceAutoPatch/surfaceAutoPatch.C +++ b/applications/utilities/surface/surfaceAutoPatch/surfaceAutoPatch.C @@ -46,7 +46,6 @@ using namespace Foam; int main(int argc, char *argv[]) { argList::noParallel(); - argList::validArgs.clear(); argList::validArgs.append("input surfaceFile"); argList::validArgs.append("output surfaceFile"); argList::validArgs.append("includedAngle [0..180]"); diff --git a/applications/utilities/surface/surfaceCheck/surfaceCheck.C b/applications/utilities/surface/surfaceCheck/surfaceCheck.C index 4cad39c8aa..577f1470ae 100644 --- a/applications/utilities/surface/surfaceCheck/surfaceCheck.C +++ b/applications/utilities/surface/surfaceCheck/surfaceCheck.C @@ -173,10 +173,7 @@ labelList countBins int main(int argc, char *argv[]) { argList::noParallel(); - - argList::validArgs.clear(); argList::validArgs.append("surfaceFile"); - argList::addBoolOption ( "checkSelfIntersection", diff --git a/applications/utilities/surface/surfaceClean/surfaceClean.C b/applications/utilities/surface/surfaceClean/surfaceClean.C index 2547240472..85b9cd324e 100644 --- a/applications/utilities/surface/surfaceClean/surfaceClean.C +++ b/applications/utilities/surface/surfaceClean/surfaceClean.C @@ -46,7 +46,6 @@ using namespace Foam; int main(int argc, char *argv[]) { - argList::validArgs.clear(); argList::noParallel(); argList::validArgs.append("surfaceFile"); argList::validArgs.append("min length"); diff --git a/applications/utilities/surface/surfaceCoarsen/surfaceCoarsen.C b/applications/utilities/surface/surfaceCoarsen/surfaceCoarsen.C index af9d5ff9c6..3a2393949d 100644 --- a/applications/utilities/surface/surfaceCoarsen/surfaceCoarsen.C +++ b/applications/utilities/surface/surfaceCoarsen/surfaceCoarsen.C @@ -64,7 +64,6 @@ int mapVertex(::List& collapse_map, int a, int mx) int main(int argc, char *argv[]) { argList::noParallel(); - argList::validArgs.clear(); argList::validArgs.append("surfaceFile"); argList::validArgs.append("reductionFactor"); argList::validArgs.append("output surfaceFile"); diff --git a/applications/utilities/surface/surfaceConvert/surfaceConvert.C b/applications/utilities/surface/surfaceConvert/surfaceConvert.C index 566c9f1583..c2598aff2a 100644 --- a/applications/utilities/surface/surfaceConvert/surfaceConvert.C +++ b/applications/utilities/surface/surfaceConvert/surfaceConvert.C @@ -64,7 +64,6 @@ int main(int argc, char *argv[]) ); argList::noParallel(); - argList::validArgs.clear(); argList::validArgs.append("inputFile"); argList::validArgs.append("outputFile"); diff --git a/applications/utilities/surface/surfaceFeatureExtract/surfaceFeatureExtract.C b/applications/utilities/surface/surfaceFeatureExtract/surfaceFeatureExtract.C index 5775e68a6b..83d84b92c8 100644 --- a/applications/utilities/surface/surfaceFeatureExtract/surfaceFeatureExtract.C +++ b/applications/utilities/surface/surfaceFeatureExtract/surfaceFeatureExtract.C @@ -95,8 +95,6 @@ int main(int argc, char *argv[]) "extract and write surface features to file" ); argList::noParallel(); - - argList::validArgs.clear(); argList::validArgs.append("surface"); argList::validArgs.append("output set"); diff --git a/applications/utilities/surface/surfaceFind/surfaceFind.C b/applications/utilities/surface/surfaceFind/surfaceFind.C index 383a692800..1d6d098752 100644 --- a/applications/utilities/surface/surfaceFind/surfaceFind.C +++ b/applications/utilities/surface/surfaceFind/surfaceFind.C @@ -40,16 +40,14 @@ using namespace Foam; int main(int argc, char *argv[]) { argList::noParallel(); - argList::validArgs.clear(); + argList::validArgs.append("surfaceFile"); argList::addOption("x", "X", "The point x-coordinate (if non-zero)"); argList::addOption("y", "Y", "The point y-coordinate (if non-zero)"); argList::addOption("z", "Z", "The point y-coordinate (if non-zero)"); - argList::validArgs.append("surfaceFile"); - argList args(argc, argv); - point samplePt + const point samplePt ( args.optionLookupOrDefault("x", 0), args.optionLookupOrDefault("y", 0), diff --git a/applications/utilities/surface/surfaceOrient/surfaceOrient.C b/applications/utilities/surface/surfaceOrient/surfaceOrient.C index b19a39ff1c..6ed45df88d 100644 --- a/applications/utilities/surface/surfaceOrient/surfaceOrient.C +++ b/applications/utilities/surface/surfaceOrient/surfaceOrient.C @@ -45,7 +45,6 @@ int main(int argc, char *argv[]) ); argList::noParallel(); - argList::validArgs.clear(); argList::validArgs.append("surfaceFile"); argList::validArgs.append("visiblePoint"); argList::validArgs.append("output surfaceFile"); diff --git a/applications/utilities/surface/surfacePointMerge/surfacePointMerge.C b/applications/utilities/surface/surfacePointMerge/surfacePointMerge.C index da6df12877..542a72e484 100644 --- a/applications/utilities/surface/surfacePointMerge/surfacePointMerge.C +++ b/applications/utilities/surface/surfacePointMerge/surfacePointMerge.C @@ -42,7 +42,6 @@ using namespace Foam; int main(int argc, char *argv[]) { argList::noParallel(); - argList::validArgs.clear(); argList::validArgs.append("surfaceFile"); argList::validArgs.append("merge distance"); argList::validArgs.append("output surfaceFile"); diff --git a/applications/utilities/surface/surfaceRefineRedGreen/surfaceRefineRedGreen.C b/applications/utilities/surface/surfaceRefineRedGreen/surfaceRefineRedGreen.C index 786adff49d..3bf41c96ed 100644 --- a/applications/utilities/surface/surfaceRefineRedGreen/surfaceRefineRedGreen.C +++ b/applications/utilities/surface/surfaceRefineRedGreen/surfaceRefineRedGreen.C @@ -47,7 +47,6 @@ using namespace Foam; int main(int argc, char *argv[]) { argList::noParallel(); - argList::validArgs.clear(); argList::validArgs.append("surfaceFile"); argList::validArgs.append("output surfaceFile"); argList args(argc, argv); diff --git a/applications/utilities/surface/surfaceSmooth/surfaceSmooth.C b/applications/utilities/surface/surfaceSmooth/surfaceSmooth.C index bb767307ab..3f990dc8ff 100644 --- a/applications/utilities/surface/surfaceSmooth/surfaceSmooth.C +++ b/applications/utilities/surface/surfaceSmooth/surfaceSmooth.C @@ -42,7 +42,6 @@ int main(int argc, char *argv[]) { argList::noParallel(); argList::validOptions.clear(); - argList::validArgs.clear(); argList::validArgs.append("surfaceFile"); argList::validArgs.append("underrelax factor (0..1)"); argList::validArgs.append("iterations"); diff --git a/applications/utilities/surface/surfaceSplitByPatch/surfaceSplitByPatch.C b/applications/utilities/surface/surfaceSplitByPatch/surfaceSplitByPatch.C index 2f11567cda..1024ea9bf4 100644 --- a/applications/utilities/surface/surfaceSplitByPatch/surfaceSplitByPatch.C +++ b/applications/utilities/surface/surfaceSplitByPatch/surfaceSplitByPatch.C @@ -42,8 +42,7 @@ int main(int argc, char *argv[]) ); argList::noParallel(); - argList::validArgs.clear(); - argList::validArgs.append("input file"); + argList::validArgs.append("input surfaceFile"); argList args(argc, argv); const fileName surfName = args[1]; diff --git a/applications/utilities/surface/surfaceSplitNonManifolds/surfaceSplitNonManifolds.C b/applications/utilities/surface/surfaceSplitNonManifolds/surfaceSplitNonManifolds.C index 284732438b..a8ec5ea4d8 100644 --- a/applications/utilities/surface/surfaceSplitNonManifolds/surfaceSplitNonManifolds.C +++ b/applications/utilities/surface/surfaceSplitNonManifolds/surfaceSplitNonManifolds.C @@ -671,8 +671,6 @@ int main(int argc, char *argv[]) "split multiply connected surface edges by duplicating points" ); argList::noParallel(); - argList::validArgs.clear(); - argList::validArgs.append("surfaceFile"); argList::validArgs.append("output surfaceFile"); argList::addBoolOption diff --git a/applications/utilities/surface/surfaceSubset/surfaceSubset.C b/applications/utilities/surface/surfaceSubset/surfaceSubset.C index 9de7881744..3246358d9b 100644 --- a/applications/utilities/surface/surfaceSubset/surfaceSubset.C +++ b/applications/utilities/surface/surfaceSubset/surfaceSubset.C @@ -47,7 +47,6 @@ using namespace Foam; int main(int argc, char *argv[]) { argList::noParallel(); - argList::validArgs.clear(); argList::validArgs.append("surfaceSubsetDict"); argList::validArgs.append("surfaceFile"); argList::validArgs.append("output surfaceFile"); diff --git a/applications/utilities/surface/surfaceTransformPoints/surfaceTransformPoints.C b/applications/utilities/surface/surfaceTransformPoints/surfaceTransformPoints.C index 189a281877..0b223d6f83 100644 --- a/applications/utilities/surface/surfaceTransformPoints/surfaceTransformPoints.C +++ b/applications/utilities/surface/surfaceTransformPoints/surfaceTransformPoints.C @@ -60,7 +60,6 @@ int main(int argc, char *argv[]) "Like transformPoints but for surfaces." ); argList::noParallel(); - argList::validArgs.clear(); argList::validArgs.append("surfaceFile"); argList::validArgs.append("output surfaceFile"); argList::addOption diff --git a/applications/utilities/thermophysical/adiabaticFlameT/adiabaticFlameT.C b/applications/utilities/thermophysical/adiabaticFlameT/adiabaticFlameT.C index 5139b8c499..29d8d35feb 100644 --- a/applications/utilities/thermophysical/adiabaticFlameT/adiabaticFlameT.C +++ b/applications/utilities/thermophysical/adiabaticFlameT/adiabaticFlameT.C @@ -49,7 +49,6 @@ typedef specieThermo > thermo; int main(int argc, char *argv[]) { - argList::validArgs.clear(); argList::validArgs.append("controlFile"); argList args(argc, argv); diff --git a/applications/utilities/thermophysical/chemkinToFoam/chemkinToFoam.C b/applications/utilities/thermophysical/chemkinToFoam/chemkinToFoam.C index 508d868c7a..1bf676cd54 100644 --- a/applications/utilities/thermophysical/chemkinToFoam/chemkinToFoam.C +++ b/applications/utilities/thermophysical/chemkinToFoam/chemkinToFoam.C @@ -38,7 +38,6 @@ using namespace Foam; int main(int argc, char *argv[]) { - argList::validArgs.clear(); argList::validArgs.append("CHEMKINFile"); argList::validArgs.append("CHEMKINThermodynamicsFile"); argList::validArgs.append("FOAMChemistryFile"); diff --git a/applications/utilities/thermophysical/equilibriumFlameT/equilibriumFlameT.C b/applications/utilities/thermophysical/equilibriumFlameT/equilibriumFlameT.C index 2990cc81dc..457c0db080 100644 --- a/applications/utilities/thermophysical/equilibriumFlameT/equilibriumFlameT.C +++ b/applications/utilities/thermophysical/equilibriumFlameT/equilibriumFlameT.C @@ -50,7 +50,6 @@ typedef specieThermo > thermo; int main(int argc, char *argv[]) { - argList::validArgs.clear(); argList::validArgs.append("controlFile"); argList args(argc, argv); diff --git a/applications/utilities/thermophysical/mixtureAdiabaticFlameT/mixtureAdiabaticFlameT.C b/applications/utilities/thermophysical/mixtureAdiabaticFlameT/mixtureAdiabaticFlameT.C index fa28d5cc01..eef86c7f7a 100644 --- a/applications/utilities/thermophysical/mixtureAdiabaticFlameT/mixtureAdiabaticFlameT.C +++ b/applications/utilities/thermophysical/mixtureAdiabaticFlameT/mixtureAdiabaticFlameT.C @@ -49,7 +49,6 @@ typedef specieThermo > thermo; int main(int argc, char *argv[]) { - argList::validArgs.clear(); argList::validArgs.append("controlFile"); argList args(argc, argv); From 856f0f46857218db34ecddde00b52a82340faaf6 Mon Sep 17 00:00:00 2001 From: Mark Olesen Date: Mon, 3 May 2010 09:23:07 +0200 Subject: [PATCH 12/57] ENH: use FOAM_DOC_BROWSER to specify alternative html document browser - change from 'kde-open %f' to the desktop-agnostic 'firefox %f' as the default document browser. --- etc/controlDict | 2 +- src/OpenFOAM/global/argList/argList.C | 7 ++++++- src/OpenFOAM/global/argList/argList.H | 12 ++++++++---- 3 files changed, 15 insertions(+), 6 deletions(-) diff --git a/etc/controlDict b/etc/controlDict index e1af08c7ae..891e010e0c 100644 --- a/etc/controlDict +++ b/etc/controlDict @@ -18,7 +18,7 @@ FoamFile Documentation { - docBrowser "kde-open %f"; + docBrowser "firefox %f"; doxyDocDirs ( "$WM_PROJECT_USER_DIR/html" diff --git a/src/OpenFOAM/global/argList/argList.C b/src/OpenFOAM/global/argList/argList.C index 287dc9efcc..82c6ff47c9 100644 --- a/src/OpenFOAM/global/argList/argList.C +++ b/src/OpenFOAM/global/argList/argList.C @@ -881,7 +881,12 @@ void Foam::argList::displayDoc(bool source) const if (found) { - string docBrowser(docDict.lookup("docBrowser")); + string docBrowser = getEnv("FOAM_DOC_BROWSER"); + if (docBrowser.empty()) + { + docDict.lookup("docBrowser") >> docBrowser; + } + // can use FOAM_DOC_BROWSER='application file://%f' if required docBrowser.replaceAll("%f", docFile); Info<< "Show documentation: " << docBrowser.c_str() << endl; diff --git a/src/OpenFOAM/global/argList/argList.H b/src/OpenFOAM/global/argList/argList.H index c36955d5ce..85b2e26b57 100644 --- a/src/OpenFOAM/global/argList/argList.H +++ b/src/OpenFOAM/global/argList/argList.H @@ -37,7 +37,7 @@ Description @verbatim ( "file1.txt" "file2.txt" ... "fileN.txt" ) @endverbatim - The backslash-escaping has been used to avoid shell expansions. + The backslash-escaping is required to avoid interpretation by the shell. @par Default command-line options @param -case \ \n @@ -57,10 +57,14 @@ Description global case. Note - - Adjustment of the valid (mandatory) arguments + - The document browser used is defined by the @b FOAM_DOC_BROWSER + environment variable or the Documentation/docBrowser entry + in the ~OpenFOAM/controlDict file. + The \%f token is used as a placeholder for the file name. + - The valid (mandatory) arguments can be adjusted by directly manipulating the argList::validArgs static member. - - Adjustment of the valid options - via the addOption/removeOption static methods or by directly + - The valid options can be adjusted + via the addOption/removeOption static methods instead of directly manipulating the argList::validOptions static member. SourceFiles From dae4d905ff5cf96b475201987a6888ad309b6a61 Mon Sep 17 00:00:00 2001 From: Mark Olesen Date: Mon, 3 May 2010 09:39:27 +0200 Subject: [PATCH 13/57] STYLE: use forAll macro in newly added code --- .../globalIndexAndTransform/globalIndexAndTransform.C | 4 ++-- .../globalIndexAndTransform/globalIndexAndTransformI.H | 2 +- 2 files changed, 3 insertions(+), 3 deletions(-) diff --git a/src/lagrangian/basic/InteractionLists/globalIndexAndTransform/globalIndexAndTransform.C b/src/lagrangian/basic/InteractionLists/globalIndexAndTransform/globalIndexAndTransform.C index d0a2703a89..3bcd500d04 100644 --- a/src/lagrangian/basic/InteractionLists/globalIndexAndTransform/globalIndexAndTransform.C +++ b/src/lagrangian/basic/InteractionLists/globalIndexAndTransform/globalIndexAndTransform.C @@ -269,9 +269,9 @@ void Foam::globalIndexAndTransform::determineTransformPermutations() // Invert the ternary index encoding using repeated division by // three - for (label b = 0; b < transforms_.size(); b++) + forAll(transforms_, b) { - label w = (transformIndex % 3) - 1; + const label w = (transformIndex % 3) - 1; transformIndex /= 3; diff --git a/src/lagrangian/basic/InteractionLists/globalIndexAndTransform/globalIndexAndTransformI.H b/src/lagrangian/basic/InteractionLists/globalIndexAndTransform/globalIndexAndTransformI.H index da46fe08fe..fe2a6034a7 100644 --- a/src/lagrangian/basic/InteractionLists/globalIndexAndTransform/globalIndexAndTransformI.H +++ b/src/lagrangian/basic/InteractionLists/globalIndexAndTransform/globalIndexAndTransformI.H @@ -49,7 +49,7 @@ Foam::label Foam::globalIndexAndTransform::encodeTransformIndex label w = 1; - for (label b = 0; b < transforms_.size(); b++) + forAll(transforms_, b) { if (mag(permutationIndices[b]) > 1) { From 9b24f6c51b3ade7ce5522142bf78a0386c3bbdce Mon Sep 17 00:00:00 2001 From: Mark Olesen Date: Mon, 3 May 2010 10:42:45 +0200 Subject: [PATCH 14/57] ENH: add first provisioning for foamToVTK without polyhedral decomposition --- .../dataConversion/foamToVTK/foamToVTK.C | 12 +++ .../dataConversion/foamToVTK/vtkTopo.C | 82 ++++++++++++------- .../dataConversion/foamToVTK/vtkTopo.H | 7 +- 3 files changed, 68 insertions(+), 33 deletions(-) diff --git a/applications/utilities/postProcessing/dataConversion/foamToVTK/foamToVTK.C b/applications/utilities/postProcessing/dataConversion/foamToVTK/foamToVTK.C index 511c5c0f83..0c9dcf6d07 100644 --- a/applications/utilities/postProcessing/dataConversion/foamToVTK/foamToVTK.C +++ b/applications/utilities/postProcessing/dataConversion/foamToVTK/foamToVTK.C @@ -262,6 +262,14 @@ int main(int argc, char *argv[]) "ascii", "write in ASCII format instead of binary" ); +/* + argList::addBoolOption + ( + "noDecompose", + "do not decompose polyhedral cells into tets/prism cells" + "- NOT YET IMPLEMENTED" + ); + */ argList::addBoolOption ( "surfaceFields", @@ -318,6 +326,10 @@ int main(int argc, char *argv[]) const bool binary = !args.optionFound("ascii"); const bool useTimeName = args.optionFound("useTimeName"); + // decomposition of polyhedral cells into tets/prism cells + // vtkTopo::decomposePoly = !args.optionFound("noDecompose"); + + if (binary && (sizeof(floatScalar) != 4 || sizeof(label) != 4)) { FatalErrorIn(args.executable()) diff --git a/applications/utilities/postProcessing/dataConversion/foamToVTK/vtkTopo.C b/applications/utilities/postProcessing/dataConversion/foamToVTK/vtkTopo.C index 434c46b1ac..560f757e77 100644 --- a/applications/utilities/postProcessing/dataConversion/foamToVTK/vtkTopo.C +++ b/applications/utilities/postProcessing/dataConversion/foamToVTK/vtkTopo.C @@ -34,6 +34,11 @@ Description #include "cellModeller.H" #include "Swap.H" +// * * * * * * * * * * * * * * Static Data Members * * * * * * * * * * * * * // + +bool Foam::vtkTopo::decomposePoly = true; + + // * * * * * * * * * * * * * * * * Constructors * * * * * * * * * * * * * * // Foam::vtkTopo::vtkTopo(const polyMesh& mesh) @@ -50,10 +55,8 @@ Foam::vtkTopo::vtkTopo(const polyMesh& mesh) const cellModel& tetWedge = *(cellModeller::lookup("tetWedge")); const cellModel& hex = *(cellModeller::lookup("hex")); - const cellShapeList& cellShapes = mesh_.cellShapes(); - // Number of additional points needed by the decomposition of polyhedra label nAddPoints = 0; @@ -65,38 +68,45 @@ Foam::vtkTopo::vtkTopo(const polyMesh& mesh) // Scan for cells which need to be decomposed and count additional points // and cells - - forAll(cellShapes, cellI) + if (decomposePoly) { - const cellModel& model = cellShapes[cellI].model(); - - if - ( - model != hex - // && model != wedge // See above. - && model != prism - && model != pyr - && model != tet - && model != tetWedge - ) + forAll(cellShapes, cellI) { - const cell& cFaces = mesh_.cells()[cellI]; + const cellModel& model = cellShapes[cellI].model(); - forAll(cFaces, cFaceI) + if + ( + model != hex + // && model != wedge // See above. + && model != prism + && model != pyr + && model != tet + && model != tetWedge + ) { - const face& f = mesh_.faces()[cFaces[cFaceI]]; + const cell& cFaces = mesh_.cells()[cellI]; - label nQuads = 0; - label nTris = 0; - f.nTrianglesQuads(mesh_.points(), nTris, nQuads); + forAll(cFaces, cFaceI) + { + const face& f = mesh_.faces()[cFaces[cFaceI]]; - nAddCells += nQuads + nTris; + label nQuads = 0; + label nTris = 0; + f.nTrianglesQuads(mesh_.points(), nTris, nQuads); + + nAddCells += nQuads + nTris; + } + + nAddCells--; + nAddPoints++; } - - nAddCells--; - nAddPoints++; } } + else + { + notImplemented("vtkTopo: non-decomposed polyhedron"); + } + // Set size of additional point addressing array // (from added point to original cell) @@ -179,7 +189,7 @@ Foam::vtkTopo::vtkTopo(const polyMesh& mesh) cellTypes_[cellI] = VTK_HEXAHEDRON; } - else + else if (decomposePoly) { // Polyhedral cell. Decompose into tets + prisms. @@ -300,13 +310,23 @@ Foam::vtkTopo::vtkTopo(const polyMesh& mesh) addPointI++; } + else + { + // Polyhedral cell - not decomposed + cellTypes_[cellI] = VTK_POLYHEDRON; + } + } + + if (decomposePoly) + { + Pout<< " Original cells:" << mesh_.nCells() + << " points:" << mesh_.nPoints() + << " Additional cells:" << superCells_.size() + << " additional points:" << addPointCellLabels_.size() + << nl << endl; } - Pout<< " Original cells:" << mesh_.nCells() - << " points:" << mesh_.nPoints() - << " Additional cells:" << superCells_.size() - << " additional points:" << addPointCellLabels_.size() - << nl << endl; } + // ************************************************************************* // diff --git a/applications/utilities/postProcessing/dataConversion/foamToVTK/vtkTopo.H b/applications/utilities/postProcessing/dataConversion/foamToVTK/vtkTopo.H index 4b59ee427e..0e8661df1b 100644 --- a/applications/utilities/postProcessing/dataConversion/foamToVTK/vtkTopo.H +++ b/applications/utilities/postProcessing/dataConversion/foamToVTK/vtkTopo.H @@ -93,11 +93,14 @@ public: VTK_POLYHEDRON = 42 }; + //- Enable/disable polyhedron decomposition. Default = true + static bool decomposePoly; + + // Constructors //- Construct from components - vtkTopo(const polyMesh& mesh); - + vtkTopo(const polyMesh&); // Member Functions From fa2c8069201ae4f7ad8525a964fc4413826600d4 Mon Sep 17 00:00:00 2001 From: mattijs Date: Tue, 4 May 2010 15:47:14 +0100 Subject: [PATCH 15/57] BUG: adapted createPatchDict for new syntax --- .../les/smallPoolFire2D/system/createPatchDict | 12 ++---------- 1 file changed, 2 insertions(+), 10 deletions(-) diff --git a/tutorials/combustion/fireFoam/les/smallPoolFire2D/system/createPatchDict b/tutorials/combustion/fireFoam/les/smallPoolFire2D/system/createPatchDict index 1db65e4d32..8207a0eb87 100644 --- a/tutorials/combustion/fireFoam/les/smallPoolFire2D/system/createPatchDict +++ b/tutorials/combustion/fireFoam/les/smallPoolFire2D/system/createPatchDict @@ -46,24 +46,16 @@ matchTolerance 1E-3; pointSync true; // Patches to create. -patchInfo +patches ( { // Name of new patch name inlet; // Type of new patch - dictionary + patchInfo { type patch; - - // Optional: explicitly set transformation tensor. - // Used when matching and synchronising points. - //transform translational; - //separationVector (-2289 0 0); - transform rotational; - rotationAxis (1 0 0); - rotationCentre (0 0 0); } // How to construct: either from 'patches' or 'set' From b04a87a0a16bab28708d0bbf83266446c4de1fc5 Mon Sep 17 00:00:00 2001 From: mattijs Date: Tue, 4 May 2010 15:50:23 +0100 Subject: [PATCH 16/57] STYLE: Removed irrelevant comment --- .../les/smallPoolFire2D/system/createPatchDict | 15 --------------- 1 file changed, 15 deletions(-) diff --git a/tutorials/combustion/fireFoam/les/smallPoolFire2D/system/createPatchDict b/tutorials/combustion/fireFoam/les/smallPoolFire2D/system/createPatchDict index 8207a0eb87..1d9cb818fc 100644 --- a/tutorials/combustion/fireFoam/les/smallPoolFire2D/system/createPatchDict +++ b/tutorials/combustion/fireFoam/les/smallPoolFire2D/system/createPatchDict @@ -22,21 +22,6 @@ FoamFile // is done for all coupled faces, not just for any patches created. // - optional: synchronise points on coupled patches. -// 1. Create cyclic: -// - specify where the faces should come from -// - specify the type of cyclic. If a rotational specify the rotationAxis -// and centre to make matching easier -// - pointSync true to guarantee points to line up. - -// 2. Correct incorrect cyclic: -// This will usually fail upon loading: -// "face 0 area does not match neighbour 2 by 0.0100005%" -// " -- possible face ordering problem." -// - change patch type from 'cyclic' to 'patch' in the polyMesh/boundary file. -// - loosen match tolerance to get case to load -// - regenerate cyclic as above - - // Tolerance used in matching faces. Absolute tolerance is span of // face times this factor. To load incorrectly matches meshes set this // to a higher value. From c5b801c5dcabe53586221d8a3dfd644ba9a3a2f5 Mon Sep 17 00:00:00 2001 From: mattijs Date: Tue, 4 May 2010 17:21:09 +0100 Subject: [PATCH 17/57] BUG: indexing symmTensor with tensor::XX component names. --- .../solvers/incompressible/boundaryFoam/makeGraphs.H | 8 ++++---- 1 file changed, 4 insertions(+), 4 deletions(-) diff --git a/applications/solvers/incompressible/boundaryFoam/makeGraphs.H b/applications/solvers/incompressible/boundaryFoam/makeGraphs.H index 7367dc7c7d..2f24e8924b 100644 --- a/applications/solvers/incompressible/boundaryFoam/makeGraphs.H +++ b/applications/solvers/incompressible/boundaryFoam/makeGraphs.H @@ -25,9 +25,9 @@ makeGraph(y, flowDirection & R & flowDirection, "Rff", gFormat); makeGraph(y, wallNormal & R & wallNormal, "Rww", gFormat); makeGraph(y, flowDirection & R & wallNormal, "Rfw", gFormat); -makeGraph(y, sqrt(mag(R.component(tensor::XX))), "u", gFormat); -makeGraph(y, sqrt(mag(R.component(tensor::YY))), "v", gFormat); -makeGraph(y, sqrt(mag(R.component(tensor::ZZ))), "w", gFormat); -makeGraph(y, R.component(tensor::XY), "uv", gFormat); +makeGraph(y, sqrt(mag(R.component(symmTensor::XX))), "u", gFormat); +makeGraph(y, sqrt(mag(R.component(symmTensor::YY))), "v", gFormat); +makeGraph(y, sqrt(mag(R.component(symmTensor::ZZ))), "w", gFormat); +makeGraph(y, R.component(symmTensor::XY), "uv", gFormat); makeGraph(y, mag(fvc::grad(U)), "gammaDot", gFormat); From 15e9f0ed9133b01fd6000cdfb907625f79607afc Mon Sep 17 00:00:00 2001 From: Mark Olesen Date: Thu, 6 May 2010 07:48:08 +0200 Subject: [PATCH 18/57] STYLE: adjust doxygen css for better spacing in the navpath --- doc/doxygen/css/cfdNav.css | 2 +- doc/doxygen/css/doxyTabs.css | 13 ++++--------- 2 files changed, 5 insertions(+), 10 deletions(-) diff --git a/doc/doxygen/css/cfdNav.css b/doc/doxygen/css/cfdNav.css index c78ce33a76..a5e078aab0 100644 --- a/doc/doxygen/css/cfdNav.css +++ b/doc/doxygen/css/cfdNav.css @@ -252,7 +252,7 @@ color:rgb(70,122,167); font-size:100%; } -.current, .nav3-grid dt a:hover, .nav3-grid dd a:hover +.nav3-grid dt a:hover, .nav3-grid dd a:hover { background-color:rgb(225,225,225); color:rgb(42,90,138); diff --git a/doc/doxygen/css/doxyTabs.css b/doc/doxygen/css/doxyTabs.css index 5fa5e62985..1cc5525827 100644 --- a/doc/doxygen/css/doxyTabs.css +++ b/doc/doxygen/css/doxyTabs.css @@ -13,10 +13,9 @@ div.navigation div.tabs { - float : left; width : 100%; - padding-top : 3px; - padding-bottom : 3px; + padding-top : 5px; + padding-bottom : 5px; background: rgb(240,240,240); border-bottom: 1px solid rgb(175,175,175); } @@ -40,7 +39,6 @@ div.tabs li, div.tabs form div.tabs ul li { -/* margin : 10px; */ padding-top: 10px; padding-bottom: 10px; height: 100%; @@ -48,13 +46,11 @@ div.tabs ul li div.tabs form { - float : left; padding : 0px 9px; } div.tabs a { - float : left; font-size : 12px; font-weight : normal; text-decoration : none; @@ -78,8 +74,7 @@ div.tabs a:hover div.tabs span { - float : left; - display : block; + display : inline; padding : 0px 9px; white-space : nowrap; } @@ -143,7 +138,7 @@ div.navpath { background : none; border : none; - margin : 0px; + margin : 10px 0px; padding : 0px; font-size : 110%; text-align : center; From 476f4bb7f6de3a7d8f7801e28cd2e5494cbe5720 Mon Sep 17 00:00:00 2001 From: Mark Olesen Date: Thu, 6 May 2010 11:21:47 +0200 Subject: [PATCH 19/57] ENH: reduce the number of trailing spaces when writing VTK legacy files --- .../dataConversion/foamToVTK/writeFuns.C | 14 +++++++++++--- 1 file changed, 11 insertions(+), 3 deletions(-) diff --git a/applications/utilities/postProcessing/dataConversion/foamToVTK/writeFuns.C b/applications/utilities/postProcessing/dataConversion/foamToVTK/writeFuns.C index 89f0a59327..905d89c56a 100644 --- a/applications/utilities/postProcessing/dataConversion/foamToVTK/writeFuns.C +++ b/applications/utilities/postProcessing/dataConversion/foamToVTK/writeFuns.C @@ -100,14 +100,18 @@ void Foam::writeFuns::write { forAll(fField, i) { - os << fField[i] << ' '; + os << fField[i]; if (i > 0 && (i % 10) == 0) { os << std::endl; } + else + { + os << ' '; + } } - os << std::endl; + os << std::endl; } } @@ -149,12 +153,16 @@ void Foam::writeFuns::write { forAll(elems, i) { - os << elems[i] << ' '; + os << elems[i]; if (i > 0 && (i % 10) == 0) { os << std::endl; } + else + { + os << ' '; + } } os << std::endl; } From 911f50cebead5ea25968b677cf1e4d88f3158f08 Mon Sep 17 00:00:00 2001 From: henry Date: Thu, 6 May 2010 14:45:53 +0100 Subject: [PATCH 20/57] XiFoam: Added relaxation statements to Su and Xi equations This makes the solver more robust when the "Courant number" of the flame propagation fluctuates. --- applications/solvers/combustion/XiFoam/bEqn.H | 13 +++++++++---- .../XiFoam/les/pitzDaily3D/system/fvSolution | 4 ++++ 2 files changed, 13 insertions(+), 4 deletions(-) diff --git a/applications/solvers/combustion/XiFoam/bEqn.H b/applications/solvers/combustion/XiFoam/bEqn.H index 2b9b50d124..d93311ece1 100644 --- a/applications/solvers/combustion/XiFoam/bEqn.H +++ b/applications/solvers/combustion/XiFoam/bEqn.H @@ -30,7 +30,7 @@ if (ign.ignited()) n /= mgb; -# include "StCorr.H" + #include "StCorr.H" // Calculate turbulent flame speed flux // ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ @@ -58,7 +58,7 @@ if (ign.ignited()) // Add ignition cell contribution to b-equation // ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ -# include "ignite.H" + #include "ignite.H" // Solve for b @@ -134,7 +134,7 @@ if (ign.ignited()) (sigmas*SuInf*(Su0 - SuInf) + sqr(SuMin)*sigmaExt) /(sqr(Su0 - SuInf) + sqr(SuMin)); - solve + fvScalarMatrix SuEqn ( fvm::ddt(rho, Su) + fvm::div(phi + phiXi, Su, "div(phiXi,Su)") @@ -144,6 +144,9 @@ if (ign.ignited()) - fvm::SuSp(rho*(sigmas + Rc), Su) ); + SuEqn.relax(); + SuEqn.solve(); + // Limit the maximum Su // ~~~~~~~~~~~~~~~~~~~~ Su.min(SuMax); @@ -196,7 +199,7 @@ if (ign.ignited()) // Solve for the flame wrinkling // ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ - solve + fvScalarMatrix XiEqn ( fvm::ddt(rho, Xi) + fvm::div(phi + phiXi, Xi, "div(phiXi,Xi)") @@ -215,6 +218,8 @@ if (ign.ignited()) ) ); + XiEqn.relax(); + XiEqn.solve(); // Correct boundedness of Xi // ~~~~~~~~~~~~~~~~~~~~~~~~~ diff --git a/tutorials/combustion/XiFoam/les/pitzDaily3D/system/fvSolution b/tutorials/combustion/XiFoam/les/pitzDaily3D/system/fvSolution index faeb96b22f..f3a565d344 100644 --- a/tutorials/combustion/XiFoam/les/pitzDaily3D/system/fvSolution +++ b/tutorials/combustion/XiFoam/les/pitzDaily3D/system/fvSolution @@ -48,5 +48,9 @@ PISO nNonOrthogonalCorrectors 0; } +relaxationFactors +{ + "(Xi|Su)" 1; +} // ************************************************************************* // From 53d3e1e3285968a1a70b5f21b9276bc213d202ae Mon Sep 17 00:00:00 2001 From: sergio Date: Thu, 6 May 2010 15:00:13 +0100 Subject: [PATCH 21/57] ENH: chtMultiRegionSimpleFoam into chtMultiRegionFoam folder --- .../heatTransfer/chtMultiRegionFoam/Allwclean | 8 + .../heatTransfer/chtMultiRegionFoam/Allwmake | 8 + .../chtMultiRegionSimpleFoam/Make/files | 4 + .../chtMultiRegionSimpleFoam/Make/options | 2 + .../chtMultiRegionSimpleFoam.C | 0 .../chtMultiRegionSimpleFoam/fluid/UEqn.H | 0 .../fluid/compressibleContinuityErrors.H | 0 .../fluid/compressibleCourantNo.C | 0 .../fluid/compressibleCourantNo.H | 0 .../fluid/compressibleMultiRegionCourantNo.H | 0 .../fluid/createFluidFields.H | 0 .../fluid/createFluidMeshes.H | 0 .../chtMultiRegionSimpleFoam/fluid/hEqn.H | 0 .../chtMultiRegionSimpleFoam/fluid/pEqn.H | 0 .../readFluidMultiRegionSIMPLEControls.H | 0 .../fluid/setRegionFluidFields.H | 0 .../fluid/solveFluid.H | 0 .../solid/createSolidFields.H | 0 .../solid/createSolidMeshes.H | 0 .../readSolidMultiRegionSIMPLEControls.H | 0 .../solid/setRegionSolidFields.H | 0 .../solid/solveSolid.H | 0 .../chtMultiRegionSimpleFoam/Make/files | 5 - ...allHeatFluxTemperatureFvPatchScalarField.C | 168 ---------------- ...allHeatFluxTemperatureFvPatchScalarField.H | 180 ------------------ 25 files changed, 22 insertions(+), 353 deletions(-) create mode 100755 applications/solvers/heatTransfer/chtMultiRegionFoam/Allwclean create mode 100755 applications/solvers/heatTransfer/chtMultiRegionFoam/Allwmake create mode 100644 applications/solvers/heatTransfer/chtMultiRegionFoam/chtMultiRegionSimpleFoam/Make/files rename applications/solvers/heatTransfer/{ => chtMultiRegionFoam}/chtMultiRegionSimpleFoam/Make/options (91%) rename applications/solvers/heatTransfer/{ => chtMultiRegionFoam}/chtMultiRegionSimpleFoam/chtMultiRegionSimpleFoam.C (100%) rename applications/solvers/heatTransfer/{ => chtMultiRegionFoam}/chtMultiRegionSimpleFoam/fluid/UEqn.H (100%) rename applications/solvers/heatTransfer/{ => chtMultiRegionFoam}/chtMultiRegionSimpleFoam/fluid/compressibleContinuityErrors.H (100%) rename applications/solvers/heatTransfer/{ => chtMultiRegionFoam}/chtMultiRegionSimpleFoam/fluid/compressibleCourantNo.C (100%) rename applications/solvers/heatTransfer/{ => chtMultiRegionFoam}/chtMultiRegionSimpleFoam/fluid/compressibleCourantNo.H (100%) rename applications/solvers/heatTransfer/{ => chtMultiRegionFoam}/chtMultiRegionSimpleFoam/fluid/compressibleMultiRegionCourantNo.H (100%) rename applications/solvers/heatTransfer/{ => chtMultiRegionFoam}/chtMultiRegionSimpleFoam/fluid/createFluidFields.H (100%) rename applications/solvers/heatTransfer/{ => chtMultiRegionFoam}/chtMultiRegionSimpleFoam/fluid/createFluidMeshes.H (100%) rename applications/solvers/heatTransfer/{ => chtMultiRegionFoam}/chtMultiRegionSimpleFoam/fluid/hEqn.H (100%) rename applications/solvers/heatTransfer/{ => chtMultiRegionFoam}/chtMultiRegionSimpleFoam/fluid/pEqn.H (100%) rename applications/solvers/heatTransfer/{ => chtMultiRegionFoam}/chtMultiRegionSimpleFoam/fluid/readFluidMultiRegionSIMPLEControls.H (100%) rename applications/solvers/heatTransfer/{ => chtMultiRegionFoam}/chtMultiRegionSimpleFoam/fluid/setRegionFluidFields.H (100%) rename applications/solvers/heatTransfer/{ => chtMultiRegionFoam}/chtMultiRegionSimpleFoam/fluid/solveFluid.H (100%) rename applications/solvers/heatTransfer/{ => chtMultiRegionFoam}/chtMultiRegionSimpleFoam/solid/createSolidFields.H (100%) rename applications/solvers/heatTransfer/{ => chtMultiRegionFoam}/chtMultiRegionSimpleFoam/solid/createSolidMeshes.H (100%) rename applications/solvers/heatTransfer/{ => chtMultiRegionFoam}/chtMultiRegionSimpleFoam/solid/readSolidMultiRegionSIMPLEControls.H (100%) rename applications/solvers/heatTransfer/{ => chtMultiRegionFoam}/chtMultiRegionSimpleFoam/solid/setRegionSolidFields.H (100%) rename applications/solvers/heatTransfer/{ => chtMultiRegionFoam}/chtMultiRegionSimpleFoam/solid/solveSolid.H (100%) delete mode 100644 applications/solvers/heatTransfer/chtMultiRegionSimpleFoam/Make/files delete mode 100644 applications/solvers/heatTransfer/chtMultiRegionSimpleFoam/derivedFvPatchFields/solidWallHeatFluxTemperature/solidWallHeatFluxTemperatureFvPatchScalarField.C delete mode 100644 applications/solvers/heatTransfer/chtMultiRegionSimpleFoam/derivedFvPatchFields/solidWallHeatFluxTemperature/solidWallHeatFluxTemperatureFvPatchScalarField.H diff --git a/applications/solvers/heatTransfer/chtMultiRegionFoam/Allwclean b/applications/solvers/heatTransfer/chtMultiRegionFoam/Allwclean new file mode 100755 index 0000000000..c583a8de0a --- /dev/null +++ b/applications/solvers/heatTransfer/chtMultiRegionFoam/Allwclean @@ -0,0 +1,8 @@ +#!/bin/sh +cd ${0%/*} || exit 1 # run from this directory +set -x + +wclean +wclean chtMultiRegionSimpleFoam + +# ----------------------------------------------------------------- end-of-file diff --git a/applications/solvers/heatTransfer/chtMultiRegionFoam/Allwmake b/applications/solvers/heatTransfer/chtMultiRegionFoam/Allwmake new file mode 100755 index 0000000000..f65ba1181b --- /dev/null +++ b/applications/solvers/heatTransfer/chtMultiRegionFoam/Allwmake @@ -0,0 +1,8 @@ +#!/bin/sh +cd ${0%/*} || exit 1 # run from this directory +set -x + +wmake +wmake chtMultiRegionSimpleFoam + +# ----------------------------------------------------------------- end-of-file diff --git a/applications/solvers/heatTransfer/chtMultiRegionFoam/chtMultiRegionSimpleFoam/Make/files b/applications/solvers/heatTransfer/chtMultiRegionFoam/chtMultiRegionSimpleFoam/Make/files new file mode 100644 index 0000000000..d604fafb22 --- /dev/null +++ b/applications/solvers/heatTransfer/chtMultiRegionFoam/chtMultiRegionSimpleFoam/Make/files @@ -0,0 +1,4 @@ +chtMultiRegionSimpleFoam.C + +EXE = $(FOAM_APPBIN)/chtMultiRegionSimpleFoam + diff --git a/applications/solvers/heatTransfer/chtMultiRegionSimpleFoam/Make/options b/applications/solvers/heatTransfer/chtMultiRegionFoam/chtMultiRegionSimpleFoam/Make/options similarity index 91% rename from applications/solvers/heatTransfer/chtMultiRegionSimpleFoam/Make/options rename to applications/solvers/heatTransfer/chtMultiRegionFoam/chtMultiRegionSimpleFoam/Make/options index 34be199596..a97ce0aae4 100644 --- a/applications/solvers/heatTransfer/chtMultiRegionSimpleFoam/Make/options +++ b/applications/solvers/heatTransfer/chtMultiRegionFoam/chtMultiRegionSimpleFoam/Make/options @@ -1,5 +1,7 @@ EXE_INC = \ /* -DFULLDEBUG -O0 -g */ \ + -I.. \ + -I../derivedFvPatchFields \ -Ifluid \ -Isolid \ -I$(LIB_SRC)/finiteVolume/lnInclude \ diff --git a/applications/solvers/heatTransfer/chtMultiRegionSimpleFoam/chtMultiRegionSimpleFoam.C b/applications/solvers/heatTransfer/chtMultiRegionFoam/chtMultiRegionSimpleFoam/chtMultiRegionSimpleFoam.C similarity index 100% rename from applications/solvers/heatTransfer/chtMultiRegionSimpleFoam/chtMultiRegionSimpleFoam.C rename to applications/solvers/heatTransfer/chtMultiRegionFoam/chtMultiRegionSimpleFoam/chtMultiRegionSimpleFoam.C diff --git a/applications/solvers/heatTransfer/chtMultiRegionSimpleFoam/fluid/UEqn.H b/applications/solvers/heatTransfer/chtMultiRegionFoam/chtMultiRegionSimpleFoam/fluid/UEqn.H similarity index 100% rename from applications/solvers/heatTransfer/chtMultiRegionSimpleFoam/fluid/UEqn.H rename to applications/solvers/heatTransfer/chtMultiRegionFoam/chtMultiRegionSimpleFoam/fluid/UEqn.H diff --git a/applications/solvers/heatTransfer/chtMultiRegionSimpleFoam/fluid/compressibleContinuityErrors.H b/applications/solvers/heatTransfer/chtMultiRegionFoam/chtMultiRegionSimpleFoam/fluid/compressibleContinuityErrors.H similarity index 100% rename from applications/solvers/heatTransfer/chtMultiRegionSimpleFoam/fluid/compressibleContinuityErrors.H rename to applications/solvers/heatTransfer/chtMultiRegionFoam/chtMultiRegionSimpleFoam/fluid/compressibleContinuityErrors.H diff --git a/applications/solvers/heatTransfer/chtMultiRegionSimpleFoam/fluid/compressibleCourantNo.C b/applications/solvers/heatTransfer/chtMultiRegionFoam/chtMultiRegionSimpleFoam/fluid/compressibleCourantNo.C similarity index 100% rename from applications/solvers/heatTransfer/chtMultiRegionSimpleFoam/fluid/compressibleCourantNo.C rename to applications/solvers/heatTransfer/chtMultiRegionFoam/chtMultiRegionSimpleFoam/fluid/compressibleCourantNo.C diff --git a/applications/solvers/heatTransfer/chtMultiRegionSimpleFoam/fluid/compressibleCourantNo.H b/applications/solvers/heatTransfer/chtMultiRegionFoam/chtMultiRegionSimpleFoam/fluid/compressibleCourantNo.H similarity index 100% rename from applications/solvers/heatTransfer/chtMultiRegionSimpleFoam/fluid/compressibleCourantNo.H rename to applications/solvers/heatTransfer/chtMultiRegionFoam/chtMultiRegionSimpleFoam/fluid/compressibleCourantNo.H diff --git a/applications/solvers/heatTransfer/chtMultiRegionSimpleFoam/fluid/compressibleMultiRegionCourantNo.H b/applications/solvers/heatTransfer/chtMultiRegionFoam/chtMultiRegionSimpleFoam/fluid/compressibleMultiRegionCourantNo.H similarity index 100% rename from applications/solvers/heatTransfer/chtMultiRegionSimpleFoam/fluid/compressibleMultiRegionCourantNo.H rename to applications/solvers/heatTransfer/chtMultiRegionFoam/chtMultiRegionSimpleFoam/fluid/compressibleMultiRegionCourantNo.H diff --git a/applications/solvers/heatTransfer/chtMultiRegionSimpleFoam/fluid/createFluidFields.H b/applications/solvers/heatTransfer/chtMultiRegionFoam/chtMultiRegionSimpleFoam/fluid/createFluidFields.H similarity index 100% rename from applications/solvers/heatTransfer/chtMultiRegionSimpleFoam/fluid/createFluidFields.H rename to applications/solvers/heatTransfer/chtMultiRegionFoam/chtMultiRegionSimpleFoam/fluid/createFluidFields.H diff --git a/applications/solvers/heatTransfer/chtMultiRegionSimpleFoam/fluid/createFluidMeshes.H b/applications/solvers/heatTransfer/chtMultiRegionFoam/chtMultiRegionSimpleFoam/fluid/createFluidMeshes.H similarity index 100% rename from applications/solvers/heatTransfer/chtMultiRegionSimpleFoam/fluid/createFluidMeshes.H rename to applications/solvers/heatTransfer/chtMultiRegionFoam/chtMultiRegionSimpleFoam/fluid/createFluidMeshes.H diff --git a/applications/solvers/heatTransfer/chtMultiRegionSimpleFoam/fluid/hEqn.H b/applications/solvers/heatTransfer/chtMultiRegionFoam/chtMultiRegionSimpleFoam/fluid/hEqn.H similarity index 100% rename from applications/solvers/heatTransfer/chtMultiRegionSimpleFoam/fluid/hEqn.H rename to applications/solvers/heatTransfer/chtMultiRegionFoam/chtMultiRegionSimpleFoam/fluid/hEqn.H diff --git a/applications/solvers/heatTransfer/chtMultiRegionSimpleFoam/fluid/pEqn.H b/applications/solvers/heatTransfer/chtMultiRegionFoam/chtMultiRegionSimpleFoam/fluid/pEqn.H similarity index 100% rename from applications/solvers/heatTransfer/chtMultiRegionSimpleFoam/fluid/pEqn.H rename to applications/solvers/heatTransfer/chtMultiRegionFoam/chtMultiRegionSimpleFoam/fluid/pEqn.H diff --git a/applications/solvers/heatTransfer/chtMultiRegionSimpleFoam/fluid/readFluidMultiRegionSIMPLEControls.H b/applications/solvers/heatTransfer/chtMultiRegionFoam/chtMultiRegionSimpleFoam/fluid/readFluidMultiRegionSIMPLEControls.H similarity index 100% rename from applications/solvers/heatTransfer/chtMultiRegionSimpleFoam/fluid/readFluidMultiRegionSIMPLEControls.H rename to applications/solvers/heatTransfer/chtMultiRegionFoam/chtMultiRegionSimpleFoam/fluid/readFluidMultiRegionSIMPLEControls.H diff --git a/applications/solvers/heatTransfer/chtMultiRegionSimpleFoam/fluid/setRegionFluidFields.H b/applications/solvers/heatTransfer/chtMultiRegionFoam/chtMultiRegionSimpleFoam/fluid/setRegionFluidFields.H similarity index 100% rename from applications/solvers/heatTransfer/chtMultiRegionSimpleFoam/fluid/setRegionFluidFields.H rename to applications/solvers/heatTransfer/chtMultiRegionFoam/chtMultiRegionSimpleFoam/fluid/setRegionFluidFields.H diff --git a/applications/solvers/heatTransfer/chtMultiRegionSimpleFoam/fluid/solveFluid.H b/applications/solvers/heatTransfer/chtMultiRegionFoam/chtMultiRegionSimpleFoam/fluid/solveFluid.H similarity index 100% rename from applications/solvers/heatTransfer/chtMultiRegionSimpleFoam/fluid/solveFluid.H rename to applications/solvers/heatTransfer/chtMultiRegionFoam/chtMultiRegionSimpleFoam/fluid/solveFluid.H diff --git a/applications/solvers/heatTransfer/chtMultiRegionSimpleFoam/solid/createSolidFields.H b/applications/solvers/heatTransfer/chtMultiRegionFoam/chtMultiRegionSimpleFoam/solid/createSolidFields.H similarity index 100% rename from applications/solvers/heatTransfer/chtMultiRegionSimpleFoam/solid/createSolidFields.H rename to applications/solvers/heatTransfer/chtMultiRegionFoam/chtMultiRegionSimpleFoam/solid/createSolidFields.H diff --git a/applications/solvers/heatTransfer/chtMultiRegionSimpleFoam/solid/createSolidMeshes.H b/applications/solvers/heatTransfer/chtMultiRegionFoam/chtMultiRegionSimpleFoam/solid/createSolidMeshes.H similarity index 100% rename from applications/solvers/heatTransfer/chtMultiRegionSimpleFoam/solid/createSolidMeshes.H rename to applications/solvers/heatTransfer/chtMultiRegionFoam/chtMultiRegionSimpleFoam/solid/createSolidMeshes.H diff --git a/applications/solvers/heatTransfer/chtMultiRegionSimpleFoam/solid/readSolidMultiRegionSIMPLEControls.H b/applications/solvers/heatTransfer/chtMultiRegionFoam/chtMultiRegionSimpleFoam/solid/readSolidMultiRegionSIMPLEControls.H similarity index 100% rename from applications/solvers/heatTransfer/chtMultiRegionSimpleFoam/solid/readSolidMultiRegionSIMPLEControls.H rename to applications/solvers/heatTransfer/chtMultiRegionFoam/chtMultiRegionSimpleFoam/solid/readSolidMultiRegionSIMPLEControls.H diff --git a/applications/solvers/heatTransfer/chtMultiRegionSimpleFoam/solid/setRegionSolidFields.H b/applications/solvers/heatTransfer/chtMultiRegionFoam/chtMultiRegionSimpleFoam/solid/setRegionSolidFields.H similarity index 100% rename from applications/solvers/heatTransfer/chtMultiRegionSimpleFoam/solid/setRegionSolidFields.H rename to applications/solvers/heatTransfer/chtMultiRegionFoam/chtMultiRegionSimpleFoam/solid/setRegionSolidFields.H diff --git a/applications/solvers/heatTransfer/chtMultiRegionSimpleFoam/solid/solveSolid.H b/applications/solvers/heatTransfer/chtMultiRegionFoam/chtMultiRegionSimpleFoam/solid/solveSolid.H similarity index 100% rename from applications/solvers/heatTransfer/chtMultiRegionSimpleFoam/solid/solveSolid.H rename to applications/solvers/heatTransfer/chtMultiRegionFoam/chtMultiRegionSimpleFoam/solid/solveSolid.H diff --git a/applications/solvers/heatTransfer/chtMultiRegionSimpleFoam/Make/files b/applications/solvers/heatTransfer/chtMultiRegionSimpleFoam/Make/files deleted file mode 100644 index e5f536ca09..0000000000 --- a/applications/solvers/heatTransfer/chtMultiRegionSimpleFoam/Make/files +++ /dev/null @@ -1,5 +0,0 @@ -derivedFvPatchFields/solidWallHeatFluxTemperature/solidWallHeatFluxTemperatureFvPatchScalarField.C -chtMultiRegionSimpleFoam.C - -EXE = $(FOAM_APPBIN)/chtMultiRegionSimpleFoam - diff --git a/applications/solvers/heatTransfer/chtMultiRegionSimpleFoam/derivedFvPatchFields/solidWallHeatFluxTemperature/solidWallHeatFluxTemperatureFvPatchScalarField.C b/applications/solvers/heatTransfer/chtMultiRegionSimpleFoam/derivedFvPatchFields/solidWallHeatFluxTemperature/solidWallHeatFluxTemperatureFvPatchScalarField.C deleted file mode 100644 index e2b1d536d2..0000000000 --- a/applications/solvers/heatTransfer/chtMultiRegionSimpleFoam/derivedFvPatchFields/solidWallHeatFluxTemperature/solidWallHeatFluxTemperatureFvPatchScalarField.C +++ /dev/null @@ -1,168 +0,0 @@ -/*---------------------------------------------------------------------------*\ - ========= | - \\ / F ield | OpenFOAM: The Open Source CFD Toolbox - \\ / O peration | - \\ / A nd | Copyright (C) 1991-2009 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 3 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, see . - -\*---------------------------------------------------------------------------*/ - -#include "solidWallHeatFluxTemperatureFvPatchScalarField.H" -#include "addToRunTimeSelectionTable.H" -#include "fvPatchFieldMapper.H" -#include "volFields.H" - -// * * * * * * * * * * * * * * * * Constructors * * * * * * * * * * * * * * // - -Foam::solidWallHeatFluxTemperatureFvPatchScalarField:: -solidWallHeatFluxTemperatureFvPatchScalarField -( - const fvPatch& p, - const DimensionedField& iF -) -: - fixedGradientFvPatchScalarField(p, iF), - q_(p.size(), 0.0), - KName_("undefined-K") -{} - - -Foam::solidWallHeatFluxTemperatureFvPatchScalarField:: -solidWallHeatFluxTemperatureFvPatchScalarField -( - const solidWallHeatFluxTemperatureFvPatchScalarField& ptf, - const fvPatch& p, - const DimensionedField& iF, - const fvPatchFieldMapper& mapper -) -: - fixedGradientFvPatchScalarField(ptf, p, iF, mapper), - q_(ptf.q_, mapper), - KName_(ptf.KName_) -{} - - -Foam::solidWallHeatFluxTemperatureFvPatchScalarField:: -solidWallHeatFluxTemperatureFvPatchScalarField -( - const fvPatch& p, - const DimensionedField& iF, - const dictionary& dict -) -: - fixedGradientFvPatchScalarField(p, iF, dict), - q_("q", dict, p.size()), - KName_(dict.lookup("K")) -{} - - -Foam::solidWallHeatFluxTemperatureFvPatchScalarField:: -solidWallHeatFluxTemperatureFvPatchScalarField -( - const solidWallHeatFluxTemperatureFvPatchScalarField& tppsf -) -: - fixedGradientFvPatchScalarField(tppsf), - q_(tppsf.q_), - KName_(tppsf.KName_) -{} - - -Foam::solidWallHeatFluxTemperatureFvPatchScalarField:: -solidWallHeatFluxTemperatureFvPatchScalarField -( - const solidWallHeatFluxTemperatureFvPatchScalarField& tppsf, - const DimensionedField& iF -) -: - fixedGradientFvPatchScalarField(tppsf, iF), - q_(tppsf.q_), - KName_(tppsf.KName_) -{} - - -// * * * * * * * * * * * * * * * Member Functions * * * * * * * * * * * * * // - -void Foam::solidWallHeatFluxTemperatureFvPatchScalarField::autoMap -( - const fvPatchFieldMapper& m -) -{ - fixedGradientFvPatchScalarField::autoMap(m); - q_.autoMap(m); -} - - -void Foam::solidWallHeatFluxTemperatureFvPatchScalarField::rmap -( - const fvPatchScalarField& ptf, - const labelList& addr -) -{ - fixedGradientFvPatchScalarField::rmap(ptf, addr); - - const solidWallHeatFluxTemperatureFvPatchScalarField& hfptf = - refCast(ptf); - - q_.rmap(hfptf.q_, addr); -} - - -void Foam::solidWallHeatFluxTemperatureFvPatchScalarField::updateCoeffs() -{ - if (updated()) - { - return; - } - - const scalarField& Kw = patch().lookupPatchField - ( - KName_ - ); - - gradient() = q_/Kw; - - fixedGradientFvPatchScalarField::updateCoeffs(); -} - - -void Foam::solidWallHeatFluxTemperatureFvPatchScalarField::write -( - Ostream& os -) const -{ - fixedGradientFvPatchScalarField::write(os); - q_.writeEntry("q", os); - os.writeKeyword("K") << KName_ << token::END_STATEMENT << nl; - this->writeEntry("value", os); -} - - -// * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * // - -namespace Foam -{ - makePatchTypeField - ( - fvPatchScalarField, - solidWallHeatFluxTemperatureFvPatchScalarField - ); -} - -// ************************************************************************* // diff --git a/applications/solvers/heatTransfer/chtMultiRegionSimpleFoam/derivedFvPatchFields/solidWallHeatFluxTemperature/solidWallHeatFluxTemperatureFvPatchScalarField.H b/applications/solvers/heatTransfer/chtMultiRegionSimpleFoam/derivedFvPatchFields/solidWallHeatFluxTemperature/solidWallHeatFluxTemperatureFvPatchScalarField.H deleted file mode 100644 index ffbcf52ed5..0000000000 --- a/applications/solvers/heatTransfer/chtMultiRegionSimpleFoam/derivedFvPatchFields/solidWallHeatFluxTemperature/solidWallHeatFluxTemperatureFvPatchScalarField.H +++ /dev/null @@ -1,180 +0,0 @@ -/*---------------------------------------------------------------------------*\ - ========= | - \\ / F ield | OpenFOAM: The Open Source CFD Toolbox - \\ / O peration | - \\ / A nd | Copyright (C) 1991-2009 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 3 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, see . - -Class - solidWallHeatFluxTemperatureFvPatchScalarField - -Description - Heat flux boundary condition for temperature on solid region - - Example usage: - myWallPatch - { - type solidWallHeatFluxTemperature; - K K; // Name of K field - q uniform 1000; // Heat flux / [W/m2] - value 300.0; // Initial temperature / [K] - } - - -SourceFiles - solidWallHeatFluxTemperatureFvPatchScalarField.C - -\*---------------------------------------------------------------------------*/ - -#ifndef solidWallHeatFluxTemperatureFvPatchScalarField_H -#define solidWallHeatFluxTemperatureFvPatchScalarField_H - -#include "fixedGradientFvPatchFields.H" - -// * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * // - -namespace Foam -{ - -/*---------------------------------------------------------------------------*\ - Class solidWallHeatFluxTemperatureFvPatchScalarField Declaration -\*---------------------------------------------------------------------------*/ - -class solidWallHeatFluxTemperatureFvPatchScalarField -: - public fixedGradientFvPatchScalarField -{ - // Private data - - //- Heat flux / [W/m2] - scalarField q_; - - //- Name of thermal conductivity field - word KName_; - - -public: - - //- Runtime type information - TypeName("solidWallHeatFluxTemperature"); - - - // Constructors - - //- Construct from patch and internal field - solidWallHeatFluxTemperatureFvPatchScalarField - ( - const fvPatch&, - const DimensionedField& - ); - - //- Construct from patch, internal field and dictionary - solidWallHeatFluxTemperatureFvPatchScalarField - ( - const fvPatch&, - const DimensionedField&, - const dictionary& - ); - - //- Construct by mapping given - // solidWallHeatFluxTemperatureFvPatchScalarField - // onto a new patch - solidWallHeatFluxTemperatureFvPatchScalarField - ( - const solidWallHeatFluxTemperatureFvPatchScalarField&, - const fvPatch&, - const DimensionedField&, - const fvPatchFieldMapper& - ); - - //- Construct as copy - solidWallHeatFluxTemperatureFvPatchScalarField - ( - const solidWallHeatFluxTemperatureFvPatchScalarField& - ); - - //- Construct and return a clone - virtual tmp clone() const - { - return tmp - ( - new solidWallHeatFluxTemperatureFvPatchScalarField(*this) - ); - } - - //- Construct as copy setting internal field reference - solidWallHeatFluxTemperatureFvPatchScalarField - ( - const solidWallHeatFluxTemperatureFvPatchScalarField&, - const DimensionedField& - ); - - //- Construct and return a clone setting internal field reference - virtual tmp clone - ( - const DimensionedField& iF - ) const - { - return tmp - ( - new solidWallHeatFluxTemperatureFvPatchScalarField(*this, iF) - ); - } - - - // Member functions - - // Evaluation functions - - //- Update the coefficients associated with the patch field - virtual void updateCoeffs(); - - - // Mapping functions - - //- Map (and resize as needed) from self given a mapping object - virtual void autoMap - ( - const fvPatchFieldMapper& - ); - - //- Reverse map the given fvPatchField onto this fvPatchField - virtual void rmap - ( - const fvPatchScalarField&, - const labelList& - ); - - - // I-O - - //- Write - void write(Ostream&) const; -}; - - -// * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * // - -} // End namespace Foam - -// * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * // - -#endif - -// ************************************************************************* // From 5b588af7abe241aa6a778acfff52b1f0617b5506 Mon Sep 17 00:00:00 2001 From: Mark Olesen Date: Thu, 6 May 2010 17:56:37 +0200 Subject: [PATCH 22/57] ENH: use simpler API for vtkPolyhedron --- .../vtkPV3Foam/vtkPV3FoamMeshVolume.C | 51 ++++++++----------- 1 file changed, 21 insertions(+), 30 deletions(-) diff --git a/applications/utilities/postProcessing/graphics/PV3Readers/PV3FoamReader/vtkPV3Foam/vtkPV3FoamMeshVolume.C b/applications/utilities/postProcessing/graphics/PV3Readers/PV3FoamReader/vtkPV3Foam/vtkPV3FoamMeshVolume.C index 02c0484a5d..a9e39afbb7 100644 --- a/applications/utilities/postProcessing/graphics/PV3Readers/PV3FoamReader/vtkPV3Foam/vtkPV3FoamMeshVolume.C +++ b/applications/utilities/postProcessing/graphics/PV3Readers/PV3FoamReader/vtkPV3Foam/vtkPV3FoamMeshVolume.C @@ -164,17 +164,10 @@ vtkUnstructuredGrid* Foam::vtkPV3Foam::volumeVTKMesh // data types - max 'order' = hex = 8 points vtkIdType nodeIds[8]; - // hash to establish unique node ids for a polyhedral cell - HashSet > hashUniqId(2*256); - - // unique node ids for a polyhedral cell - DynamicList uniqueNodeIds(256); - // face-stream for a polyhedral cell // [numFace0Pts, id1, id2, id3, numFace1Pts, id1, id2, id3, ...] DynamicList faceStream(256); - forAll(cellShapes, cellI) { const cellShape& cellShape = cellShapes[cellI]; @@ -282,6 +275,7 @@ vtkUnstructuredGrid* Foam::vtkPV3Foam::volumeVTKMesh // Polyhedral cell - use VTK_POLYHEDRON const labelList& cFaces = mesh.cells()[cellI]; +#ifdef HAS_VTK_POLYHEDRON vtkIdType nFaces = cFaces.size(); vtkIdType nLabels = nFaces; @@ -292,13 +286,6 @@ vtkUnstructuredGrid* Foam::vtkPV3Foam::volumeVTKMesh nLabels += f.size(); } - // hash to establish unique node ids for a polyhedral cell - hashUniqId.clear(); - - // unique node ids - approximately equal to the number of point ids - uniqueNodeIds.clear(); - uniqueNodeIds.reserve(nLabels-nFaces); - // build face-stream // [numFace0Pts, id1, id2, id3, numFace1Pts, id1, id2, id3, ...] // point Ids are global @@ -318,7 +305,6 @@ vtkUnstructuredGrid* Foam::vtkPV3Foam::volumeVTKMesh { forAll(f, fp) { - hashUniqId.insert(f[fp]); faceStream.append(f[fp]); } } @@ -328,32 +314,37 @@ vtkUnstructuredGrid* Foam::vtkPV3Foam::volumeVTKMesh // or use face::reverseFace() forAllReverse(f, fp) { - hashUniqId.insert(f[fp]); faceStream.append(f[fp]); } } } - uniqueNodeIds.append(hashUniqId.sortedToc()); - vtkIdType nodeCount = uniqueNodeIds.size(); - -#ifdef HAS_VTK_POLYHEDRON - vtkmesh->InsertNextCell - ( - VTK_POLYHEDRON, - nodeCount, - uniqueNodeIds.data(), - nFaces, - faceStream.data() - ); + vtkmesh->InsertNextCell(VTK_POLYHEDRON, nFaces, faceStream.data()); #else // this is a horrible substitute // but avoids crashes when there is no vtkPolyhedron support + + // establish unique node ids used + HashSet > hashUniqId(2*256); + + forAll(cFaces, cFaceI) + { + const face& f = mesh.faces()[cFaces[cFaceI]]; + + forAll(f, fp) + { + hashUniqId.insert(f[fp]); + } + } + + // use face stream to store unique node ids: + faceStream = hashUniqId.sortedToc(); + vtkmesh->InsertNextCell ( VTK_CONVEX_POINT_SET, - nodeCount, - uniqueNodeIds.data() + vtkIdType(faceStream.size()), + faceStream.data() ); #endif } From 64ac5cbc788e4e7c8e3b68bb704cc135096e3d1c Mon Sep 17 00:00:00 2001 From: Mark Olesen Date: Fri, 7 May 2010 09:06:48 +0200 Subject: [PATCH 23/57] ENH: allow direct writing of polyhedra from foamToVTK --- .../dataConversion/foamToVTK/foamToVTK.C | 18 +++---- .../dataConversion/foamToVTK/internalWriter.C | 12 ++--- .../foamToVTK/lagrangianWriter.C | 1 - .../dataConversion/foamToVTK/patchWriter.C | 7 +-- .../dataConversion/foamToVTK/vtkMesh.C | 8 +-- .../dataConversion/foamToVTK/vtkTopo.C | 50 +++++++++++++++++-- .../dataConversion/foamToVTK/writeFuns.C | 35 ++++++------- .../foamToVTK/writeSurfFields.H | 2 +- 8 files changed, 76 insertions(+), 57 deletions(-) diff --git a/applications/utilities/postProcessing/dataConversion/foamToVTK/foamToVTK.C b/applications/utilities/postProcessing/dataConversion/foamToVTK/foamToVTK.C index 0c9dcf6d07..7c205e610a 100644 --- a/applications/utilities/postProcessing/dataConversion/foamToVTK/foamToVTK.C +++ b/applications/utilities/postProcessing/dataConversion/foamToVTK/foamToVTK.C @@ -40,7 +40,6 @@ Usage - foamToVTK [OPTION] - @param -ascii \n Write VTK data in ASCII format instead of binary. @@ -78,6 +77,9 @@ Usage @param -noLinks \n (in parallel) do not link processor files to master + @param poly \n + write polyhedral cells without tet/pyramid decomposition + @param -allPatches \n Combine all patches into a single file @@ -95,7 +97,7 @@ Usage Note mesh subset is handled by vtkMesh. Slight inconsistency in - interpolation: on the internal field it interpolates the whole volfield + interpolation: on the internal field it interpolates the whole volField to the whole-mesh pointField and then selects only those values it needs for the subMesh (using the fvMeshSubset cellMap(), pointMap() functions). For the patches however it uses the @@ -262,14 +264,11 @@ int main(int argc, char *argv[]) "ascii", "write in ASCII format instead of binary" ); -/* argList::addBoolOption ( - "noDecompose", - "do not decompose polyhedral cells into tets/prism cells" - "- NOT YET IMPLEMENTED" + "poly", + "write polyhedral cells without tet/pyramid decomposition" ); - */ argList::addBoolOption ( "surfaceFields", @@ -326,9 +325,8 @@ int main(int argc, char *argv[]) const bool binary = !args.optionFound("ascii"); const bool useTimeName = args.optionFound("useTimeName"); - // decomposition of polyhedral cells into tets/prism cells - // vtkTopo::decomposePoly = !args.optionFound("noDecompose"); - + // decomposition of polyhedral cells into tets/pyramids cells + vtkTopo::decomposePoly = !args.optionFound("poly"); if (binary && (sizeof(floatScalar) != 4 || sizeof(label) != 4)) { diff --git a/applications/utilities/postProcessing/dataConversion/foamToVTK/internalWriter.C b/applications/utilities/postProcessing/dataConversion/foamToVTK/internalWriter.C index 0c00893554..fa4ad21a5b 100644 --- a/applications/utilities/postProcessing/dataConversion/foamToVTK/internalWriter.C +++ b/applications/utilities/postProcessing/dataConversion/foamToVTK/internalWriter.C @@ -28,7 +28,6 @@ License // * * * * * * * * * * * * * * * * Constructors * * * * * * * * * * * * * * // -// Construct from components Foam::internalWriter::internalWriter ( const vtkMesh& vMesh, @@ -58,8 +57,7 @@ Foam::internalWriter::internalWriter const labelList& addPointCellLabels = topo.addPointCellLabels(); const label nTotPoints = mesh.nPoints() + addPointCellLabels.size(); - os_ << "POINTS " << nTotPoints - << " float" << std::endl; + os_ << "POINTS " << nTotPoints << " float" << std::endl; DynamicList ptField(3*nTotPoints); @@ -87,9 +85,7 @@ Foam::internalWriter::internalWriter nFaceVerts += vtkVertLabels[cellI].size() + 1; } - os_ << "CELLS " << vtkVertLabels.size() << ' ' << nFaceVerts - << std::endl; - + os_ << "CELLS " << vtkVertLabels.size() << ' ' << nFaceVerts << std::endl; DynamicList

Copyright © 2000-2010  OpenCFD Limited - | OPENFOAM® and OpenCFD® are registered trademarks of OpenCFD Ltd. + | OPENFOAM® and OpenCFD® are registered trademarks of OpenCFD Ltd.

Based on design by diff --git a/doc/doxygen/css/cfdLayout.css b/doc/doxygen/css/cfdLayout.css index db1b499318..4376035c4c 100644 --- a/doc/doxygen/css/cfdLayout.css +++ b/doc/doxygen/css/cfdLayout.css @@ -1,8 +1,4 @@ -/* import doxygen-specific adjustments */ -@import url(doxygen.css); /* standard doxygen style with minor mods */ -@import url(doxyMod.css); /* modifications to standard doxygen style */ -@import url(doxyTabs.css); /* modified doxygen tabs style */ -@import url(navigation.css); /* OpenCFD navigation styles */ +/* OpenCFD layout styles */ * { padding: 0; @@ -66,11 +62,10 @@ p:after { /*********************header***************************************************/ .header { - width:960px; + width:100%; } .header-top { - width:954px; height:80px; border:3px solid rgb(175,175,175); border-bottom-width: 0; @@ -81,7 +76,6 @@ p:after { } .header-bottom { - width:954px; border:3px solid rgb(175,175,175); border-top-width: 1px; background:rgb(225,225,225); @@ -150,6 +144,14 @@ p:after { } /*****************header-breadcrumbs ***************************************/ +.header-breadcrumbs { + clear:both; + width:100%; + padding:1.0em 0 1.5em 0; + border-left:3px solid rgb(175,175,175); + border-right:3px solid rgb(175,175,175); +} + .header-breadcrumbs ul { float:left; width:560px; @@ -158,14 +160,6 @@ p:after { font-family:verdana,arial,sans-serif; } -.header-breadcrumbs { - clear:both; - width:954px; - padding:1.0em 0 1.5em 0; - border-left:3px solid rgb(175,175,175); - border-right:3px solid rgb(175,175,175); -} - .header-breadcrumbs ul li { display:inline; padding:0 0 0 5px; @@ -316,19 +310,19 @@ div.contents a:hover { @media print { .header-top { - width:954px; + width:100%; height:80px; background:rgb(240,240,240); overflow:visible !important /*Firefox*/; overflow:hidden /*IE6*/; } .header-breadcrumbs { - width:954px; + width:100%; background:transparent; } .nav2 { float:left; - width:954px; + width:100%; border:none; background:rgb(240,240,240); color:rgb(75,75,75); @@ -337,7 +331,7 @@ div.contents a:hover { } /*Color navigation bar normal mode*/ .main { clear:both; - width:954px; + width:100%; padding-bottom:30px; background:transparent; } @@ -353,7 +347,7 @@ div.contents a:hover { } .footer { clear:both; - width:954px; + width:100%; height:3.7em; padding:1.1em 0 0; background:rgb(240,240,240); diff --git a/doc/doxygen/css/cfdNav.css b/doc/doxygen/css/cfdNav.css index a5e078aab0..506d7a6c72 100644 --- a/doc/doxygen/css/cfdNav.css +++ b/doc/doxygen/css/cfdNav.css @@ -98,7 +98,7 @@ { white-space:nowrap /*IE hack*/; float:left; - width:954px; + width:100%; background:rgb(225,225,225); color:rgb(100,100,100); font-size:130%; From 1a1c6a57e2cef5289b77c3265e55aee2e433e1d8 Mon Sep 17 00:00:00 2001 From: mattijs Date: Mon, 10 May 2010 13:57:44 +0100 Subject: [PATCH 31/57] STYLE: Added comment to explain usage. --- .../mesh/manipulation/topoSet/topoSetDict | 288 +++++++++++++++++- 1 file changed, 286 insertions(+), 2 deletions(-) diff --git a/applications/utilities/mesh/manipulation/topoSet/topoSetDict b/applications/utilities/mesh/manipulation/topoSet/topoSetDict index 4a9a1a9b41..ff487c6e64 100644 --- a/applications/utilities/mesh/manipulation/topoSet/topoSetDict +++ b/applications/utilities/mesh/manipulation/topoSet/topoSetDict @@ -15,6 +15,290 @@ FoamFile // * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * // +// List of actions. Each action is a dictionary with e.g. +// // name of set +// name c0; +// +// // type: pointSet/faceSet/cellSet/faceZoneSet/cellZoneSet +// type cellSet; +// +// // action to perform on set. Two types: +// // - require no source : clear/invert +// // - require source : new/add/delete/subset +// action new; +// +// The source entry varies according to the type of set: +// +// cellSet +// ~~~~~~~ +// +// // Select by explicitly providing cell labels +// source labelToCell; +// { +// value (12 13 56); // labels of cells +// } +// +// // Copy elements from cellSet +// source cellToCell; +// { +// set c1; +// } +// +// // Cells in cell zone +// source zoneToCell; +// { +// name ".*Zone"; // Name of cellZone, regular expressions allowed +// } +// +// // Cells on master or slave side of faceZone +// source faceZoneToCell; +// { +// name ".*Zone"; // Name of faceZone, regular expressions allowed +// option master; // master/slave +// } +// +// // Select based on faceSet +// source faceToCell; +// { +// set f0; // Name of faceSet +// +// //option neighbour; // cell with neighbour in faceSet +// //option owner; // ,, owner +// option any; // cell with any face in faceSet +// //option all; // cell with all faces in faceSet +// } +// +// // Select based on pointSet +// source pointToCell; +// { +// set p0; +// option any; // cell with any point in pointSet +// //option all; // cell with all points in pointSet +// } +// +// // Select based on cellShape +// source shapeToCell; +// { +// type hex; // hex/wedge/prism/pyr/tet/tetWedge/splitHex +// } +// +// // Cells with cell centre within box +// source boxToCell; +// { +// box (0 0 0) (1 1 1); +// } +// +// // Cells with cell centre within box +// // Is skewed, rotated box. Given as origin and three spanning vectors. +// source rotatedBoxToCell; +// { +// origin (0.2 0.2 -10); +// i (0.2 0.2 0); +// j (-0.2 0.2 0); +// k (10 10 10); +// } +// +// // Cells with centre within cylinder +// source cylinderToCell; +// { +// p1 (0.2 0.2 -10); // start point on cylinder axis +// p2 (0.2 0.2 0); // end point on cylinder axis +// radius 5.0; +// } +// +// // Cells with centre within sphere +// source sphereToCell; +// { +// centre (0.2 0.2 -10); +// radius 5.0; +// } +// +// // Cells with cellCentre nearest to coordinates +// source nearestToCell; +// { +// points ((0 0 0) (1 1 1)(2 2 2)); +// } +// +// // Select based on surface +// source surfaceToCell; +// { +// file "www.avl.com-geometry.stl"; +// outsidePoints ((-99 -99 -59)); // definition of outside +// includeCut false; // cells cut by surface +// includeInside false; // cells not on outside of surf +// includeOutside false; // cells on outside of surf +// nearDistance -1; // cells with centre near surf +// // (set to -1 if not used) +// curvature 0.9; // cells within nearDistance +// // and near surf curvature +// // (set to -100 if not used) +// } +// +// // values of field within certain range +// source fieldToCell; +// { +// fieldName U; // Note: uses mag(U) since volVectorField +// min 0.1; +// max 0.5; +// } +// +// // Mesh region (non-face connected part of (subset of)mesh) +// source regionToCell; +// { +// set c0; // name of cellSet giving mesh subset +// insidePoint (1 2 3); // point inside region to select +// } +// +// +// +// faceSet +// ~~~~~~~ +// +// // Copy elements from faceSet +// source faceToFace; +// { +// set f1; +// } +// +// // Select based on cellSet +// source cellToFace; +// { +// set c0; +// option all; // All faces of cells +// //option both; // Only faces whose owner&neighbour are in cellSet +// } +// +// // Select based on pointSet +// source pointToFace; +// { +// set p0; +// option any; // Faces using any point in pointSet +// //option all // Faces with all points in pointSet +// } +// +// // Select by explicitly providing face labels +// source labelToFace; +// { +// value (12 13 56); // labels of faces +// } +// +// // All faces of patch +// source patchToFace; +// { +// name ".*Wall"; // Name of patch, regular expressions allowed +// } +// +// // All faces of faceZone +// source zoneToFace; +// { +// name ".*Zone1"; // Name of faceZone, regular expressions allowed +// } +// +// // Faces with face centre within box +// source boxToFace; +// { +// box (0 0 0) (1 1 1); +// } +// +// // Faces with normal to within certain angle aligned with vector. +// source normalToFace; +// { +// normal (0 0 1); // Vector +// cos 0.01; // Tolerance (max cos of angle) +// } +// +// +// +// pointSet +// ~~~~~~~ +// +// // Copy elements from pointSet +// source pointToPoint; +// { +// set p1; +// } +// +// // Select based on cellSet +// source cellToPoint; +// { +// set c0; +// option all; // all points of cell +// } +// +// // Select based on faceSet +// source faceToPoint; +// { +// set f0; // name of faceSet +// option all; // all points of face +// } +// +// // Select by explicitly providing point labels +// source labelToPoint; +// { +// value (12 13 56); // labels of points +// } +// +// // All points in pointzone +// source zoneToPoint; +// { +// name ".*Zone"; // name of pointZone, regular expressions allowed +// } +// +// // Points nearest to coordinates +// source nearestToPoint; +// { +// points ((0 0 0) (1 1 1)); +// } +// +// // Points with coordinate within box +// source boxToPoint; +// { +// box (0 0 0) (1 1 1); +// } +// +// // Select based on surface +// source surfaceToPoint; +// { +// file "www.avl.com-geometry.stl"; +// nearDistance 0.1; // points near to surface +// includeInside false; // points on inside of surface +// // (requires closed surface with consistent +// // normals) +// includeOutside false; // ,, outside ,, +// } +// +// +// +// +// cellZoneSet +// ~~~~~~~~~~~ +// (mirrors operations on a cellSet into a cellZone) +// +// // Select based on cellSet +// source setToCellZone; +// { +// set c0; // name of cellSet +// } +// +// +// +// faceZoneSet +// ~~~~~~~~~~~ +// // Select based on faceSet without orientation +// source setToFaceZone; +// { +// set f0; // name of faceSet +// } +// +// // Select based on faceSet, using cellSet to determine orientation +// source setsToFaceZone; +// { +// faceSet f0; // name of faceSet +// cellSet c0; // name of cellSet of slave side +// } + + + actions ( { @@ -24,7 +308,7 @@ actions source labelToCell; sourceDict { - value (12 13 56); // labels of cells + value (12 13 56); } } @@ -41,7 +325,7 @@ actions source labelToCell; sourceDict { - value (1 2 3); // labels of cells + value (1 2 3); } } ); From 3c1318fc4faf93ccff24c1e3da4811acbc52165c Mon Sep 17 00:00:00 2001 From: mattijs Date: Mon, 10 May 2010 17:17:49 +0100 Subject: [PATCH 32/57] ENH: Converted all cellSet/faceSet to topoSet. --- .../mesh/manipulation/topoSet/topoSet.C | 1 + .../mixerVessel2D/system/faceSetDict | 25 -------------- .../system/faceSetDict_noBoundaryFaces | 25 -------------- .../system/faceSetDict_rotorFaces | 25 -------------- .../mixerVessel2D/system/faceSetDict | 25 -------------- .../system/faceSetDict_noBoundaryFaces | 25 -------------- .../system/faceSetDict_rotorFaces | 25 -------------- .../coalChemistryFoam/simplifiedSiwek/Allrun | 2 +- .../system/{cellSetDict => topoSetDict} | 21 +++++++----- .../multiphase/cavitatingFoam/les/Allclean | 4 +-- .../multiphase/cavitatingFoam/les/Allrun | 4 +-- .../les/throttle/system/topoSetDict.1 | 33 ++++++++++++++++++ .../les/throttle/system/topoSetDict.2 | 33 ++++++++++++++++++ .../les/throttle/system/topoSetDict.3 | 33 ++++++++++++++++++ .../les/throttle3D/system/cellSetDict.1 | 31 ----------------- .../les/throttle3D/system/cellSetDict.2 | 31 ----------------- .../les/throttle3D/system/cellSetDict.3 | 31 ----------------- .../les/throttle3D/system/topoSetDict.1 | 33 ++++++++++++++++++ .../les/throttle3D/system/topoSetDict.2 | 33 ++++++++++++++++++ .../les/throttle3D/system/topoSetDict.3 | 33 ++++++++++++++++++ .../cavitatingFoam/ras/throttle/Allclean | 2 +- .../cavitatingFoam/ras/throttle/Allrun | 4 +-- .../ras/throttle/system/cellSetDict.1 | 25 -------------- .../ras/throttle/system/cellSetDict.2 | 25 -------------- .../ras/throttle/system/cellSetDict.3 | 25 -------------- .../ras/throttle/system/topoSetDict | 33 ++++++++++++++++++ .../ras/throttle/system/topoSetDict.1} | 19 ++++++----- .../ras/throttle/system/topoSetDict.2 | 33 ++++++++++++++++++ .../ras/throttle/system/topoSetDict.3 | 33 ++++++++++++++++++ .../interDyMFoam/ras/floatingObject/Allclean | 1 - .../interDyMFoam/ras/floatingObject/Allrun | 13 +------ .../ras/floatingObject/system/cellSetDict.2 | 24 ------------- .../system/{cellSetDict.1 => topoSetDict} | 24 ++++++++----- .../MRFInterFoam/mixerVessel2D/makeMesh | 7 +--- .../mixerVessel2D/system/cellSetDict | 25 -------------- .../mixerVessel2D/system/faceSetDict | 25 -------------- .../system/faceSetDict_noBoundaryFaces | 25 -------------- .../system/faceSetDict_rotorFaces | 25 -------------- .../mixerVessel2D/system/topoSetDict | 34 +++++++++++++++++++ .../interFoam/les/nozzleFlow2D/Allrun | 10 +++--- .../les/nozzleFlow2D/system/cellSetDict | 25 -------------- .../les/nozzleFlow2D/system/cellSetDict.1 | 25 -------------- .../les/nozzleFlow2D/system/cellSetDict.2 | 25 -------------- .../les/nozzleFlow2D/system/topoSetDict} | 18 +++++----- .../les/nozzleFlow2D/system/topoSetDict.1} | 19 ++++++----- .../les/nozzleFlow2D/system/topoSetDict.2} | 18 +++++----- 46 files changed, 415 insertions(+), 600 deletions(-) delete mode 100644 tutorials/compressible/rhoPorousMRFPimpleFoam/mixerVessel2D/system/faceSetDict delete mode 100644 tutorials/compressible/rhoPorousMRFPimpleFoam/mixerVessel2D/system/faceSetDict_noBoundaryFaces delete mode 100644 tutorials/compressible/rhoPorousMRFPimpleFoam/mixerVessel2D/system/faceSetDict_rotorFaces delete mode 100644 tutorials/incompressible/MRFSimpleFoam/mixerVessel2D/system/faceSetDict delete mode 100644 tutorials/incompressible/MRFSimpleFoam/mixerVessel2D/system/faceSetDict_noBoundaryFaces delete mode 100644 tutorials/incompressible/MRFSimpleFoam/mixerVessel2D/system/faceSetDict_rotorFaces rename tutorials/lagrangian/coalChemistryFoam/simplifiedSiwek/system/{cellSetDict => topoSetDict} (76%) create mode 100644 tutorials/multiphase/cavitatingFoam/les/throttle/system/topoSetDict.1 create mode 100644 tutorials/multiphase/cavitatingFoam/les/throttle/system/topoSetDict.2 create mode 100644 tutorials/multiphase/cavitatingFoam/les/throttle/system/topoSetDict.3 delete mode 100644 tutorials/multiphase/cavitatingFoam/les/throttle3D/system/cellSetDict.1 delete mode 100644 tutorials/multiphase/cavitatingFoam/les/throttle3D/system/cellSetDict.2 delete mode 100644 tutorials/multiphase/cavitatingFoam/les/throttle3D/system/cellSetDict.3 create mode 100644 tutorials/multiphase/cavitatingFoam/les/throttle3D/system/topoSetDict.1 create mode 100644 tutorials/multiphase/cavitatingFoam/les/throttle3D/system/topoSetDict.2 create mode 100644 tutorials/multiphase/cavitatingFoam/les/throttle3D/system/topoSetDict.3 delete mode 100644 tutorials/multiphase/cavitatingFoam/ras/throttle/system/cellSetDict.1 delete mode 100644 tutorials/multiphase/cavitatingFoam/ras/throttle/system/cellSetDict.2 delete mode 100644 tutorials/multiphase/cavitatingFoam/ras/throttle/system/cellSetDict.3 create mode 100644 tutorials/multiphase/cavitatingFoam/ras/throttle/system/topoSetDict rename tutorials/{lagrangian/porousExplicitSourceReactingParcelFoam/filter/system/cellSetDict => multiphase/cavitatingFoam/ras/throttle/system/topoSetDict.1} (78%) create mode 100644 tutorials/multiphase/cavitatingFoam/ras/throttle/system/topoSetDict.2 create mode 100644 tutorials/multiphase/cavitatingFoam/ras/throttle/system/topoSetDict.3 delete mode 100644 tutorials/multiphase/interDyMFoam/ras/floatingObject/system/cellSetDict.2 rename tutorials/multiphase/interDyMFoam/ras/floatingObject/system/{cellSetDict.1 => topoSetDict} (74%) delete mode 100644 tutorials/multiphase/interFoam/MRFInterFoam/mixerVessel2D/system/cellSetDict delete mode 100644 tutorials/multiphase/interFoam/MRFInterFoam/mixerVessel2D/system/faceSetDict delete mode 100644 tutorials/multiphase/interFoam/MRFInterFoam/mixerVessel2D/system/faceSetDict_noBoundaryFaces delete mode 100644 tutorials/multiphase/interFoam/MRFInterFoam/mixerVessel2D/system/faceSetDict_rotorFaces create mode 100644 tutorials/multiphase/interFoam/MRFInterFoam/mixerVessel2D/system/topoSetDict delete mode 100644 tutorials/multiphase/interFoam/les/nozzleFlow2D/system/cellSetDict delete mode 100644 tutorials/multiphase/interFoam/les/nozzleFlow2D/system/cellSetDict.1 delete mode 100644 tutorials/multiphase/interFoam/les/nozzleFlow2D/system/cellSetDict.2 rename tutorials/multiphase/{cavitatingFoam/les/throttle/system/cellSetDict.1 => interFoam/les/nozzleFlow2D/system/topoSetDict} (78%) rename tutorials/multiphase/{cavitatingFoam/les/throttle/system/cellSetDict.3 => interFoam/les/nozzleFlow2D/system/topoSetDict.1} (78%) rename tutorials/multiphase/{cavitatingFoam/les/throttle/system/cellSetDict.2 => interFoam/les/nozzleFlow2D/system/topoSetDict.2} (78%) diff --git a/applications/utilities/mesh/manipulation/topoSet/topoSet.C b/applications/utilities/mesh/manipulation/topoSet/topoSet.C index bd15b1cc08..d794ae342d 100644 --- a/applications/utilities/mesh/manipulation/topoSet/topoSet.C +++ b/applications/utilities/mesh/manipulation/topoSet/topoSet.C @@ -167,6 +167,7 @@ int main(int argc, char *argv[]) case topoSetSource::INVERT: Info<< " Inverting set" << endl; currentSet().invert(currentSet().maxSize(mesh)); + currentSet().write(); break; default: diff --git a/tutorials/compressible/rhoPorousMRFPimpleFoam/mixerVessel2D/system/faceSetDict b/tutorials/compressible/rhoPorousMRFPimpleFoam/mixerVessel2D/system/faceSetDict deleted file mode 100644 index d4c9e00065..0000000000 --- a/tutorials/compressible/rhoPorousMRFPimpleFoam/mixerVessel2D/system/faceSetDict +++ /dev/null @@ -1,25 +0,0 @@ -/*--------------------------------*- C++ -*----------------------------------*\ -| ========= | | -| \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: 1.6 | -| \\ / A nd | Web: www.OpenFOAM.org | -| \\/ M anipulation | | -\*---------------------------------------------------------------------------*/ -FoamFile -{ - version 2.0; - format ascii; - class dictionary; - location "system"; - object faceSetDict; -} -// * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * // - -name rotor; - -action delete; - -topoSetSources ( boundaryToFace { } ); - - -// ************************************************************************* // diff --git a/tutorials/compressible/rhoPorousMRFPimpleFoam/mixerVessel2D/system/faceSetDict_noBoundaryFaces b/tutorials/compressible/rhoPorousMRFPimpleFoam/mixerVessel2D/system/faceSetDict_noBoundaryFaces deleted file mode 100644 index 38fa0208ed..0000000000 --- a/tutorials/compressible/rhoPorousMRFPimpleFoam/mixerVessel2D/system/faceSetDict_noBoundaryFaces +++ /dev/null @@ -1,25 +0,0 @@ -/*--------------------------------*- C++ -*----------------------------------*\ -| ========= | | -| \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: 1.6 | -| \\ / A nd | Web: www.OpenFOAM.org | -| \\/ M anipulation | | -\*---------------------------------------------------------------------------*/ -FoamFile -{ - version 2.0; - format ascii; - class dictionary; - location "system"; - object faceSetDict_noBoundaryFaces; -} -// * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * // - -name rotor; - -action delete; - -topoSetSources ( boundaryToFace { } ); - - -// ************************************************************************* // diff --git a/tutorials/compressible/rhoPorousMRFPimpleFoam/mixerVessel2D/system/faceSetDict_rotorFaces b/tutorials/compressible/rhoPorousMRFPimpleFoam/mixerVessel2D/system/faceSetDict_rotorFaces deleted file mode 100644 index 3ccb7ad761..0000000000 --- a/tutorials/compressible/rhoPorousMRFPimpleFoam/mixerVessel2D/system/faceSetDict_rotorFaces +++ /dev/null @@ -1,25 +0,0 @@ -/*--------------------------------*- C++ -*----------------------------------*\ -| ========= | | -| \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: 1.6 | -| \\ / A nd | Web: www.OpenFOAM.org | -| \\/ M anipulation | | -\*---------------------------------------------------------------------------*/ -FoamFile -{ - version 2.0; - format ascii; - class dictionary; - location "system"; - object faceSetDict_rotorFaces; -} -// * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * // - -name rotor; - -action new; - -topoSetSources ( cellToFace { set rotor ; option all ; } ); - - -// ************************************************************************* // diff --git a/tutorials/incompressible/MRFSimpleFoam/mixerVessel2D/system/faceSetDict b/tutorials/incompressible/MRFSimpleFoam/mixerVessel2D/system/faceSetDict deleted file mode 100644 index d4c9e00065..0000000000 --- a/tutorials/incompressible/MRFSimpleFoam/mixerVessel2D/system/faceSetDict +++ /dev/null @@ -1,25 +0,0 @@ -/*--------------------------------*- C++ -*----------------------------------*\ -| ========= | | -| \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: 1.6 | -| \\ / A nd | Web: www.OpenFOAM.org | -| \\/ M anipulation | | -\*---------------------------------------------------------------------------*/ -FoamFile -{ - version 2.0; - format ascii; - class dictionary; - location "system"; - object faceSetDict; -} -// * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * // - -name rotor; - -action delete; - -topoSetSources ( boundaryToFace { } ); - - -// ************************************************************************* // diff --git a/tutorials/incompressible/MRFSimpleFoam/mixerVessel2D/system/faceSetDict_noBoundaryFaces b/tutorials/incompressible/MRFSimpleFoam/mixerVessel2D/system/faceSetDict_noBoundaryFaces deleted file mode 100644 index 38fa0208ed..0000000000 --- a/tutorials/incompressible/MRFSimpleFoam/mixerVessel2D/system/faceSetDict_noBoundaryFaces +++ /dev/null @@ -1,25 +0,0 @@ -/*--------------------------------*- C++ -*----------------------------------*\ -| ========= | | -| \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: 1.6 | -| \\ / A nd | Web: www.OpenFOAM.org | -| \\/ M anipulation | | -\*---------------------------------------------------------------------------*/ -FoamFile -{ - version 2.0; - format ascii; - class dictionary; - location "system"; - object faceSetDict_noBoundaryFaces; -} -// * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * // - -name rotor; - -action delete; - -topoSetSources ( boundaryToFace { } ); - - -// ************************************************************************* // diff --git a/tutorials/incompressible/MRFSimpleFoam/mixerVessel2D/system/faceSetDict_rotorFaces b/tutorials/incompressible/MRFSimpleFoam/mixerVessel2D/system/faceSetDict_rotorFaces deleted file mode 100644 index 3ccb7ad761..0000000000 --- a/tutorials/incompressible/MRFSimpleFoam/mixerVessel2D/system/faceSetDict_rotorFaces +++ /dev/null @@ -1,25 +0,0 @@ -/*--------------------------------*- C++ -*----------------------------------*\ -| ========= | | -| \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: 1.6 | -| \\ / A nd | Web: www.OpenFOAM.org | -| \\/ M anipulation | | -\*---------------------------------------------------------------------------*/ -FoamFile -{ - version 2.0; - format ascii; - class dictionary; - location "system"; - object faceSetDict_rotorFaces; -} -// * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * // - -name rotor; - -action new; - -topoSetSources ( cellToFace { set rotor ; option all ; } ); - - -// ************************************************************************* // diff --git a/tutorials/lagrangian/coalChemistryFoam/simplifiedSiwek/Allrun b/tutorials/lagrangian/coalChemistryFoam/simplifiedSiwek/Allrun index a67553deb1..666ec8f286 100755 --- a/tutorials/lagrangian/coalChemistryFoam/simplifiedSiwek/Allrun +++ b/tutorials/lagrangian/coalChemistryFoam/simplifiedSiwek/Allrun @@ -10,7 +10,7 @@ application=`getApplication` runApplication blockMesh # create ignition cells cellSet -runApplication cellSet +runApplication topoSet runApplication $application diff --git a/tutorials/lagrangian/coalChemistryFoam/simplifiedSiwek/system/cellSetDict b/tutorials/lagrangian/coalChemistryFoam/simplifiedSiwek/system/topoSetDict similarity index 76% rename from tutorials/lagrangian/coalChemistryFoam/simplifiedSiwek/system/cellSetDict rename to tutorials/lagrangian/coalChemistryFoam/simplifiedSiwek/system/topoSetDict index bd2802d8bd..ccaf0363cd 100644 --- a/tutorials/lagrangian/coalChemistryFoam/simplifiedSiwek/system/cellSetDict +++ b/tutorials/lagrangian/coalChemistryFoam/simplifiedSiwek/system/topoSetDict @@ -10,21 +10,24 @@ FoamFile version 2.0; format ascii; class dictionary; - object cellSetDict; + object topoSetDict; } // * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * // -name ignitionCells; - -action new; - -topoSetSources +actions ( - sphereToCell { - centre ( 0.125 0.375 0.05 ); - radius 0.005; + name ignitionCells; + type cellSet; + action new; + + source sphereToCell; + sourceDict + { + centre ( 0.125 0.375 0.05 ); + radius 0.005; + } } ); diff --git a/tutorials/multiphase/cavitatingFoam/les/Allclean b/tutorials/multiphase/cavitatingFoam/les/Allclean index fae8abfab6..68db65d125 100755 --- a/tutorials/multiphase/cavitatingFoam/les/Allclean +++ b/tutorials/multiphase/cavitatingFoam/les/Allclean @@ -9,7 +9,7 @@ cd ${0%/*} || exit 1 # run from this directory rm -rf constant/polyMesh/sets > /dev/null 2>&1 rm -rf 0/polyMesh > /dev/null 2>&1 - rm system/cellSetDict > /dev/null 2>&1 + rm system/topoSetDict > /dev/null 2>&1 cleanCase ) @@ -21,7 +21,7 @@ cd ${0%/*} || exit 1 # run from this directory rm -rf constant/polyMesh/sets > /dev/null 2>&1 rm -rf 0 > /dev/null 2>&1 cp -r 0.org 0 - rm system/cellSetDict > /dev/null 2>&1 + rm system/topoSetDict > /dev/null 2>&1 rm -rf processor[0-9] > /dev/null 2>&1 cleanCase diff --git a/tutorials/multiphase/cavitatingFoam/les/Allrun b/tutorials/multiphase/cavitatingFoam/les/Allrun index caff26f571..2cf6a091a2 100755 --- a/tutorials/multiphase/cavitatingFoam/les/Allrun +++ b/tutorials/multiphase/cavitatingFoam/les/Allrun @@ -12,8 +12,8 @@ refineMeshByCellSet() while [ $# -ge 1 ] do echo "creating cell set for primary zone - $1" - cp system/cellSetDict.$1 system/cellSetDict - cellSet > log.cellSet.$1 2>&1 + cp system/topoSetDict.$1 system/topoSetDict + topoSet > log.topoSet.$1 2>&1 echo "refining primary zone - $1" refineMesh -dict -overwrite > log.refineMesh.$1 2>&1 diff --git a/tutorials/multiphase/cavitatingFoam/les/throttle/system/topoSetDict.1 b/tutorials/multiphase/cavitatingFoam/les/throttle/system/topoSetDict.1 new file mode 100644 index 0000000000..1e1592ee39 --- /dev/null +++ b/tutorials/multiphase/cavitatingFoam/les/throttle/system/topoSetDict.1 @@ -0,0 +1,33 @@ +/*--------------------------------*- C++ -*----------------------------------*\ +| ========= | | +| \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | +| \\ / O peration | Version: 1.6 | +| \\ / A nd | Web: www.OpenFOAM.org | +| \\/ M anipulation | | +\*---------------------------------------------------------------------------*/ +FoamFile +{ + version 2.0; + format ascii; + class dictionary; + location "system"; + object topoSetDict.1; +} +// * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * // + +actions +( + { + name c0; + type cellSet; + action new; + source boxToCell; + sourceDict + { + box (0.004 -0.001 -1) (0.012 0.001 1); + } + } +); + + +// ************************************************************************* // diff --git a/tutorials/multiphase/cavitatingFoam/les/throttle/system/topoSetDict.2 b/tutorials/multiphase/cavitatingFoam/les/throttle/system/topoSetDict.2 new file mode 100644 index 0000000000..ab0289c156 --- /dev/null +++ b/tutorials/multiphase/cavitatingFoam/les/throttle/system/topoSetDict.2 @@ -0,0 +1,33 @@ +/*--------------------------------*- C++ -*----------------------------------*\ +| ========= | | +| \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | +| \\ / O peration | Version: 1.6 | +| \\ / A nd | Web: www.OpenFOAM.org | +| \\/ M anipulation | | +\*---------------------------------------------------------------------------*/ +FoamFile +{ + version 2.0; + format ascii; + class dictionary; + location "system"; + object topoSetDict.2; +} +// * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * // + +actions +( + { + name c0; + type cellSet; + action new; + source boxToCell; + sourceDict + { + box (0.0045 -0.00075 -1) (0.0095 0.00075 1); + } + } +); + + +// ************************************************************************* // diff --git a/tutorials/multiphase/cavitatingFoam/les/throttle/system/topoSetDict.3 b/tutorials/multiphase/cavitatingFoam/les/throttle/system/topoSetDict.3 new file mode 100644 index 0000000000..3e504e9aef --- /dev/null +++ b/tutorials/multiphase/cavitatingFoam/les/throttle/system/topoSetDict.3 @@ -0,0 +1,33 @@ +/*--------------------------------*- C++ -*----------------------------------*\ +| ========= | | +| \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | +| \\ / O peration | Version: 1.6 | +| \\ / A nd | Web: www.OpenFOAM.org | +| \\/ M anipulation | | +\*---------------------------------------------------------------------------*/ +FoamFile +{ + version 2.0; + format ascii; + class dictionary; + location "system"; + object topoSetDict.3; +} +// * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * // + +actions +( + { + name c0; + type cellSet; + action new; + source boxToCell; + sourceDict + { + box (0.00475 -0.000375 -1) (0.009 0.000375 1); + } + } +); + + +// ************************************************************************* // diff --git a/tutorials/multiphase/cavitatingFoam/les/throttle3D/system/cellSetDict.1 b/tutorials/multiphase/cavitatingFoam/les/throttle3D/system/cellSetDict.1 deleted file mode 100644 index 2eb73c024e..0000000000 --- a/tutorials/multiphase/cavitatingFoam/les/throttle3D/system/cellSetDict.1 +++ /dev/null @@ -1,31 +0,0 @@ -/*--------------------------------*- C++ -*----------------------------------*\ -| ========= | | -| \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: 1.6 | -| \\ / A nd | Web: www.OpenFOAM.org | -| \\/ M anipulation | | -\*---------------------------------------------------------------------------*/ -FoamFile -{ - version 2.0; - format ascii; - class dictionary; - location "system"; - object cellSetDict.1; -} -// * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * // - -name c0; - -action new; - -topoSetSources -( - boxToCell - { - box ( 0.004 -0.001 -1 ) ( 0.012 0.001 1 ); - } -); - - -// ************************************************************************* // diff --git a/tutorials/multiphase/cavitatingFoam/les/throttle3D/system/cellSetDict.2 b/tutorials/multiphase/cavitatingFoam/les/throttle3D/system/cellSetDict.2 deleted file mode 100644 index 8a78bbba80..0000000000 --- a/tutorials/multiphase/cavitatingFoam/les/throttle3D/system/cellSetDict.2 +++ /dev/null @@ -1,31 +0,0 @@ -/*--------------------------------*- C++ -*----------------------------------*\ -| ========= | | -| \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: 1.6 | -| \\ / A nd | Web: www.OpenFOAM.org | -| \\/ M anipulation | | -\*---------------------------------------------------------------------------*/ -FoamFile -{ - version 2.0; - format ascii; - class dictionary; - location "system"; - object cellSetDict.2; -} -// * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * // - -name c0; - -action new; - -topoSetSources -( - boxToCell - { - box ( 0.0045 -0.00075 -1 ) ( 0.0095 0.00075 1 ); - } -); - - -// ************************************************************************* // diff --git a/tutorials/multiphase/cavitatingFoam/les/throttle3D/system/cellSetDict.3 b/tutorials/multiphase/cavitatingFoam/les/throttle3D/system/cellSetDict.3 deleted file mode 100644 index 3eb51acdc4..0000000000 --- a/tutorials/multiphase/cavitatingFoam/les/throttle3D/system/cellSetDict.3 +++ /dev/null @@ -1,31 +0,0 @@ -/*--------------------------------*- C++ -*----------------------------------*\ -| ========= | | -| \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: 1.6 | -| \\ / A nd | Web: www.OpenFOAM.org | -| \\/ M anipulation | | -\*---------------------------------------------------------------------------*/ -FoamFile -{ - version 2.0; - format ascii; - class dictionary; - location "system"; - object cellSetDict.3; -} -// * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * // - -name c0; - -action new; - -topoSetSources -( - boxToCell - { - box ( 0.00475 -0.000375 -1 ) ( 0.009 0.000375 1 ); - } -); - - -// ************************************************************************* // diff --git a/tutorials/multiphase/cavitatingFoam/les/throttle3D/system/topoSetDict.1 b/tutorials/multiphase/cavitatingFoam/les/throttle3D/system/topoSetDict.1 new file mode 100644 index 0000000000..cd2329f57d --- /dev/null +++ b/tutorials/multiphase/cavitatingFoam/les/throttle3D/system/topoSetDict.1 @@ -0,0 +1,33 @@ +/*--------------------------------*- C++ -*----------------------------------*\ +| ========= | | +| \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | +| \\ / O peration | Version: 1.6 | +| \\ / A nd | Web: www.OpenFOAM.org | +| \\/ M anipulation | | +\*---------------------------------------------------------------------------*/ +FoamFile +{ + version 2.0; + format ascii; + class dictionary; + location "system"; + object topoSetDict.1; +} +// * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * // + +actions +( + { + name c0; + type cellSet; + action new; + source boxToCell; + sourceDict + { + box ( 0.004 -0.001 -1 ) ( 0.012 0.001 1 ); + } + } +); + + +// ************************************************************************* // diff --git a/tutorials/multiphase/cavitatingFoam/les/throttle3D/system/topoSetDict.2 b/tutorials/multiphase/cavitatingFoam/les/throttle3D/system/topoSetDict.2 new file mode 100644 index 0000000000..a8a80dff4d --- /dev/null +++ b/tutorials/multiphase/cavitatingFoam/les/throttle3D/system/topoSetDict.2 @@ -0,0 +1,33 @@ +/*--------------------------------*- C++ -*----------------------------------*\ +| ========= | | +| \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | +| \\ / O peration | Version: 1.6 | +| \\ / A nd | Web: www.OpenFOAM.org | +| \\/ M anipulation | | +\*---------------------------------------------------------------------------*/ +FoamFile +{ + version 2.0; + format ascii; + class dictionary; + location "system"; + object topoSetDict.2; +} +// * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * // + +actions +( + { + name c0; + type cellSet; + action new; + source boxToCell; + sourceDict + { + box ( 0.0045 -0.00075 -1 ) ( 0.0095 0.00075 1 ); + } + } +); + + +// ************************************************************************* // diff --git a/tutorials/multiphase/cavitatingFoam/les/throttle3D/system/topoSetDict.3 b/tutorials/multiphase/cavitatingFoam/les/throttle3D/system/topoSetDict.3 new file mode 100644 index 0000000000..67021ba219 --- /dev/null +++ b/tutorials/multiphase/cavitatingFoam/les/throttle3D/system/topoSetDict.3 @@ -0,0 +1,33 @@ +/*--------------------------------*- C++ -*----------------------------------*\ +| ========= | | +| \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | +| \\ / O peration | Version: 1.6 | +| \\ / A nd | Web: www.OpenFOAM.org | +| \\/ M anipulation | | +\*---------------------------------------------------------------------------*/ +FoamFile +{ + version 2.0; + format ascii; + class dictionary; + location "system"; + object topoSetDict.3; +} +// * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * // + +actions +( + { + name c0; + type cellSet; + action new; + source boxToCell; + sourceDict + { + box ( 0.00475 -0.000375 -1 ) ( 0.009 0.000375 1 ); + } + } +); + + +// ************************************************************************* // diff --git a/tutorials/multiphase/cavitatingFoam/ras/throttle/Allclean b/tutorials/multiphase/cavitatingFoam/ras/throttle/Allclean index 96f4954120..c49b5e9af3 100755 --- a/tutorials/multiphase/cavitatingFoam/ras/throttle/Allclean +++ b/tutorials/multiphase/cavitatingFoam/ras/throttle/Allclean @@ -6,7 +6,7 @@ cd ${0%/*} || exit 1 # run from this directory rm -rf constant/polyMesh/sets > /dev/null 2>&1 rm -rf 0/polyMesh > /dev/null 2>&1 -rm system/cellSetDict > /dev/null 2>&1 +rm system/topoDict > /dev/null 2>&1 cleanCase # ----------------------------------------------------------------- end-of-file diff --git a/tutorials/multiphase/cavitatingFoam/ras/throttle/Allrun b/tutorials/multiphase/cavitatingFoam/ras/throttle/Allrun index 878222cf80..9f117b0ba8 100755 --- a/tutorials/multiphase/cavitatingFoam/ras/throttle/Allrun +++ b/tutorials/multiphase/cavitatingFoam/ras/throttle/Allrun @@ -11,8 +11,8 @@ refineMeshByCellSet() while [ $# -ge 1 ] do echo "creating cell set for primary zone - $1" - cp system/cellSetDict.$1 system/cellSetDict - cellSet > log.cellSet.$1 2>&1 + cp system/topoSetDict.$1 system/topoSetDict + topoSet > log.topoSet.$1 2>&1 echo "refining primary zone - $1" refineMesh -dict -overwrite > log.refineMesh.$1 2>&1 diff --git a/tutorials/multiphase/cavitatingFoam/ras/throttle/system/cellSetDict.1 b/tutorials/multiphase/cavitatingFoam/ras/throttle/system/cellSetDict.1 deleted file mode 100644 index 93a5a661f8..0000000000 --- a/tutorials/multiphase/cavitatingFoam/ras/throttle/system/cellSetDict.1 +++ /dev/null @@ -1,25 +0,0 @@ -/*--------------------------------*- C++ -*----------------------------------*\ -| ========= | | -| \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: 1.6 | -| \\ / A nd | Web: www.OpenFOAM.org | -| \\/ M anipulation | | -\*---------------------------------------------------------------------------*/ -FoamFile -{ - version 2.0; - format ascii; - class dictionary; - location "system"; - object cellSetDict.1; -} -// * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * // - -name c0; - -action new; - -topoSetSources ( boxToCell { box ( 0.004 -0.001 -1 ) ( 0.012 0.001 1 ) ; } ); - - -// ************************************************************************* // diff --git a/tutorials/multiphase/cavitatingFoam/ras/throttle/system/cellSetDict.2 b/tutorials/multiphase/cavitatingFoam/ras/throttle/system/cellSetDict.2 deleted file mode 100644 index c7826d8689..0000000000 --- a/tutorials/multiphase/cavitatingFoam/ras/throttle/system/cellSetDict.2 +++ /dev/null @@ -1,25 +0,0 @@ -/*--------------------------------*- C++ -*----------------------------------*\ -| ========= | | -| \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: 1.6 | -| \\ / A nd | Web: www.OpenFOAM.org | -| \\/ M anipulation | | -\*---------------------------------------------------------------------------*/ -FoamFile -{ - version 2.0; - format ascii; - class dictionary; - location "system"; - object cellSetDict.2; -} -// * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * // - -name c0; - -action new; - -topoSetSources ( boxToCell { box ( 0.0045 -0.00075 -1 ) ( 0.0095 0.00075 1 ) ; } ); - - -// ************************************************************************* // diff --git a/tutorials/multiphase/cavitatingFoam/ras/throttle/system/cellSetDict.3 b/tutorials/multiphase/cavitatingFoam/ras/throttle/system/cellSetDict.3 deleted file mode 100644 index 87b315aafb..0000000000 --- a/tutorials/multiphase/cavitatingFoam/ras/throttle/system/cellSetDict.3 +++ /dev/null @@ -1,25 +0,0 @@ -/*--------------------------------*- C++ -*----------------------------------*\ -| ========= | | -| \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: 1.6 | -| \\ / A nd | Web: www.OpenFOAM.org | -| \\/ M anipulation | | -\*---------------------------------------------------------------------------*/ -FoamFile -{ - version 2.0; - format ascii; - class dictionary; - location "system"; - object cellSetDict.3; -} -// * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * // - -name c0; - -action new; - -topoSetSources ( boxToCell { box ( 0.00475 -0.000375 -1 ) ( 0.009 0.000375 1 ) ; } ); - - -// ************************************************************************* // diff --git a/tutorials/multiphase/cavitatingFoam/ras/throttle/system/topoSetDict b/tutorials/multiphase/cavitatingFoam/ras/throttle/system/topoSetDict new file mode 100644 index 0000000000..30e3ea0006 --- /dev/null +++ b/tutorials/multiphase/cavitatingFoam/ras/throttle/system/topoSetDict @@ -0,0 +1,33 @@ +/*--------------------------------*- C++ -*----------------------------------*\ +| ========= | | +| \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | +| \\ / O peration | Version: 1.6 | +| \\ / A nd | Web: www.OpenFOAM.org | +| \\/ M anipulation | | +\*---------------------------------------------------------------------------*/ +FoamFile +{ + version 2.0; + format ascii; + class dictionary; + location "system"; + object topoSetDict.3; +} +// * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * // + +actions +( + { + name c0; + type cellSet; + action new; + source boxToCell; + sourceDict + { + box ( 0.00475 -0.000375 -1 ) ( 0.009 0.000375 1 ) ; + } + } +); + + +// ************************************************************************* // diff --git a/tutorials/lagrangian/porousExplicitSourceReactingParcelFoam/filter/system/cellSetDict b/tutorials/multiphase/cavitatingFoam/ras/throttle/system/topoSetDict.1 similarity index 78% rename from tutorials/lagrangian/porousExplicitSourceReactingParcelFoam/filter/system/cellSetDict rename to tutorials/multiphase/cavitatingFoam/ras/throttle/system/topoSetDict.1 index 304f1d9445..01e4f46a66 100644 --- a/tutorials/lagrangian/porousExplicitSourceReactingParcelFoam/filter/system/cellSetDict +++ b/tutorials/multiphase/cavitatingFoam/ras/throttle/system/topoSetDict.1 @@ -11,20 +11,21 @@ FoamFile format ascii; class dictionary; location "system"; - object cellSetDict; + object topoSetDict.1; } // * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * // -name filter; - -action new; - -topoSetSources +actions ( - // Cells with cell centre within box - boxToCell { - box (1.5 -1 -1) (2 1 1); + name c0; + type cellSet; + action new; + source boxToCell; + sourceDict + { + box ( 0.004 -0.001 -1 ) ( 0.012 0.001 1 ) ; + } } ); diff --git a/tutorials/multiphase/cavitatingFoam/ras/throttle/system/topoSetDict.2 b/tutorials/multiphase/cavitatingFoam/ras/throttle/system/topoSetDict.2 new file mode 100644 index 0000000000..20bc81f6ba --- /dev/null +++ b/tutorials/multiphase/cavitatingFoam/ras/throttle/system/topoSetDict.2 @@ -0,0 +1,33 @@ +/*--------------------------------*- C++ -*----------------------------------*\ +| ========= | | +| \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | +| \\ / O peration | Version: 1.6 | +| \\ / A nd | Web: www.OpenFOAM.org | +| \\/ M anipulation | | +\*---------------------------------------------------------------------------*/ +FoamFile +{ + version 2.0; + format ascii; + class dictionary; + location "system"; + object topoSetDict.2; +} +// * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * // + +actions +( + { + name c0; + type cellSet; + action new; + source boxToCell; + sourceDict + { + box ( 0.0045 -0.00075 -1 ) ( 0.0095 0.00075 1 ) ; + } + } +); + + +// ************************************************************************* // diff --git a/tutorials/multiphase/cavitatingFoam/ras/throttle/system/topoSetDict.3 b/tutorials/multiphase/cavitatingFoam/ras/throttle/system/topoSetDict.3 new file mode 100644 index 0000000000..30e3ea0006 --- /dev/null +++ b/tutorials/multiphase/cavitatingFoam/ras/throttle/system/topoSetDict.3 @@ -0,0 +1,33 @@ +/*--------------------------------*- C++ -*----------------------------------*\ +| ========= | | +| \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | +| \\ / O peration | Version: 1.6 | +| \\ / A nd | Web: www.OpenFOAM.org | +| \\/ M anipulation | | +\*---------------------------------------------------------------------------*/ +FoamFile +{ + version 2.0; + format ascii; + class dictionary; + location "system"; + object topoSetDict.3; +} +// * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * // + +actions +( + { + name c0; + type cellSet; + action new; + source boxToCell; + sourceDict + { + box ( 0.00475 -0.000375 -1 ) ( 0.009 0.000375 1 ) ; + } + } +); + + +// ************************************************************************* // diff --git a/tutorials/multiphase/interDyMFoam/ras/floatingObject/Allclean b/tutorials/multiphase/interDyMFoam/ras/floatingObject/Allclean index 2c6db87c7f..d16400a94f 100755 --- a/tutorials/multiphase/interDyMFoam/ras/floatingObject/Allclean +++ b/tutorials/multiphase/interDyMFoam/ras/floatingObject/Allclean @@ -4,7 +4,6 @@ cd ${0%/*} || exit 1 # run from this directory # Source tutorial clean functions . $WM_PROJECT_DIR/bin/tools/CleanFunctions -rm system/cellSetDict > /dev/null 2>&1 rm -rf 0 > /dev/null 2>&1 cleanCase diff --git a/tutorials/multiphase/interDyMFoam/ras/floatingObject/Allrun b/tutorials/multiphase/interDyMFoam/ras/floatingObject/Allrun index 8016666d73..5613186ba2 100755 --- a/tutorials/multiphase/interDyMFoam/ras/floatingObject/Allrun +++ b/tutorials/multiphase/interDyMFoam/ras/floatingObject/Allrun @@ -7,19 +7,8 @@ cd ${0%/*} || exit 1 # run from this directory # Set application name application="interDyMFoam" -makeMeshByCellSet() -{ - while [ $# -ge 1 ] - do - echo "Running cellSet operation $1" - cp system/cellSetDict.$1 system/cellSetDict - cellSet > log.cellSet.$1 2>&1 - shift - done -} - runApplication blockMesh -makeMeshByCellSet 1 2 +runApplication topoSet runApplication subsetMesh -overwrite c0 -patch floatingObject cp -r 0.org 0 > /dev/null 2>&1 runApplication setFields diff --git a/tutorials/multiphase/interDyMFoam/ras/floatingObject/system/cellSetDict.2 b/tutorials/multiphase/interDyMFoam/ras/floatingObject/system/cellSetDict.2 deleted file mode 100644 index 57cc0658f7..0000000000 --- a/tutorials/multiphase/interDyMFoam/ras/floatingObject/system/cellSetDict.2 +++ /dev/null @@ -1,24 +0,0 @@ -/*--------------------------------*- C++ -*----------------------------------*\ -| ========= | | -| \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: 1.6 | -| \\ / A nd | Web: http://www.OpenFOAM.org | -| \\/ M anipulation | | -\*---------------------------------------------------------------------------*/ -FoamFile -{ - version 2.0; - format ascii; - class dictionary; - object cellSetDict; -} - -// * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * // - -name c0; - -action invert; - -topoSetSources (); - -// ************************************************************************* // diff --git a/tutorials/multiphase/interDyMFoam/ras/floatingObject/system/cellSetDict.1 b/tutorials/multiphase/interDyMFoam/ras/floatingObject/system/topoSetDict similarity index 74% rename from tutorials/multiphase/interDyMFoam/ras/floatingObject/system/cellSetDict.1 rename to tutorials/multiphase/interDyMFoam/ras/floatingObject/system/topoSetDict index 90a225e6a9..c696d169b4 100644 --- a/tutorials/multiphase/interDyMFoam/ras/floatingObject/system/cellSetDict.1 +++ b/tutorials/multiphase/interDyMFoam/ras/floatingObject/system/topoSetDict @@ -10,20 +10,28 @@ FoamFile version 2.0; format ascii; class dictionary; - object cellSetDict; + object topoSetDict; } // * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * // -name c0; - -action new; - -topoSetSources +actions ( - boxToCell { - box (0.35 0.35 0.44) (0.65 0.65 0.56); + name c0; + type cellSet; + action new; + source boxToCell; + sourceDict + { + box (0.35 0.35 0.44) (0.65 0.65 0.56); + } + } + + { + name c0; + type cellSet; + action invert; } ); diff --git a/tutorials/multiphase/interFoam/MRFInterFoam/mixerVessel2D/makeMesh b/tutorials/multiphase/interFoam/MRFInterFoam/mixerVessel2D/makeMesh index b0be10d8e5..8ef4993fde 100755 --- a/tutorials/multiphase/interFoam/MRFInterFoam/mixerVessel2D/makeMesh +++ b/tutorials/multiphase/interFoam/MRFInterFoam/mixerVessel2D/makeMesh @@ -2,10 +2,5 @@ m4 < constant/polyMesh/blockMeshDict.m4 > constant/polyMesh/blockMeshDict blockMesh -cellSet -#- MRF determines its own faceZone if not supplied -#cp system/faceSetDict_rotorFaces system/faceSetDict -#faceSet -#cp system/faceSetDict_noBoundaryFaces system/faceSetDict -#faceSet +topoSet setsToZones -noFlipMap diff --git a/tutorials/multiphase/interFoam/MRFInterFoam/mixerVessel2D/system/cellSetDict b/tutorials/multiphase/interFoam/MRFInterFoam/mixerVessel2D/system/cellSetDict deleted file mode 100644 index ae58e6ff70..0000000000 --- a/tutorials/multiphase/interFoam/MRFInterFoam/mixerVessel2D/system/cellSetDict +++ /dev/null @@ -1,25 +0,0 @@ -/*--------------------------------*- C++ -*----------------------------------*\ -| ========= | | -| \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: 1.6 | -| \\ / A nd | Web: www.OpenFOAM.org | -| \\/ M anipulation | | -\*---------------------------------------------------------------------------*/ -FoamFile -{ - version 2.0; - format ascii; - class dictionary; - location "system"; - object cellSetDict; -} -// * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * // - -name rotor; - -action new; - -topoSetSources ( zoneToCell { name rotor ; } ); - - -// ************************************************************************* // diff --git a/tutorials/multiphase/interFoam/MRFInterFoam/mixerVessel2D/system/faceSetDict b/tutorials/multiphase/interFoam/MRFInterFoam/mixerVessel2D/system/faceSetDict deleted file mode 100644 index d4c9e00065..0000000000 --- a/tutorials/multiphase/interFoam/MRFInterFoam/mixerVessel2D/system/faceSetDict +++ /dev/null @@ -1,25 +0,0 @@ -/*--------------------------------*- C++ -*----------------------------------*\ -| ========= | | -| \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: 1.6 | -| \\ / A nd | Web: www.OpenFOAM.org | -| \\/ M anipulation | | -\*---------------------------------------------------------------------------*/ -FoamFile -{ - version 2.0; - format ascii; - class dictionary; - location "system"; - object faceSetDict; -} -// * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * // - -name rotor; - -action delete; - -topoSetSources ( boundaryToFace { } ); - - -// ************************************************************************* // diff --git a/tutorials/multiphase/interFoam/MRFInterFoam/mixerVessel2D/system/faceSetDict_noBoundaryFaces b/tutorials/multiphase/interFoam/MRFInterFoam/mixerVessel2D/system/faceSetDict_noBoundaryFaces deleted file mode 100644 index 38fa0208ed..0000000000 --- a/tutorials/multiphase/interFoam/MRFInterFoam/mixerVessel2D/system/faceSetDict_noBoundaryFaces +++ /dev/null @@ -1,25 +0,0 @@ -/*--------------------------------*- C++ -*----------------------------------*\ -| ========= | | -| \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: 1.6 | -| \\ / A nd | Web: www.OpenFOAM.org | -| \\/ M anipulation | | -\*---------------------------------------------------------------------------*/ -FoamFile -{ - version 2.0; - format ascii; - class dictionary; - location "system"; - object faceSetDict_noBoundaryFaces; -} -// * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * // - -name rotor; - -action delete; - -topoSetSources ( boundaryToFace { } ); - - -// ************************************************************************* // diff --git a/tutorials/multiphase/interFoam/MRFInterFoam/mixerVessel2D/system/faceSetDict_rotorFaces b/tutorials/multiphase/interFoam/MRFInterFoam/mixerVessel2D/system/faceSetDict_rotorFaces deleted file mode 100644 index 3ccb7ad761..0000000000 --- a/tutorials/multiphase/interFoam/MRFInterFoam/mixerVessel2D/system/faceSetDict_rotorFaces +++ /dev/null @@ -1,25 +0,0 @@ -/*--------------------------------*- C++ -*----------------------------------*\ -| ========= | | -| \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: 1.6 | -| \\ / A nd | Web: www.OpenFOAM.org | -| \\/ M anipulation | | -\*---------------------------------------------------------------------------*/ -FoamFile -{ - version 2.0; - format ascii; - class dictionary; - location "system"; - object faceSetDict_rotorFaces; -} -// * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * // - -name rotor; - -action new; - -topoSetSources ( cellToFace { set rotor ; option all ; } ); - - -// ************************************************************************* // diff --git a/tutorials/multiphase/interFoam/MRFInterFoam/mixerVessel2D/system/topoSetDict b/tutorials/multiphase/interFoam/MRFInterFoam/mixerVessel2D/system/topoSetDict new file mode 100644 index 0000000000..b89e6319bf --- /dev/null +++ b/tutorials/multiphase/interFoam/MRFInterFoam/mixerVessel2D/system/topoSetDict @@ -0,0 +1,34 @@ +/*--------------------------------*- C++ -*----------------------------------*\ +| ========= | | +| \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | +| \\ / O peration | Version: 1.6 | +| \\ / A nd | Web: www.OpenFOAM.org | +| \\/ M anipulation | | +\*---------------------------------------------------------------------------*/ +FoamFile +{ + version 2.0; + format ascii; + class dictionary; + location "system"; + object topoSetDict; +} +// * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * // + + +actions +( + { + name rotor; + type cellSet; + action new; + source zoneToCell; + sourceDict + { + name rotor; + } + } +); + + +// ************************************************************************* // diff --git a/tutorials/multiphase/interFoam/les/nozzleFlow2D/Allrun b/tutorials/multiphase/interFoam/les/nozzleFlow2D/Allrun index c233dfa356..cb29d4ff80 100755 --- a/tutorials/multiphase/interFoam/les/nozzleFlow2D/Allrun +++ b/tutorials/multiphase/interFoam/les/nozzleFlow2D/Allrun @@ -17,19 +17,19 @@ runRefineMesh() runApplication blockMesh i=1 -if [ -f log.cellSet ] +if [ -f log.topoSet ] then i=3 fi while [ "$i" -lt 3 ] do - if [ -f log.cellSet ] + if [ -f log.topoSet ] then - mv log.cellSet log.cellSet.1 + mv log.topoSet log.topoSet.1 fi - cp system/cellSetDict.${i} system/cellSetDict - runApplication cellSet + cp system/topoSetDict.${i} system/topoSetDict + runApplication topoSet runRefineMesh cp -r 1e-08/polyMesh/* constant/polyMesh rm -rf 1e-08 diff --git a/tutorials/multiphase/interFoam/les/nozzleFlow2D/system/cellSetDict b/tutorials/multiphase/interFoam/les/nozzleFlow2D/system/cellSetDict deleted file mode 100644 index f7d399ef06..0000000000 --- a/tutorials/multiphase/interFoam/les/nozzleFlow2D/system/cellSetDict +++ /dev/null @@ -1,25 +0,0 @@ -/*--------------------------------*- C++ -*----------------------------------*\ -| ========= | | -| \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: 1.6 | -| \\ / A nd | Web: www.OpenFOAM.org | -| \\/ M anipulation | | -\*---------------------------------------------------------------------------*/ -FoamFile -{ - version 2.0; - format ascii; - class dictionary; - location "system"; - object cellSetDict.2; -} -// * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * // - -name c0; - -action new; - -topoSetSources ( boxToCell { box ( 0 0 -2e-05 ) ( 0.0036 0.0003 2e-05 ) ; } ); - - -// ************************************************************************* // diff --git a/tutorials/multiphase/interFoam/les/nozzleFlow2D/system/cellSetDict.1 b/tutorials/multiphase/interFoam/les/nozzleFlow2D/system/cellSetDict.1 deleted file mode 100644 index adf351bd6f..0000000000 --- a/tutorials/multiphase/interFoam/les/nozzleFlow2D/system/cellSetDict.1 +++ /dev/null @@ -1,25 +0,0 @@ -/*--------------------------------*- C++ -*----------------------------------*\ -| ========= | | -| \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: 1.6 | -| \\ / A nd | Web: www.OpenFOAM.org | -| \\/ M anipulation | | -\*---------------------------------------------------------------------------*/ -FoamFile -{ - version 2.0; - format ascii; - class dictionary; - location "system"; - object cellSetDict.1; -} -// * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * // - -name c0; - -action new; - -topoSetSources ( boxToCell { box ( 0 0 -2e-05 ) ( 0.0036 0.0008 4e-05 ) ; } ); - - -// ************************************************************************* // diff --git a/tutorials/multiphase/interFoam/les/nozzleFlow2D/system/cellSetDict.2 b/tutorials/multiphase/interFoam/les/nozzleFlow2D/system/cellSetDict.2 deleted file mode 100644 index f7d399ef06..0000000000 --- a/tutorials/multiphase/interFoam/les/nozzleFlow2D/system/cellSetDict.2 +++ /dev/null @@ -1,25 +0,0 @@ -/*--------------------------------*- C++ -*----------------------------------*\ -| ========= | | -| \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: 1.6 | -| \\ / A nd | Web: www.OpenFOAM.org | -| \\/ M anipulation | | -\*---------------------------------------------------------------------------*/ -FoamFile -{ - version 2.0; - format ascii; - class dictionary; - location "system"; - object cellSetDict.2; -} -// * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * // - -name c0; - -action new; - -topoSetSources ( boxToCell { box ( 0 0 -2e-05 ) ( 0.0036 0.0003 2e-05 ) ; } ); - - -// ************************************************************************* // diff --git a/tutorials/multiphase/cavitatingFoam/les/throttle/system/cellSetDict.1 b/tutorials/multiphase/interFoam/les/nozzleFlow2D/system/topoSetDict similarity index 78% rename from tutorials/multiphase/cavitatingFoam/les/throttle/system/cellSetDict.1 rename to tutorials/multiphase/interFoam/les/nozzleFlow2D/system/topoSetDict index 8b6a6950d8..cf1a5033eb 100644 --- a/tutorials/multiphase/cavitatingFoam/les/throttle/system/cellSetDict.1 +++ b/tutorials/multiphase/interFoam/les/nozzleFlow2D/system/topoSetDict @@ -11,19 +11,21 @@ FoamFile format ascii; class dictionary; location "system"; - object cellSetDict.1; + object topoSetDict.2; } // * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * // -name c0; - -action new; - -topoSetSources +actions ( - boxToCell { - box (0.004 -0.001 -1) (0.012 0.001 1); + name c0; + type cellSet; + action new; + source boxToCell; + sourceDict + { + box ( 0 0 -2e-05 ) ( 0.0036 0.0003 2e-05 ); + } } ); diff --git a/tutorials/multiphase/cavitatingFoam/les/throttle/system/cellSetDict.3 b/tutorials/multiphase/interFoam/les/nozzleFlow2D/system/topoSetDict.1 similarity index 78% rename from tutorials/multiphase/cavitatingFoam/les/throttle/system/cellSetDict.3 rename to tutorials/multiphase/interFoam/les/nozzleFlow2D/system/topoSetDict.1 index 967c4deacc..5c87356b4a 100644 --- a/tutorials/multiphase/cavitatingFoam/les/throttle/system/cellSetDict.3 +++ b/tutorials/multiphase/interFoam/les/nozzleFlow2D/system/topoSetDict.1 @@ -11,21 +11,22 @@ FoamFile format ascii; class dictionary; location "system"; - object cellSetDict.3; + object topoSetDict.1; } // * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * // -name c0; - -action new; - -topoSetSources +actions ( - boxToCell { - box (0.00475 -0.000375 -1) (0.009 0.000375 1); + name c0; + type cellSet; + action new; + source boxToCell; + sourceDict + { + box ( 0 0 -2e-05 ) ( 0.0036 0.0008 4e-05 ) ; + } } ); - // ************************************************************************* // diff --git a/tutorials/multiphase/cavitatingFoam/les/throttle/system/cellSetDict.2 b/tutorials/multiphase/interFoam/les/nozzleFlow2D/system/topoSetDict.2 similarity index 78% rename from tutorials/multiphase/cavitatingFoam/les/throttle/system/cellSetDict.2 rename to tutorials/multiphase/interFoam/les/nozzleFlow2D/system/topoSetDict.2 index 9c99971206..cf1a5033eb 100644 --- a/tutorials/multiphase/cavitatingFoam/les/throttle/system/cellSetDict.2 +++ b/tutorials/multiphase/interFoam/les/nozzleFlow2D/system/topoSetDict.2 @@ -11,19 +11,21 @@ FoamFile format ascii; class dictionary; location "system"; - object cellSetDict.2; + object topoSetDict.2; } // * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * // -name c0; - -action new; - -topoSetSources +actions ( - boxToCell { - box (0.0045 -0.00075 -1) (0.0095 0.00075 1); + name c0; + type cellSet; + action new; + source boxToCell; + sourceDict + { + box ( 0 0 -2e-05 ) ( 0.0036 0.0003 2e-05 ); + } } ); From c367e0764219a75f49ac4b165f53449331a9acb1 Mon Sep 17 00:00:00 2001 From: mattijs Date: Mon, 10 May 2010 17:17:49 +0100 Subject: [PATCH 33/57] ENH: Converted all cellSet/faceSet/pointSet to topoSet. --- .../mesh/manipulation/cellSet/Make/files | 4 - .../mesh/manipulation/cellSet/Make/options | 5 - .../mesh/manipulation/cellSet/cellSet.C | 196 ------------------ .../mesh/manipulation/cellSet/cellSetDict | 149 ------------- .../mesh/manipulation/faceSet/Make/files | 4 - .../mesh/manipulation/faceSet/Make/options | 5 - .../mesh/manipulation/faceSet/faceSet.C | 196 ------------------ .../mesh/manipulation/faceSet/faceSetDict | 82 -------- .../mesh/manipulation/pointSet/Make/files | 4 - .../mesh/manipulation/pointSet/Make/options | 5 - .../mesh/manipulation/pointSet/pointSet.C | 196 ------------------ .../mesh/manipulation/pointSet/pointSetDict | 84 -------- .../mesh/manipulation/topoSet/topoSet.C | 1 + .../mixerVessel2D/system/faceSetDict | 25 --- .../system/faceSetDict_noBoundaryFaces | 25 --- .../system/faceSetDict_rotorFaces | 25 --- .../mixerVessel2D/system/faceSetDict | 25 --- .../system/faceSetDict_noBoundaryFaces | 25 --- .../system/faceSetDict_rotorFaces | 25 --- .../coalChemistryFoam/simplifiedSiwek/Allrun | 2 +- .../system/{cellSetDict => topoSetDict} | 21 +- .../multiphase/cavitatingFoam/les/Allclean | 4 +- .../multiphase/cavitatingFoam/les/Allrun | 4 +- .../les/throttle/system/topoSetDict.1 | 33 +++ .../les/throttle/system/topoSetDict.2 | 33 +++ .../les/throttle/system/topoSetDict.3 | 33 +++ .../les/throttle3D/system/cellSetDict.1 | 31 --- .../les/throttle3D/system/cellSetDict.2 | 31 --- .../les/throttle3D/system/cellSetDict.3 | 31 --- .../les/throttle3D/system/topoSetDict.1 | 33 +++ .../les/throttle3D/system/topoSetDict.2 | 33 +++ .../les/throttle3D/system/topoSetDict.3 | 33 +++ .../cavitatingFoam/ras/throttle/Allclean | 2 +- .../cavitatingFoam/ras/throttle/Allrun | 4 +- .../ras/throttle/system/cellSetDict.1 | 25 --- .../ras/throttle/system/cellSetDict.2 | 25 --- .../ras/throttle/system/cellSetDict.3 | 25 --- .../ras/throttle/system/topoSetDict | 33 +++ .../ras/throttle/system/topoSetDict.1} | 19 +- .../ras/throttle/system/topoSetDict.2 | 33 +++ .../ras/throttle/system/topoSetDict.3 | 33 +++ .../interDyMFoam/ras/floatingObject/Allclean | 1 - .../interDyMFoam/ras/floatingObject/Allrun | 13 +- .../ras/floatingObject/system/cellSetDict.2 | 24 --- .../system/{cellSetDict.1 => topoSetDict} | 24 ++- .../MRFInterFoam/mixerVessel2D/makeMesh | 7 +- .../mixerVessel2D/system/cellSetDict | 25 --- .../mixerVessel2D/system/faceSetDict | 25 --- .../system/faceSetDict_noBoundaryFaces | 25 --- .../system/faceSetDict_rotorFaces | 25 --- .../mixerVessel2D/system/topoSetDict | 34 +++ .../interFoam/les/nozzleFlow2D/Allrun | 10 +- .../les/nozzleFlow2D/system/cellSetDict | 25 --- .../les/nozzleFlow2D/system/cellSetDict.1 | 25 --- .../les/nozzleFlow2D/system/cellSetDict.2 | 25 --- .../les/nozzleFlow2D/system/topoSetDict} | 18 +- .../les/nozzleFlow2D/system/topoSetDict.1} | 19 +- .../les/nozzleFlow2D/system/topoSetDict.2} | 18 +- 58 files changed, 415 insertions(+), 1530 deletions(-) delete mode 100644 applications/utilities/mesh/manipulation/cellSet/Make/files delete mode 100644 applications/utilities/mesh/manipulation/cellSet/Make/options delete mode 100644 applications/utilities/mesh/manipulation/cellSet/cellSet.C delete mode 100644 applications/utilities/mesh/manipulation/cellSet/cellSetDict delete mode 100644 applications/utilities/mesh/manipulation/faceSet/Make/files delete mode 100644 applications/utilities/mesh/manipulation/faceSet/Make/options delete mode 100644 applications/utilities/mesh/manipulation/faceSet/faceSet.C delete mode 100644 applications/utilities/mesh/manipulation/faceSet/faceSetDict delete mode 100644 applications/utilities/mesh/manipulation/pointSet/Make/files delete mode 100644 applications/utilities/mesh/manipulation/pointSet/Make/options delete mode 100644 applications/utilities/mesh/manipulation/pointSet/pointSet.C delete mode 100644 applications/utilities/mesh/manipulation/pointSet/pointSetDict delete mode 100644 tutorials/compressible/rhoPorousMRFPimpleFoam/mixerVessel2D/system/faceSetDict delete mode 100644 tutorials/compressible/rhoPorousMRFPimpleFoam/mixerVessel2D/system/faceSetDict_noBoundaryFaces delete mode 100644 tutorials/compressible/rhoPorousMRFPimpleFoam/mixerVessel2D/system/faceSetDict_rotorFaces delete mode 100644 tutorials/incompressible/MRFSimpleFoam/mixerVessel2D/system/faceSetDict delete mode 100644 tutorials/incompressible/MRFSimpleFoam/mixerVessel2D/system/faceSetDict_noBoundaryFaces delete mode 100644 tutorials/incompressible/MRFSimpleFoam/mixerVessel2D/system/faceSetDict_rotorFaces rename tutorials/lagrangian/coalChemistryFoam/simplifiedSiwek/system/{cellSetDict => topoSetDict} (76%) create mode 100644 tutorials/multiphase/cavitatingFoam/les/throttle/system/topoSetDict.1 create mode 100644 tutorials/multiphase/cavitatingFoam/les/throttle/system/topoSetDict.2 create mode 100644 tutorials/multiphase/cavitatingFoam/les/throttle/system/topoSetDict.3 delete mode 100644 tutorials/multiphase/cavitatingFoam/les/throttle3D/system/cellSetDict.1 delete mode 100644 tutorials/multiphase/cavitatingFoam/les/throttle3D/system/cellSetDict.2 delete mode 100644 tutorials/multiphase/cavitatingFoam/les/throttle3D/system/cellSetDict.3 create mode 100644 tutorials/multiphase/cavitatingFoam/les/throttle3D/system/topoSetDict.1 create mode 100644 tutorials/multiphase/cavitatingFoam/les/throttle3D/system/topoSetDict.2 create mode 100644 tutorials/multiphase/cavitatingFoam/les/throttle3D/system/topoSetDict.3 delete mode 100644 tutorials/multiphase/cavitatingFoam/ras/throttle/system/cellSetDict.1 delete mode 100644 tutorials/multiphase/cavitatingFoam/ras/throttle/system/cellSetDict.2 delete mode 100644 tutorials/multiphase/cavitatingFoam/ras/throttle/system/cellSetDict.3 create mode 100644 tutorials/multiphase/cavitatingFoam/ras/throttle/system/topoSetDict rename tutorials/{lagrangian/porousExplicitSourceReactingParcelFoam/filter/system/cellSetDict => multiphase/cavitatingFoam/ras/throttle/system/topoSetDict.1} (78%) create mode 100644 tutorials/multiphase/cavitatingFoam/ras/throttle/system/topoSetDict.2 create mode 100644 tutorials/multiphase/cavitatingFoam/ras/throttle/system/topoSetDict.3 delete mode 100644 tutorials/multiphase/interDyMFoam/ras/floatingObject/system/cellSetDict.2 rename tutorials/multiphase/interDyMFoam/ras/floatingObject/system/{cellSetDict.1 => topoSetDict} (74%) delete mode 100644 tutorials/multiphase/interFoam/MRFInterFoam/mixerVessel2D/system/cellSetDict delete mode 100644 tutorials/multiphase/interFoam/MRFInterFoam/mixerVessel2D/system/faceSetDict delete mode 100644 tutorials/multiphase/interFoam/MRFInterFoam/mixerVessel2D/system/faceSetDict_noBoundaryFaces delete mode 100644 tutorials/multiphase/interFoam/MRFInterFoam/mixerVessel2D/system/faceSetDict_rotorFaces create mode 100644 tutorials/multiphase/interFoam/MRFInterFoam/mixerVessel2D/system/topoSetDict delete mode 100644 tutorials/multiphase/interFoam/les/nozzleFlow2D/system/cellSetDict delete mode 100644 tutorials/multiphase/interFoam/les/nozzleFlow2D/system/cellSetDict.1 delete mode 100644 tutorials/multiphase/interFoam/les/nozzleFlow2D/system/cellSetDict.2 rename tutorials/multiphase/{cavitatingFoam/les/throttle/system/cellSetDict.1 => interFoam/les/nozzleFlow2D/system/topoSetDict} (78%) rename tutorials/multiphase/{cavitatingFoam/les/throttle/system/cellSetDict.3 => interFoam/les/nozzleFlow2D/system/topoSetDict.1} (78%) rename tutorials/multiphase/{cavitatingFoam/les/throttle/system/cellSetDict.2 => interFoam/les/nozzleFlow2D/system/topoSetDict.2} (78%) diff --git a/applications/utilities/mesh/manipulation/cellSet/Make/files b/applications/utilities/mesh/manipulation/cellSet/Make/files deleted file mode 100644 index f814349548..0000000000 --- a/applications/utilities/mesh/manipulation/cellSet/Make/files +++ /dev/null @@ -1,4 +0,0 @@ -cellSet.C - -EXE = $(FOAM_APPBIN)/cellSet - diff --git a/applications/utilities/mesh/manipulation/cellSet/Make/options b/applications/utilities/mesh/manipulation/cellSet/Make/options deleted file mode 100644 index 54c035b8f5..0000000000 --- a/applications/utilities/mesh/manipulation/cellSet/Make/options +++ /dev/null @@ -1,5 +0,0 @@ -EXE_INC = \ - -I$(LIB_SRC)/meshTools/lnInclude - -EXE_LIBS = \ - -lmeshTools diff --git a/applications/utilities/mesh/manipulation/cellSet/cellSet.C b/applications/utilities/mesh/manipulation/cellSet/cellSet.C deleted file mode 100644 index 3eafef872b..0000000000 --- a/applications/utilities/mesh/manipulation/cellSet/cellSet.C +++ /dev/null @@ -1,196 +0,0 @@ -/*---------------------------------------------------------------------------*\ - ========= | - \\ / F ield | OpenFOAM: The Open Source CFD Toolbox - \\ / O peration | - \\ / A nd | Copyright (C) 1991-2009 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 3 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, see . - -Description - Selects a cell set through a dictionary. - -\*---------------------------------------------------------------------------*/ - -#include "argList.H" -#include "Time.H" -#include "polyMesh.H" -#include "topoSetSource.H" -#include "cellSet.H" - -using namespace Foam; - -// * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * // - -// Main program: - -int main(int argc, char *argv[]) -{ -# include "setRootCase.H" -# include "createTime.H" -# include "createPolyMesh.H" - - Info<< "Reading cellSetDict\n" << endl; - - IOdictionary cellSetDict - ( - IOobject - ( - "cellSetDict", - runTime.system(), - mesh, - IOobject::MUST_READ, - IOobject::NO_WRITE - ) - ); - - - const word setName(cellSetDict.lookup("name")); - const word actionName(cellSetDict.lookup("action")); - - topoSetSource::setAction action = topoSetSource::toAction(actionName); - - - // Create topoSetSources - PtrList topoSetSources - ( - cellSetDict.lookup("topoSetSources"), - topoSetSource::iNew(mesh) - ); - - - // Load set to work - autoPtr currentSetPtr(NULL); - IOobject::readOption r; - - if ((action == topoSetSource::NEW) || (action == topoSetSource::CLEAR)) - { - r = IOobject::NO_READ; - - currentSetPtr.reset - ( - new cellSet - ( - mesh, - setName, - mesh.nCells()/10+1 // Reasonable size estimate. - ) - ); - } - else - { - r = IOobject::MUST_READ; - - currentSetPtr.reset - ( - new cellSet - ( - mesh, - setName, - r - ) - ); - } - - topoSet& currentSet = currentSetPtr(); - - Info<< "Set:" << currentSet.name() - << " Size:" << currentSet.size() - << " Action:" << actionName - << endl; - - if ((r == IOobject::MUST_READ) && (action != topoSetSource::LIST)) - { - // currentSet has been read so can make copy. - //backup(mesh, setName, currentSet, setName + "_old"); - } - - if (action == topoSetSource::CLEAR) - { - // Already handled above by not reading - } - else if (action == topoSetSource::INVERT) - { - currentSet.invert(currentSet.maxSize(mesh)); - } - else if (action == topoSetSource::LIST) - { - currentSet.writeDebug(Info, mesh, 100); - Info<< endl; - } - else if (action == topoSetSource::SUBSET) - { - // Apply topoSetSources to it to handle new/add/delete - forAll(topoSetSources, topoSetSourceI) - { - // Backup current set. - autoPtr oldSet - ( - topoSet::New - ( - currentSet.type(), - mesh, - currentSet.name() + "_old2", - currentSet - ) - ); - - currentSet.clear(); - - topoSetSources[topoSetSourceI].applyToSet - ( - topoSetSource::NEW, - currentSet - ); - - // Combine new value of currentSet with old one. - currentSet.subset(oldSet); - } - } - else - { - // Apply topoSetSources to it to handle new/add/delete - forAll(topoSetSources, topoSetSourceI) - { - topoSetSources[topoSetSourceI].applyToSet(action, currentSet); - } - } - - - if (action != topoSetSource::LIST) - { - // Set has changed. - - // Sync across coupled patches. - currentSet.sync(mesh); - - Info<< "Writing " << currentSet.name() - << " (size " << currentSet.size() << ") to " - << currentSet.instance()/currentSet.local() - /currentSet.name() - << endl << endl; - - currentSet.write(); - } - - Info<< "\nEnd\n" << endl; - - return 0; -} - - -// ************************************************************************* // diff --git a/applications/utilities/mesh/manipulation/cellSet/cellSetDict b/applications/utilities/mesh/manipulation/cellSet/cellSetDict deleted file mode 100644 index 1108d6c3d9..0000000000 --- a/applications/utilities/mesh/manipulation/cellSet/cellSetDict +++ /dev/null @@ -1,149 +0,0 @@ -/*--------------------------------*- C++ -*----------------------------------*\ -| ========= | | -| \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: 1.6 | -| \\ / A nd | Web: http://www.OpenFOAM.org | -| \\/ M anipulation | | -\*---------------------------------------------------------------------------*/ -FoamFile -{ - version 2.0; - format ascii; - class dictionary; - object cellSetDict; -} - -// * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * // - -// Name of set to operate on -name c0; - -// One of clear/new/invert/add/delete|subset/list -action new; - -// Actions to apply to cellSet. These are all the topoSetSource's ending -// in ..ToCell (see the meshTools library). - -topoSetSources -( - // Select by explicitly providing cell labels - labelToCell - { - value (12 13 56); // labels of cells - } - - // Copy elements from cellSet - cellToCell - { - set c1; - } - - // Cells in cell zone - zoneToCell - { - name ".*Zone"; // Name of cellZone, regular expressions allowed - } - - // Cells on master or slave side of faceZone - faceZoneToCell - { - name ".*Zone"; // Name of faceZone, regular expressions allowed - option master; // master/slave - } - - // Select based on faceSet - faceToCell - { - set f0; // Name of faceSet - - //option neighbour; // cell with neighbour in faceSet - //option owner; // ,, owner - option any; // cell with any face in faceSet - //option all; // cell with all faces in faceSet - } - - // Select based on pointSet - pointToCell - { - set p0; - option any; // cell with any point in pointSet - //option all; // cell with all points in pointSet - } - - // Select based on cellShape - shapeToCell - { - type hex; // hex/wedge/prism/pyr/tet/tetWedge/splitHex - } - - // Cells with cell centre within box - boxToCell - { - box (0 0 0) (1 1 1); - } - - // Cells with cell centre within box - // Is skewed, rotated box. Given as origin and three spanning vectors. - rotatedBoxToCell - { - origin (0.2 0.2 -10); - i (0.2 0.2 0); - j (-0.2 0.2 0); - k (10 10 10); - } - - // Cells with centre within cylinder - cylinderToCell - { - p1 (0.2 0.2 -10); // start point on cylinder axis - p2 (0.2 0.2 0); // end point on cylinder axis - radius 5.0; - } - - // Cells with centre within sphere - sphereToCell - { - centre (0.2 0.2 -10); - radius 5.0; - } - - // Cells with cellCentre nearest to coordinates - nearestToCell - { - points ((0 0 0) (1 1 1)(2 2 2)); - } - - // Select based on surface - surfaceToCell - { - file "www.avl.com-geometry.stl"; - outsidePoints ((-99 -99 -59)); // definition of outside - includeCut false; // cells cut by surface - includeInside false; // cells not on outside of surf - includeOutside false; // cells on outside of surf - nearDistance -1; // cells with centre near surf - // (set to -1 if not used) - curvature 0.9; // cells within nearDistance - // and near surf curvature - // (set to -100 if not used) - } - - // values of field within certain range - fieldToCell - { - fieldName U; // Note: uses mag(U) since volVectorField - min 0.1; - max 0.5; - } - - // Mesh region (non-face connected part of (subset of)mesh) - regionToCell - { - set c0; // name of cellSet giving mesh subset - insidePoint (1 2 3); // point inside region to select - } - -); - - -// ************************************************************************* // diff --git a/applications/utilities/mesh/manipulation/faceSet/Make/files b/applications/utilities/mesh/manipulation/faceSet/Make/files deleted file mode 100644 index 13398e1071..0000000000 --- a/applications/utilities/mesh/manipulation/faceSet/Make/files +++ /dev/null @@ -1,4 +0,0 @@ -faceSet.C - -EXE = $(FOAM_APPBIN)/faceSet - diff --git a/applications/utilities/mesh/manipulation/faceSet/Make/options b/applications/utilities/mesh/manipulation/faceSet/Make/options deleted file mode 100644 index 54c035b8f5..0000000000 --- a/applications/utilities/mesh/manipulation/faceSet/Make/options +++ /dev/null @@ -1,5 +0,0 @@ -EXE_INC = \ - -I$(LIB_SRC)/meshTools/lnInclude - -EXE_LIBS = \ - -lmeshTools diff --git a/applications/utilities/mesh/manipulation/faceSet/faceSet.C b/applications/utilities/mesh/manipulation/faceSet/faceSet.C deleted file mode 100644 index 7c97b95ef5..0000000000 --- a/applications/utilities/mesh/manipulation/faceSet/faceSet.C +++ /dev/null @@ -1,196 +0,0 @@ -/*---------------------------------------------------------------------------*\ - ========= | - \\ / F ield | OpenFOAM: The Open Source CFD Toolbox - \\ / O peration | - \\ / A nd | Copyright (C) 1991-2009 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 3 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, see . - -Description - Selects a face set through a dictionary. - -\*---------------------------------------------------------------------------*/ - -#include "argList.H" -#include "Time.H" -#include "polyMesh.H" -#include "topoSetSource.H" -#include "faceSet.H" - -using namespace Foam; - -// * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * // - -// Main program: - -int main(int argc, char *argv[]) -{ -# include "setRootCase.H" -# include "createTime.H" -# include "createPolyMesh.H" - - Info<< "Reading faceSetDict\n" << endl; - - IOdictionary faceSetDict - ( - IOobject - ( - "faceSetDict", - runTime.system(), - mesh, - IOobject::MUST_READ, - IOobject::NO_WRITE - ) - ); - - - const word setName(faceSetDict.lookup("name")); - const word actionName(faceSetDict.lookup("action")); - - topoSetSource::setAction action = topoSetSource::toAction(actionName); - - - // Create topoSetSources - PtrList topoSetSources - ( - faceSetDict.lookup("topoSetSources"), - topoSetSource::iNew(mesh) - ); - - - // Load set to work - autoPtr currentSetPtr(NULL); - IOobject::readOption r; - - if ((action == topoSetSource::NEW) || (action == topoSetSource::CLEAR)) - { - r = IOobject::NO_READ; - - currentSetPtr.reset - ( - new faceSet - ( - mesh, - setName, - mesh.nFaces()/10+1 // Reasonable size estimate. - ) - ); - } - else - { - r = IOobject::MUST_READ; - - currentSetPtr.reset - ( - new faceSet - ( - mesh, - setName, - r - ) - ); - } - - topoSet& currentSet = currentSetPtr(); - - Info<< "Set:" << currentSet.name() - << " Size:" << currentSet.size() - << " Action:" << actionName - << endl; - - if ((r == IOobject::MUST_READ) && (action != topoSetSource::LIST)) - { - // currentSet has been read so can make copy. - //backup(mesh, setName, currentSet, setName + "_old"); - } - - if (action == topoSetSource::CLEAR) - { - // Already handled above by not reading - } - else if (action == topoSetSource::INVERT) - { - currentSet.invert(currentSet.maxSize(mesh)); - } - else if (action == topoSetSource::LIST) - { - currentSet.writeDebug(Info, mesh, 100); - Info<< endl; - } - else if (action == topoSetSource::SUBSET) - { - // Apply topoSetSources to it to handle new/add/delete - forAll(topoSetSources, topoSetSourceI) - { - // Backup current set. - autoPtr oldSet - ( - topoSet::New - ( - currentSet.type(), - mesh, - currentSet.name() + "_old2", - currentSet - ) - ); - - currentSet.clear(); - - topoSetSources[topoSetSourceI].applyToSet - ( - topoSetSource::NEW, - currentSet - ); - - // Combine new value of currentSet with old one. - currentSet.subset(oldSet); - } - } - else - { - // Apply topoSetSources to it to handle new/add/delete - forAll(topoSetSources, topoSetSourceI) - { - topoSetSources[topoSetSourceI].applyToSet(action, currentSet); - } - } - - - if (action != topoSetSource::LIST) - { - // Set has changed. - - // Sync across coupled patches. - currentSet.sync(mesh); - - Info<< "Writing " << currentSet.name() - << " (size " << currentSet.size() << ") to " - << currentSet.instance()/currentSet.local() - /currentSet.name() - << endl << endl; - - currentSet.write(); - } - - Info<< "\nEnd\n" << endl; - - return 0; -} - - -// ************************************************************************* // diff --git a/applications/utilities/mesh/manipulation/faceSet/faceSetDict b/applications/utilities/mesh/manipulation/faceSet/faceSetDict deleted file mode 100644 index fd0ea0c09d..0000000000 --- a/applications/utilities/mesh/manipulation/faceSet/faceSetDict +++ /dev/null @@ -1,82 +0,0 @@ -/*--------------------------------*- C++ -*----------------------------------*\ -| ========= | | -| \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: 1.6 | -| \\ / A nd | Web: http://www.OpenFOAM.org | -| \\/ M anipulation | | -\*---------------------------------------------------------------------------*/ -FoamFile -{ - version 2.0; - format ascii; - class dictionary; - object faceSetDict; -} - -// * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * // - -// Name of set to operate on -name f0; - -// One of clear/new/invert/add/delete|subset/list -action new; - -// Actions to apply to pointSet. These are all the topoSetSource's ending -// in ..ToFace (see the meshTools library). -topoSetSources -( - // Copy elements from faceSet - faceToFace - { - set f1; - } - - // Select based on cellSet - cellToFace - { - set c0; - option all; // All faces of cells - //option both; // Only faces whose owner&neighbour are in cellSet - } - - // Select based on pointSet - pointToFace - { - set p0; - option any; // Faces using any point in pointSet - //option all // Faces with all points in pointSet - } - - // Select by explicitly providing face labels - labelToFace - { - value (12 13 56); // labels of faces - } - - // All faces of patch - patchToFace - { - name ".*Wall"; // Name of patch, regular expressions allowed - } - - // All faces of faceZone - zoneToFace - { - name ".*Zone1"; // Name of faceZone, regular expressions allowed - } - - // Faces with face centre within box - boxToFace - { - box (0 0 0) (1 1 1); - } - - // Faces with normal to within certain angle aligned with vector. - normalToFace - { - normal (0 0 1); // Vector - cos 0.01; // Tolerance (max cos of angle) - } -); - -// ************************************************************************* // diff --git a/applications/utilities/mesh/manipulation/pointSet/Make/files b/applications/utilities/mesh/manipulation/pointSet/Make/files deleted file mode 100644 index 321ed23bf4..0000000000 --- a/applications/utilities/mesh/manipulation/pointSet/Make/files +++ /dev/null @@ -1,4 +0,0 @@ -pointSet.C - -EXE = $(FOAM_APPBIN)/pointSet - diff --git a/applications/utilities/mesh/manipulation/pointSet/Make/options b/applications/utilities/mesh/manipulation/pointSet/Make/options deleted file mode 100644 index 54c035b8f5..0000000000 --- a/applications/utilities/mesh/manipulation/pointSet/Make/options +++ /dev/null @@ -1,5 +0,0 @@ -EXE_INC = \ - -I$(LIB_SRC)/meshTools/lnInclude - -EXE_LIBS = \ - -lmeshTools diff --git a/applications/utilities/mesh/manipulation/pointSet/pointSet.C b/applications/utilities/mesh/manipulation/pointSet/pointSet.C deleted file mode 100644 index 8219ec41b6..0000000000 --- a/applications/utilities/mesh/manipulation/pointSet/pointSet.C +++ /dev/null @@ -1,196 +0,0 @@ -/*---------------------------------------------------------------------------*\ - ========= | - \\ / F ield | OpenFOAM: The Open Source CFD Toolbox - \\ / O peration | - \\ / A nd | Copyright (C) 1991-2009 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 3 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, see . - -Description - Selects a point set through a dictionary. - -\*---------------------------------------------------------------------------*/ - -#include "argList.H" -#include "Time.H" -#include "polyMesh.H" -#include "topoSetSource.H" -#include "pointSet.H" - -using namespace Foam; - -// * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * // - -// Main program: - -int main(int argc, char *argv[]) -{ -# include "setRootCase.H" -# include "createTime.H" -# include "createPolyMesh.H" - - Info<< "Reading pointSetDict\n" << endl; - - IOdictionary pointSetDict - ( - IOobject - ( - "pointSetDict", - runTime.system(), - mesh, - IOobject::MUST_READ, - IOobject::NO_WRITE - ) - ); - - - const word setName(pointSetDict.lookup("name")); - const word actionName(pointSetDict.lookup("action")); - - topoSetSource::setAction action = topoSetSource::toAction(actionName); - - - // Create topoSetSources - PtrList topoSetSources - ( - pointSetDict.lookup("topoSetSources"), - topoSetSource::iNew(mesh) - ); - - - // Load set to work - autoPtr currentSetPtr(NULL); - IOobject::readOption r; - - if ((action == topoSetSource::NEW) || (action == topoSetSource::CLEAR)) - { - r = IOobject::NO_READ; - - currentSetPtr.reset - ( - new pointSet - ( - mesh, - setName, - mesh.nPoints()/10+1 // Reasonable size estimate. - ) - ); - } - else - { - r = IOobject::MUST_READ; - - currentSetPtr.reset - ( - new pointSet - ( - mesh, - setName, - r - ) - ); - } - - topoSet& currentSet = currentSetPtr(); - - Info<< "Set:" << currentSet.name() - << " Size:" << currentSet.size() - << " Action:" << actionName - << endl; - - if ((r == IOobject::MUST_READ) && (action != topoSetSource::LIST)) - { - // currentSet has been read so can make copy. - //backup(mesh, setName, currentSet, setName + "_old"); - } - - if (action == topoSetSource::CLEAR) - { - // Already handled above by not reading - } - else if (action == topoSetSource::INVERT) - { - currentSet.invert(currentSet.maxSize(mesh)); - } - else if (action == topoSetSource::LIST) - { - currentSet.writeDebug(Info, mesh, 100); - Info<< endl; - } - else if (action == topoSetSource::SUBSET) - { - // Apply topoSetSources to it to handle new/add/delete - forAll(topoSetSources, topoSetSourceI) - { - // Backup current set. - autoPtr oldSet - ( - topoSet::New - ( - currentSet.type(), - mesh, - currentSet.name() + "_old2", - currentSet - ) - ); - - currentSet.clear(); - - topoSetSources[topoSetSourceI].applyToSet - ( - topoSetSource::NEW, - currentSet - ); - - // Combine new value of currentSet with old one. - currentSet.subset(oldSet); - } - } - else - { - // Apply topoSetSources to it to handle new/add/delete - forAll(topoSetSources, topoSetSourceI) - { - topoSetSources[topoSetSourceI].applyToSet(action, currentSet); - } - } - - - if (action != topoSetSource::LIST) - { - // Set has changed. - - // Sync across coupled patches. - currentSet.sync(mesh); - - Info<< "Writing " << currentSet.name() - << " (size " << currentSet.size() << ") to " - << currentSet.instance()/currentSet.local() - /currentSet.name() - << endl << endl; - - currentSet.write(); - } - - Info<< "\nEnd\n" << endl; - - return 0; -} - - -// ************************************************************************* // diff --git a/applications/utilities/mesh/manipulation/pointSet/pointSetDict b/applications/utilities/mesh/manipulation/pointSet/pointSetDict deleted file mode 100644 index 7d4dd656ae..0000000000 --- a/applications/utilities/mesh/manipulation/pointSet/pointSetDict +++ /dev/null @@ -1,84 +0,0 @@ -/*--------------------------------*- C++ -*----------------------------------*\ -| ========= | | -| \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: 1.6 | -| \\ / A nd | Web: http://www.OpenFOAM.org | -| \\/ M anipulation | | -\*---------------------------------------------------------------------------*/ -FoamFile -{ - version 2.0; - format ascii; - class dictionary; - object pointSetDict; -} - -// * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * // - -// Name of set to operate on -name p0; - -// One of clear/new/invert/add/delete|subset/list -action new; - -// Actions to apply to pointSet. These are all the topoSetSource's ending -// in ..ToPoint (see the meshTools library). -topoSetSources -( - // Copy elements from pointSet - pointToPoint - { - set p1; - } - - // Select based on cellSet - cellToPoint - { - set c0; - option all; // all points of cell - } - - // Select based on faceSet - faceToPoint - { - set f0; // name of faceSet - option all; // all points of face - } - - // Select by explicitly providing point labels - labelToPoint - { - value (12 13 56); // labels of points - } - - // All points in pointzone - zoneToPoint - { - name ".*Zone"; // name of pointZone, regular expressions allowed - } - - // Points nearest to coordinates - nearestToPoint - { - points ((0 0 0) (1 1 1)); - } - - // Points with coordinate within box - boxToPoint - { - box (0 0 0) (1 1 1); - } - - // Select based on surface - surfaceToPoint - { - file "www.avl.com-geometry.stl"; - nearDistance 0.1; // points near to surface - includeInside false; // points on inside of surface - // (requires closed surface with consistent - // normals) - includeOutside false; // ,, outside ,, - } -); - -// ************************************************************************* // diff --git a/applications/utilities/mesh/manipulation/topoSet/topoSet.C b/applications/utilities/mesh/manipulation/topoSet/topoSet.C index bd15b1cc08..d794ae342d 100644 --- a/applications/utilities/mesh/manipulation/topoSet/topoSet.C +++ b/applications/utilities/mesh/manipulation/topoSet/topoSet.C @@ -167,6 +167,7 @@ int main(int argc, char *argv[]) case topoSetSource::INVERT: Info<< " Inverting set" << endl; currentSet().invert(currentSet().maxSize(mesh)); + currentSet().write(); break; default: diff --git a/tutorials/compressible/rhoPorousMRFPimpleFoam/mixerVessel2D/system/faceSetDict b/tutorials/compressible/rhoPorousMRFPimpleFoam/mixerVessel2D/system/faceSetDict deleted file mode 100644 index d4c9e00065..0000000000 --- a/tutorials/compressible/rhoPorousMRFPimpleFoam/mixerVessel2D/system/faceSetDict +++ /dev/null @@ -1,25 +0,0 @@ -/*--------------------------------*- C++ -*----------------------------------*\ -| ========= | | -| \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: 1.6 | -| \\ / A nd | Web: www.OpenFOAM.org | -| \\/ M anipulation | | -\*---------------------------------------------------------------------------*/ -FoamFile -{ - version 2.0; - format ascii; - class dictionary; - location "system"; - object faceSetDict; -} -// * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * // - -name rotor; - -action delete; - -topoSetSources ( boundaryToFace { } ); - - -// ************************************************************************* // diff --git a/tutorials/compressible/rhoPorousMRFPimpleFoam/mixerVessel2D/system/faceSetDict_noBoundaryFaces b/tutorials/compressible/rhoPorousMRFPimpleFoam/mixerVessel2D/system/faceSetDict_noBoundaryFaces deleted file mode 100644 index 38fa0208ed..0000000000 --- a/tutorials/compressible/rhoPorousMRFPimpleFoam/mixerVessel2D/system/faceSetDict_noBoundaryFaces +++ /dev/null @@ -1,25 +0,0 @@ -/*--------------------------------*- C++ -*----------------------------------*\ -| ========= | | -| \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: 1.6 | -| \\ / A nd | Web: www.OpenFOAM.org | -| \\/ M anipulation | | -\*---------------------------------------------------------------------------*/ -FoamFile -{ - version 2.0; - format ascii; - class dictionary; - location "system"; - object faceSetDict_noBoundaryFaces; -} -// * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * // - -name rotor; - -action delete; - -topoSetSources ( boundaryToFace { } ); - - -// ************************************************************************* // diff --git a/tutorials/compressible/rhoPorousMRFPimpleFoam/mixerVessel2D/system/faceSetDict_rotorFaces b/tutorials/compressible/rhoPorousMRFPimpleFoam/mixerVessel2D/system/faceSetDict_rotorFaces deleted file mode 100644 index 3ccb7ad761..0000000000 --- a/tutorials/compressible/rhoPorousMRFPimpleFoam/mixerVessel2D/system/faceSetDict_rotorFaces +++ /dev/null @@ -1,25 +0,0 @@ -/*--------------------------------*- C++ -*----------------------------------*\ -| ========= | | -| \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: 1.6 | -| \\ / A nd | Web: www.OpenFOAM.org | -| \\/ M anipulation | | -\*---------------------------------------------------------------------------*/ -FoamFile -{ - version 2.0; - format ascii; - class dictionary; - location "system"; - object faceSetDict_rotorFaces; -} -// * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * // - -name rotor; - -action new; - -topoSetSources ( cellToFace { set rotor ; option all ; } ); - - -// ************************************************************************* // diff --git a/tutorials/incompressible/MRFSimpleFoam/mixerVessel2D/system/faceSetDict b/tutorials/incompressible/MRFSimpleFoam/mixerVessel2D/system/faceSetDict deleted file mode 100644 index d4c9e00065..0000000000 --- a/tutorials/incompressible/MRFSimpleFoam/mixerVessel2D/system/faceSetDict +++ /dev/null @@ -1,25 +0,0 @@ -/*--------------------------------*- C++ -*----------------------------------*\ -| ========= | | -| \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: 1.6 | -| \\ / A nd | Web: www.OpenFOAM.org | -| \\/ M anipulation | | -\*---------------------------------------------------------------------------*/ -FoamFile -{ - version 2.0; - format ascii; - class dictionary; - location "system"; - object faceSetDict; -} -// * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * // - -name rotor; - -action delete; - -topoSetSources ( boundaryToFace { } ); - - -// ************************************************************************* // diff --git a/tutorials/incompressible/MRFSimpleFoam/mixerVessel2D/system/faceSetDict_noBoundaryFaces b/tutorials/incompressible/MRFSimpleFoam/mixerVessel2D/system/faceSetDict_noBoundaryFaces deleted file mode 100644 index 38fa0208ed..0000000000 --- a/tutorials/incompressible/MRFSimpleFoam/mixerVessel2D/system/faceSetDict_noBoundaryFaces +++ /dev/null @@ -1,25 +0,0 @@ -/*--------------------------------*- C++ -*----------------------------------*\ -| ========= | | -| \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: 1.6 | -| \\ / A nd | Web: www.OpenFOAM.org | -| \\/ M anipulation | | -\*---------------------------------------------------------------------------*/ -FoamFile -{ - version 2.0; - format ascii; - class dictionary; - location "system"; - object faceSetDict_noBoundaryFaces; -} -// * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * // - -name rotor; - -action delete; - -topoSetSources ( boundaryToFace { } ); - - -// ************************************************************************* // diff --git a/tutorials/incompressible/MRFSimpleFoam/mixerVessel2D/system/faceSetDict_rotorFaces b/tutorials/incompressible/MRFSimpleFoam/mixerVessel2D/system/faceSetDict_rotorFaces deleted file mode 100644 index 3ccb7ad761..0000000000 --- a/tutorials/incompressible/MRFSimpleFoam/mixerVessel2D/system/faceSetDict_rotorFaces +++ /dev/null @@ -1,25 +0,0 @@ -/*--------------------------------*- C++ -*----------------------------------*\ -| ========= | | -| \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: 1.6 | -| \\ / A nd | Web: www.OpenFOAM.org | -| \\/ M anipulation | | -\*---------------------------------------------------------------------------*/ -FoamFile -{ - version 2.0; - format ascii; - class dictionary; - location "system"; - object faceSetDict_rotorFaces; -} -// * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * // - -name rotor; - -action new; - -topoSetSources ( cellToFace { set rotor ; option all ; } ); - - -// ************************************************************************* // diff --git a/tutorials/lagrangian/coalChemistryFoam/simplifiedSiwek/Allrun b/tutorials/lagrangian/coalChemistryFoam/simplifiedSiwek/Allrun index a67553deb1..666ec8f286 100755 --- a/tutorials/lagrangian/coalChemistryFoam/simplifiedSiwek/Allrun +++ b/tutorials/lagrangian/coalChemistryFoam/simplifiedSiwek/Allrun @@ -10,7 +10,7 @@ application=`getApplication` runApplication blockMesh # create ignition cells cellSet -runApplication cellSet +runApplication topoSet runApplication $application diff --git a/tutorials/lagrangian/coalChemistryFoam/simplifiedSiwek/system/cellSetDict b/tutorials/lagrangian/coalChemistryFoam/simplifiedSiwek/system/topoSetDict similarity index 76% rename from tutorials/lagrangian/coalChemistryFoam/simplifiedSiwek/system/cellSetDict rename to tutorials/lagrangian/coalChemistryFoam/simplifiedSiwek/system/topoSetDict index bd2802d8bd..ccaf0363cd 100644 --- a/tutorials/lagrangian/coalChemistryFoam/simplifiedSiwek/system/cellSetDict +++ b/tutorials/lagrangian/coalChemistryFoam/simplifiedSiwek/system/topoSetDict @@ -10,21 +10,24 @@ FoamFile version 2.0; format ascii; class dictionary; - object cellSetDict; + object topoSetDict; } // * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * // -name ignitionCells; - -action new; - -topoSetSources +actions ( - sphereToCell { - centre ( 0.125 0.375 0.05 ); - radius 0.005; + name ignitionCells; + type cellSet; + action new; + + source sphereToCell; + sourceDict + { + centre ( 0.125 0.375 0.05 ); + radius 0.005; + } } ); diff --git a/tutorials/multiphase/cavitatingFoam/les/Allclean b/tutorials/multiphase/cavitatingFoam/les/Allclean index fae8abfab6..68db65d125 100755 --- a/tutorials/multiphase/cavitatingFoam/les/Allclean +++ b/tutorials/multiphase/cavitatingFoam/les/Allclean @@ -9,7 +9,7 @@ cd ${0%/*} || exit 1 # run from this directory rm -rf constant/polyMesh/sets > /dev/null 2>&1 rm -rf 0/polyMesh > /dev/null 2>&1 - rm system/cellSetDict > /dev/null 2>&1 + rm system/topoSetDict > /dev/null 2>&1 cleanCase ) @@ -21,7 +21,7 @@ cd ${0%/*} || exit 1 # run from this directory rm -rf constant/polyMesh/sets > /dev/null 2>&1 rm -rf 0 > /dev/null 2>&1 cp -r 0.org 0 - rm system/cellSetDict > /dev/null 2>&1 + rm system/topoSetDict > /dev/null 2>&1 rm -rf processor[0-9] > /dev/null 2>&1 cleanCase diff --git a/tutorials/multiphase/cavitatingFoam/les/Allrun b/tutorials/multiphase/cavitatingFoam/les/Allrun index caff26f571..2cf6a091a2 100755 --- a/tutorials/multiphase/cavitatingFoam/les/Allrun +++ b/tutorials/multiphase/cavitatingFoam/les/Allrun @@ -12,8 +12,8 @@ refineMeshByCellSet() while [ $# -ge 1 ] do echo "creating cell set for primary zone - $1" - cp system/cellSetDict.$1 system/cellSetDict - cellSet > log.cellSet.$1 2>&1 + cp system/topoSetDict.$1 system/topoSetDict + topoSet > log.topoSet.$1 2>&1 echo "refining primary zone - $1" refineMesh -dict -overwrite > log.refineMesh.$1 2>&1 diff --git a/tutorials/multiphase/cavitatingFoam/les/throttle/system/topoSetDict.1 b/tutorials/multiphase/cavitatingFoam/les/throttle/system/topoSetDict.1 new file mode 100644 index 0000000000..1e1592ee39 --- /dev/null +++ b/tutorials/multiphase/cavitatingFoam/les/throttle/system/topoSetDict.1 @@ -0,0 +1,33 @@ +/*--------------------------------*- C++ -*----------------------------------*\ +| ========= | | +| \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | +| \\ / O peration | Version: 1.6 | +| \\ / A nd | Web: www.OpenFOAM.org | +| \\/ M anipulation | | +\*---------------------------------------------------------------------------*/ +FoamFile +{ + version 2.0; + format ascii; + class dictionary; + location "system"; + object topoSetDict.1; +} +// * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * // + +actions +( + { + name c0; + type cellSet; + action new; + source boxToCell; + sourceDict + { + box (0.004 -0.001 -1) (0.012 0.001 1); + } + } +); + + +// ************************************************************************* // diff --git a/tutorials/multiphase/cavitatingFoam/les/throttle/system/topoSetDict.2 b/tutorials/multiphase/cavitatingFoam/les/throttle/system/topoSetDict.2 new file mode 100644 index 0000000000..ab0289c156 --- /dev/null +++ b/tutorials/multiphase/cavitatingFoam/les/throttle/system/topoSetDict.2 @@ -0,0 +1,33 @@ +/*--------------------------------*- C++ -*----------------------------------*\ +| ========= | | +| \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | +| \\ / O peration | Version: 1.6 | +| \\ / A nd | Web: www.OpenFOAM.org | +| \\/ M anipulation | | +\*---------------------------------------------------------------------------*/ +FoamFile +{ + version 2.0; + format ascii; + class dictionary; + location "system"; + object topoSetDict.2; +} +// * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * // + +actions +( + { + name c0; + type cellSet; + action new; + source boxToCell; + sourceDict + { + box (0.0045 -0.00075 -1) (0.0095 0.00075 1); + } + } +); + + +// ************************************************************************* // diff --git a/tutorials/multiphase/cavitatingFoam/les/throttle/system/topoSetDict.3 b/tutorials/multiphase/cavitatingFoam/les/throttle/system/topoSetDict.3 new file mode 100644 index 0000000000..3e504e9aef --- /dev/null +++ b/tutorials/multiphase/cavitatingFoam/les/throttle/system/topoSetDict.3 @@ -0,0 +1,33 @@ +/*--------------------------------*- C++ -*----------------------------------*\ +| ========= | | +| \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | +| \\ / O peration | Version: 1.6 | +| \\ / A nd | Web: www.OpenFOAM.org | +| \\/ M anipulation | | +\*---------------------------------------------------------------------------*/ +FoamFile +{ + version 2.0; + format ascii; + class dictionary; + location "system"; + object topoSetDict.3; +} +// * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * // + +actions +( + { + name c0; + type cellSet; + action new; + source boxToCell; + sourceDict + { + box (0.00475 -0.000375 -1) (0.009 0.000375 1); + } + } +); + + +// ************************************************************************* // diff --git a/tutorials/multiphase/cavitatingFoam/les/throttle3D/system/cellSetDict.1 b/tutorials/multiphase/cavitatingFoam/les/throttle3D/system/cellSetDict.1 deleted file mode 100644 index 2eb73c024e..0000000000 --- a/tutorials/multiphase/cavitatingFoam/les/throttle3D/system/cellSetDict.1 +++ /dev/null @@ -1,31 +0,0 @@ -/*--------------------------------*- C++ -*----------------------------------*\ -| ========= | | -| \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: 1.6 | -| \\ / A nd | Web: www.OpenFOAM.org | -| \\/ M anipulation | | -\*---------------------------------------------------------------------------*/ -FoamFile -{ - version 2.0; - format ascii; - class dictionary; - location "system"; - object cellSetDict.1; -} -// * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * // - -name c0; - -action new; - -topoSetSources -( - boxToCell - { - box ( 0.004 -0.001 -1 ) ( 0.012 0.001 1 ); - } -); - - -// ************************************************************************* // diff --git a/tutorials/multiphase/cavitatingFoam/les/throttle3D/system/cellSetDict.2 b/tutorials/multiphase/cavitatingFoam/les/throttle3D/system/cellSetDict.2 deleted file mode 100644 index 8a78bbba80..0000000000 --- a/tutorials/multiphase/cavitatingFoam/les/throttle3D/system/cellSetDict.2 +++ /dev/null @@ -1,31 +0,0 @@ -/*--------------------------------*- C++ -*----------------------------------*\ -| ========= | | -| \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: 1.6 | -| \\ / A nd | Web: www.OpenFOAM.org | -| \\/ M anipulation | | -\*---------------------------------------------------------------------------*/ -FoamFile -{ - version 2.0; - format ascii; - class dictionary; - location "system"; - object cellSetDict.2; -} -// * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * // - -name c0; - -action new; - -topoSetSources -( - boxToCell - { - box ( 0.0045 -0.00075 -1 ) ( 0.0095 0.00075 1 ); - } -); - - -// ************************************************************************* // diff --git a/tutorials/multiphase/cavitatingFoam/les/throttle3D/system/cellSetDict.3 b/tutorials/multiphase/cavitatingFoam/les/throttle3D/system/cellSetDict.3 deleted file mode 100644 index 3eb51acdc4..0000000000 --- a/tutorials/multiphase/cavitatingFoam/les/throttle3D/system/cellSetDict.3 +++ /dev/null @@ -1,31 +0,0 @@ -/*--------------------------------*- C++ -*----------------------------------*\ -| ========= | | -| \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: 1.6 | -| \\ / A nd | Web: www.OpenFOAM.org | -| \\/ M anipulation | | -\*---------------------------------------------------------------------------*/ -FoamFile -{ - version 2.0; - format ascii; - class dictionary; - location "system"; - object cellSetDict.3; -} -// * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * // - -name c0; - -action new; - -topoSetSources -( - boxToCell - { - box ( 0.00475 -0.000375 -1 ) ( 0.009 0.000375 1 ); - } -); - - -// ************************************************************************* // diff --git a/tutorials/multiphase/cavitatingFoam/les/throttle3D/system/topoSetDict.1 b/tutorials/multiphase/cavitatingFoam/les/throttle3D/system/topoSetDict.1 new file mode 100644 index 0000000000..cd2329f57d --- /dev/null +++ b/tutorials/multiphase/cavitatingFoam/les/throttle3D/system/topoSetDict.1 @@ -0,0 +1,33 @@ +/*--------------------------------*- C++ -*----------------------------------*\ +| ========= | | +| \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | +| \\ / O peration | Version: 1.6 | +| \\ / A nd | Web: www.OpenFOAM.org | +| \\/ M anipulation | | +\*---------------------------------------------------------------------------*/ +FoamFile +{ + version 2.0; + format ascii; + class dictionary; + location "system"; + object topoSetDict.1; +} +// * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * // + +actions +( + { + name c0; + type cellSet; + action new; + source boxToCell; + sourceDict + { + box ( 0.004 -0.001 -1 ) ( 0.012 0.001 1 ); + } + } +); + + +// ************************************************************************* // diff --git a/tutorials/multiphase/cavitatingFoam/les/throttle3D/system/topoSetDict.2 b/tutorials/multiphase/cavitatingFoam/les/throttle3D/system/topoSetDict.2 new file mode 100644 index 0000000000..a8a80dff4d --- /dev/null +++ b/tutorials/multiphase/cavitatingFoam/les/throttle3D/system/topoSetDict.2 @@ -0,0 +1,33 @@ +/*--------------------------------*- C++ -*----------------------------------*\ +| ========= | | +| \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | +| \\ / O peration | Version: 1.6 | +| \\ / A nd | Web: www.OpenFOAM.org | +| \\/ M anipulation | | +\*---------------------------------------------------------------------------*/ +FoamFile +{ + version 2.0; + format ascii; + class dictionary; + location "system"; + object topoSetDict.2; +} +// * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * // + +actions +( + { + name c0; + type cellSet; + action new; + source boxToCell; + sourceDict + { + box ( 0.0045 -0.00075 -1 ) ( 0.0095 0.00075 1 ); + } + } +); + + +// ************************************************************************* // diff --git a/tutorials/multiphase/cavitatingFoam/les/throttle3D/system/topoSetDict.3 b/tutorials/multiphase/cavitatingFoam/les/throttle3D/system/topoSetDict.3 new file mode 100644 index 0000000000..67021ba219 --- /dev/null +++ b/tutorials/multiphase/cavitatingFoam/les/throttle3D/system/topoSetDict.3 @@ -0,0 +1,33 @@ +/*--------------------------------*- C++ -*----------------------------------*\ +| ========= | | +| \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | +| \\ / O peration | Version: 1.6 | +| \\ / A nd | Web: www.OpenFOAM.org | +| \\/ M anipulation | | +\*---------------------------------------------------------------------------*/ +FoamFile +{ + version 2.0; + format ascii; + class dictionary; + location "system"; + object topoSetDict.3; +} +// * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * // + +actions +( + { + name c0; + type cellSet; + action new; + source boxToCell; + sourceDict + { + box ( 0.00475 -0.000375 -1 ) ( 0.009 0.000375 1 ); + } + } +); + + +// ************************************************************************* // diff --git a/tutorials/multiphase/cavitatingFoam/ras/throttle/Allclean b/tutorials/multiphase/cavitatingFoam/ras/throttle/Allclean index 96f4954120..c49b5e9af3 100755 --- a/tutorials/multiphase/cavitatingFoam/ras/throttle/Allclean +++ b/tutorials/multiphase/cavitatingFoam/ras/throttle/Allclean @@ -6,7 +6,7 @@ cd ${0%/*} || exit 1 # run from this directory rm -rf constant/polyMesh/sets > /dev/null 2>&1 rm -rf 0/polyMesh > /dev/null 2>&1 -rm system/cellSetDict > /dev/null 2>&1 +rm system/topoDict > /dev/null 2>&1 cleanCase # ----------------------------------------------------------------- end-of-file diff --git a/tutorials/multiphase/cavitatingFoam/ras/throttle/Allrun b/tutorials/multiphase/cavitatingFoam/ras/throttle/Allrun index 878222cf80..9f117b0ba8 100755 --- a/tutorials/multiphase/cavitatingFoam/ras/throttle/Allrun +++ b/tutorials/multiphase/cavitatingFoam/ras/throttle/Allrun @@ -11,8 +11,8 @@ refineMeshByCellSet() while [ $# -ge 1 ] do echo "creating cell set for primary zone - $1" - cp system/cellSetDict.$1 system/cellSetDict - cellSet > log.cellSet.$1 2>&1 + cp system/topoSetDict.$1 system/topoSetDict + topoSet > log.topoSet.$1 2>&1 echo "refining primary zone - $1" refineMesh -dict -overwrite > log.refineMesh.$1 2>&1 diff --git a/tutorials/multiphase/cavitatingFoam/ras/throttle/system/cellSetDict.1 b/tutorials/multiphase/cavitatingFoam/ras/throttle/system/cellSetDict.1 deleted file mode 100644 index 93a5a661f8..0000000000 --- a/tutorials/multiphase/cavitatingFoam/ras/throttle/system/cellSetDict.1 +++ /dev/null @@ -1,25 +0,0 @@ -/*--------------------------------*- C++ -*----------------------------------*\ -| ========= | | -| \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: 1.6 | -| \\ / A nd | Web: www.OpenFOAM.org | -| \\/ M anipulation | | -\*---------------------------------------------------------------------------*/ -FoamFile -{ - version 2.0; - format ascii; - class dictionary; - location "system"; - object cellSetDict.1; -} -// * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * // - -name c0; - -action new; - -topoSetSources ( boxToCell { box ( 0.004 -0.001 -1 ) ( 0.012 0.001 1 ) ; } ); - - -// ************************************************************************* // diff --git a/tutorials/multiphase/cavitatingFoam/ras/throttle/system/cellSetDict.2 b/tutorials/multiphase/cavitatingFoam/ras/throttle/system/cellSetDict.2 deleted file mode 100644 index c7826d8689..0000000000 --- a/tutorials/multiphase/cavitatingFoam/ras/throttle/system/cellSetDict.2 +++ /dev/null @@ -1,25 +0,0 @@ -/*--------------------------------*- C++ -*----------------------------------*\ -| ========= | | -| \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: 1.6 | -| \\ / A nd | Web: www.OpenFOAM.org | -| \\/ M anipulation | | -\*---------------------------------------------------------------------------*/ -FoamFile -{ - version 2.0; - format ascii; - class dictionary; - location "system"; - object cellSetDict.2; -} -// * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * // - -name c0; - -action new; - -topoSetSources ( boxToCell { box ( 0.0045 -0.00075 -1 ) ( 0.0095 0.00075 1 ) ; } ); - - -// ************************************************************************* // diff --git a/tutorials/multiphase/cavitatingFoam/ras/throttle/system/cellSetDict.3 b/tutorials/multiphase/cavitatingFoam/ras/throttle/system/cellSetDict.3 deleted file mode 100644 index 87b315aafb..0000000000 --- a/tutorials/multiphase/cavitatingFoam/ras/throttle/system/cellSetDict.3 +++ /dev/null @@ -1,25 +0,0 @@ -/*--------------------------------*- C++ -*----------------------------------*\ -| ========= | | -| \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: 1.6 | -| \\ / A nd | Web: www.OpenFOAM.org | -| \\/ M anipulation | | -\*---------------------------------------------------------------------------*/ -FoamFile -{ - version 2.0; - format ascii; - class dictionary; - location "system"; - object cellSetDict.3; -} -// * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * // - -name c0; - -action new; - -topoSetSources ( boxToCell { box ( 0.00475 -0.000375 -1 ) ( 0.009 0.000375 1 ) ; } ); - - -// ************************************************************************* // diff --git a/tutorials/multiphase/cavitatingFoam/ras/throttle/system/topoSetDict b/tutorials/multiphase/cavitatingFoam/ras/throttle/system/topoSetDict new file mode 100644 index 0000000000..30e3ea0006 --- /dev/null +++ b/tutorials/multiphase/cavitatingFoam/ras/throttle/system/topoSetDict @@ -0,0 +1,33 @@ +/*--------------------------------*- C++ -*----------------------------------*\ +| ========= | | +| \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | +| \\ / O peration | Version: 1.6 | +| \\ / A nd | Web: www.OpenFOAM.org | +| \\/ M anipulation | | +\*---------------------------------------------------------------------------*/ +FoamFile +{ + version 2.0; + format ascii; + class dictionary; + location "system"; + object topoSetDict.3; +} +// * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * // + +actions +( + { + name c0; + type cellSet; + action new; + source boxToCell; + sourceDict + { + box ( 0.00475 -0.000375 -1 ) ( 0.009 0.000375 1 ) ; + } + } +); + + +// ************************************************************************* // diff --git a/tutorials/lagrangian/porousExplicitSourceReactingParcelFoam/filter/system/cellSetDict b/tutorials/multiphase/cavitatingFoam/ras/throttle/system/topoSetDict.1 similarity index 78% rename from tutorials/lagrangian/porousExplicitSourceReactingParcelFoam/filter/system/cellSetDict rename to tutorials/multiphase/cavitatingFoam/ras/throttle/system/topoSetDict.1 index 304f1d9445..01e4f46a66 100644 --- a/tutorials/lagrangian/porousExplicitSourceReactingParcelFoam/filter/system/cellSetDict +++ b/tutorials/multiphase/cavitatingFoam/ras/throttle/system/topoSetDict.1 @@ -11,20 +11,21 @@ FoamFile format ascii; class dictionary; location "system"; - object cellSetDict; + object topoSetDict.1; } // * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * // -name filter; - -action new; - -topoSetSources +actions ( - // Cells with cell centre within box - boxToCell { - box (1.5 -1 -1) (2 1 1); + name c0; + type cellSet; + action new; + source boxToCell; + sourceDict + { + box ( 0.004 -0.001 -1 ) ( 0.012 0.001 1 ) ; + } } ); diff --git a/tutorials/multiphase/cavitatingFoam/ras/throttle/system/topoSetDict.2 b/tutorials/multiphase/cavitatingFoam/ras/throttle/system/topoSetDict.2 new file mode 100644 index 0000000000..20bc81f6ba --- /dev/null +++ b/tutorials/multiphase/cavitatingFoam/ras/throttle/system/topoSetDict.2 @@ -0,0 +1,33 @@ +/*--------------------------------*- C++ -*----------------------------------*\ +| ========= | | +| \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | +| \\ / O peration | Version: 1.6 | +| \\ / A nd | Web: www.OpenFOAM.org | +| \\/ M anipulation | | +\*---------------------------------------------------------------------------*/ +FoamFile +{ + version 2.0; + format ascii; + class dictionary; + location "system"; + object topoSetDict.2; +} +// * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * // + +actions +( + { + name c0; + type cellSet; + action new; + source boxToCell; + sourceDict + { + box ( 0.0045 -0.00075 -1 ) ( 0.0095 0.00075 1 ) ; + } + } +); + + +// ************************************************************************* // diff --git a/tutorials/multiphase/cavitatingFoam/ras/throttle/system/topoSetDict.3 b/tutorials/multiphase/cavitatingFoam/ras/throttle/system/topoSetDict.3 new file mode 100644 index 0000000000..30e3ea0006 --- /dev/null +++ b/tutorials/multiphase/cavitatingFoam/ras/throttle/system/topoSetDict.3 @@ -0,0 +1,33 @@ +/*--------------------------------*- C++ -*----------------------------------*\ +| ========= | | +| \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | +| \\ / O peration | Version: 1.6 | +| \\ / A nd | Web: www.OpenFOAM.org | +| \\/ M anipulation | | +\*---------------------------------------------------------------------------*/ +FoamFile +{ + version 2.0; + format ascii; + class dictionary; + location "system"; + object topoSetDict.3; +} +// * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * // + +actions +( + { + name c0; + type cellSet; + action new; + source boxToCell; + sourceDict + { + box ( 0.00475 -0.000375 -1 ) ( 0.009 0.000375 1 ) ; + } + } +); + + +// ************************************************************************* // diff --git a/tutorials/multiphase/interDyMFoam/ras/floatingObject/Allclean b/tutorials/multiphase/interDyMFoam/ras/floatingObject/Allclean index 2c6db87c7f..d16400a94f 100755 --- a/tutorials/multiphase/interDyMFoam/ras/floatingObject/Allclean +++ b/tutorials/multiphase/interDyMFoam/ras/floatingObject/Allclean @@ -4,7 +4,6 @@ cd ${0%/*} || exit 1 # run from this directory # Source tutorial clean functions . $WM_PROJECT_DIR/bin/tools/CleanFunctions -rm system/cellSetDict > /dev/null 2>&1 rm -rf 0 > /dev/null 2>&1 cleanCase diff --git a/tutorials/multiphase/interDyMFoam/ras/floatingObject/Allrun b/tutorials/multiphase/interDyMFoam/ras/floatingObject/Allrun index 8016666d73..5613186ba2 100755 --- a/tutorials/multiphase/interDyMFoam/ras/floatingObject/Allrun +++ b/tutorials/multiphase/interDyMFoam/ras/floatingObject/Allrun @@ -7,19 +7,8 @@ cd ${0%/*} || exit 1 # run from this directory # Set application name application="interDyMFoam" -makeMeshByCellSet() -{ - while [ $# -ge 1 ] - do - echo "Running cellSet operation $1" - cp system/cellSetDict.$1 system/cellSetDict - cellSet > log.cellSet.$1 2>&1 - shift - done -} - runApplication blockMesh -makeMeshByCellSet 1 2 +runApplication topoSet runApplication subsetMesh -overwrite c0 -patch floatingObject cp -r 0.org 0 > /dev/null 2>&1 runApplication setFields diff --git a/tutorials/multiphase/interDyMFoam/ras/floatingObject/system/cellSetDict.2 b/tutorials/multiphase/interDyMFoam/ras/floatingObject/system/cellSetDict.2 deleted file mode 100644 index 57cc0658f7..0000000000 --- a/tutorials/multiphase/interDyMFoam/ras/floatingObject/system/cellSetDict.2 +++ /dev/null @@ -1,24 +0,0 @@ -/*--------------------------------*- C++ -*----------------------------------*\ -| ========= | | -| \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: 1.6 | -| \\ / A nd | Web: http://www.OpenFOAM.org | -| \\/ M anipulation | | -\*---------------------------------------------------------------------------*/ -FoamFile -{ - version 2.0; - format ascii; - class dictionary; - object cellSetDict; -} - -// * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * // - -name c0; - -action invert; - -topoSetSources (); - -// ************************************************************************* // diff --git a/tutorials/multiphase/interDyMFoam/ras/floatingObject/system/cellSetDict.1 b/tutorials/multiphase/interDyMFoam/ras/floatingObject/system/topoSetDict similarity index 74% rename from tutorials/multiphase/interDyMFoam/ras/floatingObject/system/cellSetDict.1 rename to tutorials/multiphase/interDyMFoam/ras/floatingObject/system/topoSetDict index 90a225e6a9..c696d169b4 100644 --- a/tutorials/multiphase/interDyMFoam/ras/floatingObject/system/cellSetDict.1 +++ b/tutorials/multiphase/interDyMFoam/ras/floatingObject/system/topoSetDict @@ -10,20 +10,28 @@ FoamFile version 2.0; format ascii; class dictionary; - object cellSetDict; + object topoSetDict; } // * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * // -name c0; - -action new; - -topoSetSources +actions ( - boxToCell { - box (0.35 0.35 0.44) (0.65 0.65 0.56); + name c0; + type cellSet; + action new; + source boxToCell; + sourceDict + { + box (0.35 0.35 0.44) (0.65 0.65 0.56); + } + } + + { + name c0; + type cellSet; + action invert; } ); diff --git a/tutorials/multiphase/interFoam/MRFInterFoam/mixerVessel2D/makeMesh b/tutorials/multiphase/interFoam/MRFInterFoam/mixerVessel2D/makeMesh index b0be10d8e5..8ef4993fde 100755 --- a/tutorials/multiphase/interFoam/MRFInterFoam/mixerVessel2D/makeMesh +++ b/tutorials/multiphase/interFoam/MRFInterFoam/mixerVessel2D/makeMesh @@ -2,10 +2,5 @@ m4 < constant/polyMesh/blockMeshDict.m4 > constant/polyMesh/blockMeshDict blockMesh -cellSet -#- MRF determines its own faceZone if not supplied -#cp system/faceSetDict_rotorFaces system/faceSetDict -#faceSet -#cp system/faceSetDict_noBoundaryFaces system/faceSetDict -#faceSet +topoSet setsToZones -noFlipMap diff --git a/tutorials/multiphase/interFoam/MRFInterFoam/mixerVessel2D/system/cellSetDict b/tutorials/multiphase/interFoam/MRFInterFoam/mixerVessel2D/system/cellSetDict deleted file mode 100644 index ae58e6ff70..0000000000 --- a/tutorials/multiphase/interFoam/MRFInterFoam/mixerVessel2D/system/cellSetDict +++ /dev/null @@ -1,25 +0,0 @@ -/*--------------------------------*- C++ -*----------------------------------*\ -| ========= | | -| \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: 1.6 | -| \\ / A nd | Web: www.OpenFOAM.org | -| \\/ M anipulation | | -\*---------------------------------------------------------------------------*/ -FoamFile -{ - version 2.0; - format ascii; - class dictionary; - location "system"; - object cellSetDict; -} -// * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * // - -name rotor; - -action new; - -topoSetSources ( zoneToCell { name rotor ; } ); - - -// ************************************************************************* // diff --git a/tutorials/multiphase/interFoam/MRFInterFoam/mixerVessel2D/system/faceSetDict b/tutorials/multiphase/interFoam/MRFInterFoam/mixerVessel2D/system/faceSetDict deleted file mode 100644 index d4c9e00065..0000000000 --- a/tutorials/multiphase/interFoam/MRFInterFoam/mixerVessel2D/system/faceSetDict +++ /dev/null @@ -1,25 +0,0 @@ -/*--------------------------------*- C++ -*----------------------------------*\ -| ========= | | -| \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: 1.6 | -| \\ / A nd | Web: www.OpenFOAM.org | -| \\/ M anipulation | | -\*---------------------------------------------------------------------------*/ -FoamFile -{ - version 2.0; - format ascii; - class dictionary; - location "system"; - object faceSetDict; -} -// * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * // - -name rotor; - -action delete; - -topoSetSources ( boundaryToFace { } ); - - -// ************************************************************************* // diff --git a/tutorials/multiphase/interFoam/MRFInterFoam/mixerVessel2D/system/faceSetDict_noBoundaryFaces b/tutorials/multiphase/interFoam/MRFInterFoam/mixerVessel2D/system/faceSetDict_noBoundaryFaces deleted file mode 100644 index 38fa0208ed..0000000000 --- a/tutorials/multiphase/interFoam/MRFInterFoam/mixerVessel2D/system/faceSetDict_noBoundaryFaces +++ /dev/null @@ -1,25 +0,0 @@ -/*--------------------------------*- C++ -*----------------------------------*\ -| ========= | | -| \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: 1.6 | -| \\ / A nd | Web: www.OpenFOAM.org | -| \\/ M anipulation | | -\*---------------------------------------------------------------------------*/ -FoamFile -{ - version 2.0; - format ascii; - class dictionary; - location "system"; - object faceSetDict_noBoundaryFaces; -} -// * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * // - -name rotor; - -action delete; - -topoSetSources ( boundaryToFace { } ); - - -// ************************************************************************* // diff --git a/tutorials/multiphase/interFoam/MRFInterFoam/mixerVessel2D/system/faceSetDict_rotorFaces b/tutorials/multiphase/interFoam/MRFInterFoam/mixerVessel2D/system/faceSetDict_rotorFaces deleted file mode 100644 index 3ccb7ad761..0000000000 --- a/tutorials/multiphase/interFoam/MRFInterFoam/mixerVessel2D/system/faceSetDict_rotorFaces +++ /dev/null @@ -1,25 +0,0 @@ -/*--------------------------------*- C++ -*----------------------------------*\ -| ========= | | -| \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: 1.6 | -| \\ / A nd | Web: www.OpenFOAM.org | -| \\/ M anipulation | | -\*---------------------------------------------------------------------------*/ -FoamFile -{ - version 2.0; - format ascii; - class dictionary; - location "system"; - object faceSetDict_rotorFaces; -} -// * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * // - -name rotor; - -action new; - -topoSetSources ( cellToFace { set rotor ; option all ; } ); - - -// ************************************************************************* // diff --git a/tutorials/multiphase/interFoam/MRFInterFoam/mixerVessel2D/system/topoSetDict b/tutorials/multiphase/interFoam/MRFInterFoam/mixerVessel2D/system/topoSetDict new file mode 100644 index 0000000000..b89e6319bf --- /dev/null +++ b/tutorials/multiphase/interFoam/MRFInterFoam/mixerVessel2D/system/topoSetDict @@ -0,0 +1,34 @@ +/*--------------------------------*- C++ -*----------------------------------*\ +| ========= | | +| \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | +| \\ / O peration | Version: 1.6 | +| \\ / A nd | Web: www.OpenFOAM.org | +| \\/ M anipulation | | +\*---------------------------------------------------------------------------*/ +FoamFile +{ + version 2.0; + format ascii; + class dictionary; + location "system"; + object topoSetDict; +} +// * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * // + + +actions +( + { + name rotor; + type cellSet; + action new; + source zoneToCell; + sourceDict + { + name rotor; + } + } +); + + +// ************************************************************************* // diff --git a/tutorials/multiphase/interFoam/les/nozzleFlow2D/Allrun b/tutorials/multiphase/interFoam/les/nozzleFlow2D/Allrun index c233dfa356..cb29d4ff80 100755 --- a/tutorials/multiphase/interFoam/les/nozzleFlow2D/Allrun +++ b/tutorials/multiphase/interFoam/les/nozzleFlow2D/Allrun @@ -17,19 +17,19 @@ runRefineMesh() runApplication blockMesh i=1 -if [ -f log.cellSet ] +if [ -f log.topoSet ] then i=3 fi while [ "$i" -lt 3 ] do - if [ -f log.cellSet ] + if [ -f log.topoSet ] then - mv log.cellSet log.cellSet.1 + mv log.topoSet log.topoSet.1 fi - cp system/cellSetDict.${i} system/cellSetDict - runApplication cellSet + cp system/topoSetDict.${i} system/topoSetDict + runApplication topoSet runRefineMesh cp -r 1e-08/polyMesh/* constant/polyMesh rm -rf 1e-08 diff --git a/tutorials/multiphase/interFoam/les/nozzleFlow2D/system/cellSetDict b/tutorials/multiphase/interFoam/les/nozzleFlow2D/system/cellSetDict deleted file mode 100644 index f7d399ef06..0000000000 --- a/tutorials/multiphase/interFoam/les/nozzleFlow2D/system/cellSetDict +++ /dev/null @@ -1,25 +0,0 @@ -/*--------------------------------*- C++ -*----------------------------------*\ -| ========= | | -| \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: 1.6 | -| \\ / A nd | Web: www.OpenFOAM.org | -| \\/ M anipulation | | -\*---------------------------------------------------------------------------*/ -FoamFile -{ - version 2.0; - format ascii; - class dictionary; - location "system"; - object cellSetDict.2; -} -// * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * // - -name c0; - -action new; - -topoSetSources ( boxToCell { box ( 0 0 -2e-05 ) ( 0.0036 0.0003 2e-05 ) ; } ); - - -// ************************************************************************* // diff --git a/tutorials/multiphase/interFoam/les/nozzleFlow2D/system/cellSetDict.1 b/tutorials/multiphase/interFoam/les/nozzleFlow2D/system/cellSetDict.1 deleted file mode 100644 index adf351bd6f..0000000000 --- a/tutorials/multiphase/interFoam/les/nozzleFlow2D/system/cellSetDict.1 +++ /dev/null @@ -1,25 +0,0 @@ -/*--------------------------------*- C++ -*----------------------------------*\ -| ========= | | -| \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: 1.6 | -| \\ / A nd | Web: www.OpenFOAM.org | -| \\/ M anipulation | | -\*---------------------------------------------------------------------------*/ -FoamFile -{ - version 2.0; - format ascii; - class dictionary; - location "system"; - object cellSetDict.1; -} -// * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * // - -name c0; - -action new; - -topoSetSources ( boxToCell { box ( 0 0 -2e-05 ) ( 0.0036 0.0008 4e-05 ) ; } ); - - -// ************************************************************************* // diff --git a/tutorials/multiphase/interFoam/les/nozzleFlow2D/system/cellSetDict.2 b/tutorials/multiphase/interFoam/les/nozzleFlow2D/system/cellSetDict.2 deleted file mode 100644 index f7d399ef06..0000000000 --- a/tutorials/multiphase/interFoam/les/nozzleFlow2D/system/cellSetDict.2 +++ /dev/null @@ -1,25 +0,0 @@ -/*--------------------------------*- C++ -*----------------------------------*\ -| ========= | | -| \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | -| \\ / O peration | Version: 1.6 | -| \\ / A nd | Web: www.OpenFOAM.org | -| \\/ M anipulation | | -\*---------------------------------------------------------------------------*/ -FoamFile -{ - version 2.0; - format ascii; - class dictionary; - location "system"; - object cellSetDict.2; -} -// * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * // - -name c0; - -action new; - -topoSetSources ( boxToCell { box ( 0 0 -2e-05 ) ( 0.0036 0.0003 2e-05 ) ; } ); - - -// ************************************************************************* // diff --git a/tutorials/multiphase/cavitatingFoam/les/throttle/system/cellSetDict.1 b/tutorials/multiphase/interFoam/les/nozzleFlow2D/system/topoSetDict similarity index 78% rename from tutorials/multiphase/cavitatingFoam/les/throttle/system/cellSetDict.1 rename to tutorials/multiphase/interFoam/les/nozzleFlow2D/system/topoSetDict index 8b6a6950d8..cf1a5033eb 100644 --- a/tutorials/multiphase/cavitatingFoam/les/throttle/system/cellSetDict.1 +++ b/tutorials/multiphase/interFoam/les/nozzleFlow2D/system/topoSetDict @@ -11,19 +11,21 @@ FoamFile format ascii; class dictionary; location "system"; - object cellSetDict.1; + object topoSetDict.2; } // * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * // -name c0; - -action new; - -topoSetSources +actions ( - boxToCell { - box (0.004 -0.001 -1) (0.012 0.001 1); + name c0; + type cellSet; + action new; + source boxToCell; + sourceDict + { + box ( 0 0 -2e-05 ) ( 0.0036 0.0003 2e-05 ); + } } ); diff --git a/tutorials/multiphase/cavitatingFoam/les/throttle/system/cellSetDict.3 b/tutorials/multiphase/interFoam/les/nozzleFlow2D/system/topoSetDict.1 similarity index 78% rename from tutorials/multiphase/cavitatingFoam/les/throttle/system/cellSetDict.3 rename to tutorials/multiphase/interFoam/les/nozzleFlow2D/system/topoSetDict.1 index 967c4deacc..5c87356b4a 100644 --- a/tutorials/multiphase/cavitatingFoam/les/throttle/system/cellSetDict.3 +++ b/tutorials/multiphase/interFoam/les/nozzleFlow2D/system/topoSetDict.1 @@ -11,21 +11,22 @@ FoamFile format ascii; class dictionary; location "system"; - object cellSetDict.3; + object topoSetDict.1; } // * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * // -name c0; - -action new; - -topoSetSources +actions ( - boxToCell { - box (0.00475 -0.000375 -1) (0.009 0.000375 1); + name c0; + type cellSet; + action new; + source boxToCell; + sourceDict + { + box ( 0 0 -2e-05 ) ( 0.0036 0.0008 4e-05 ) ; + } } ); - // ************************************************************************* // diff --git a/tutorials/multiphase/cavitatingFoam/les/throttle/system/cellSetDict.2 b/tutorials/multiphase/interFoam/les/nozzleFlow2D/system/topoSetDict.2 similarity index 78% rename from tutorials/multiphase/cavitatingFoam/les/throttle/system/cellSetDict.2 rename to tutorials/multiphase/interFoam/les/nozzleFlow2D/system/topoSetDict.2 index 9c99971206..cf1a5033eb 100644 --- a/tutorials/multiphase/cavitatingFoam/les/throttle/system/cellSetDict.2 +++ b/tutorials/multiphase/interFoam/les/nozzleFlow2D/system/topoSetDict.2 @@ -11,19 +11,21 @@ FoamFile format ascii; class dictionary; location "system"; - object cellSetDict.2; + object topoSetDict.2; } // * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * // -name c0; - -action new; - -topoSetSources +actions ( - boxToCell { - box (0.0045 -0.00075 -1) (0.0095 0.00075 1); + name c0; + type cellSet; + action new; + source boxToCell; + sourceDict + { + box ( 0 0 -2e-05 ) ( 0.0036 0.0003 2e-05 ); + } } ); From 9f2e06ed552ebcf35f73be9ceaffe203d1cb45b3 Mon Sep 17 00:00:00 2001 From: mattijs Date: Tue, 11 May 2010 10:52:35 +0100 Subject: [PATCH 34/57] STYLE: added missing command line option descriptions for mapFields and splitMeshRegions. --- .../splitMeshRegions/splitMeshRegions.C | 18 +++++++++++------- .../preProcessing/mapFields/mapFields.C | 6 +++++- 2 files changed, 16 insertions(+), 8 deletions(-) diff --git a/applications/utilities/mesh/manipulation/splitMeshRegions/splitMeshRegions.C b/applications/utilities/mesh/manipulation/splitMeshRegions/splitMeshRegions.C index 969f9e703e..1b38f6b239 100644 --- a/applications/utilities/mesh/manipulation/splitMeshRegions/splitMeshRegions.C +++ b/applications/utilities/mesh/manipulation/splitMeshRegions/splitMeshRegions.C @@ -1479,17 +1479,18 @@ int main(int argc, char *argv[]) { argList::addNote ( - "splits mesh into multiple regions" + "splits mesh into multiple regions (detected by walking across faces)" ); #include "addOverwriteOption.H" argList::addBoolOption ( - "cellZones" + "cellZones", + "additionally split cellZones off into separate regions" ); argList::addBoolOption ( "cellZonesOnly", - "use current cellZones to split mesh into regions" + "use cellZones only to split mesh into regions; do not use walking" ); argList::addOption ( @@ -1500,7 +1501,8 @@ int main(int argc, char *argv[]) argList::addOption ( "blockedFaces", - "faceSet" + "faceSet", + "specify additional region boundaries that walking does not cross" ); argList::addBoolOption ( @@ -1509,12 +1511,14 @@ int main(int argc, char *argv[]) ); argList::addBoolOption ( - "largestOnly" + "largestOnly", + "only write largest region" ); argList::addOption ( "insidePoint", - "point" + "point", + "only write region containing point" ); argList::addBoolOption ( @@ -1524,7 +1528,7 @@ int main(int argc, char *argv[]) argList::addBoolOption ( "sloppyCellZones", - "try to match regions to existing cell zones" + "try to match heuristically regions to existing cell zones" ); #include "setRootCase.H" diff --git a/applications/utilities/preProcessing/mapFields/mapFields.C b/applications/utilities/preProcessing/mapFields/mapFields.C index 0b1d251483..72dae9f838 100644 --- a/applications/utilities/preProcessing/mapFields/mapFields.C +++ b/applications/utilities/preProcessing/mapFields/mapFields.C @@ -250,7 +250,11 @@ int main(int argc, char *argv[]) "parallelTarget", "the target is decomposed" ); - argList::addBoolOption("consistent"); + argList::addBoolOption + ( + "consistent", + "source and target geometry and boundary conditions identical" + ); argList args(argc, argv); From 7507b5f6bd7d62561a94784f36ea39bf4f5a7e05 Mon Sep 17 00:00:00 2001 From: mattijs Date: Tue, 11 May 2010 12:09:49 +0100 Subject: [PATCH 35/57] BUG: fixed subset action in topoSet; renamed sourceDict keyword to sourceInfo. --- .../mesh/manipulation/topoSet/topoSet.C | 37 ++++++++++++++- .../mesh/manipulation/topoSet/topoSetDict | 46 +++++++++++++++---- .../simplifiedSiwek/system/topoSetDict | 2 +- .../les/throttle/system/topoSetDict.1 | 2 +- .../les/throttle/system/topoSetDict.2 | 2 +- .../les/throttle/system/topoSetDict.3 | 2 +- .../les/throttle3D/system/topoSetDict.1 | 2 +- .../les/throttle3D/system/topoSetDict.2 | 2 +- .../les/throttle3D/system/topoSetDict.3 | 2 +- .../ras/throttle/system/topoSetDict | 2 +- .../ras/throttle/system/topoSetDict.1 | 2 +- .../ras/throttle/system/topoSetDict.2 | 2 +- .../ras/throttle/system/topoSetDict.3 | 2 +- .../ras/floatingObject/system/topoSetDict | 2 +- .../mixerVessel2D/system/topoSetDict | 2 +- .../les/nozzleFlow2D/system/topoSetDict | 2 +- .../les/nozzleFlow2D/system/topoSetDict.1 | 2 +- .../les/nozzleFlow2D/system/topoSetDict.2 | 2 +- 18 files changed, 89 insertions(+), 26 deletions(-) diff --git a/applications/utilities/mesh/manipulation/topoSet/topoSet.C b/applications/utilities/mesh/manipulation/topoSet/topoSet.C index d794ae342d..18466603b3 100644 --- a/applications/utilities/mesh/manipulation/topoSet/topoSet.C +++ b/applications/utilities/mesh/manipulation/topoSet/topoSet.C @@ -140,6 +140,23 @@ int main(int argc, char *argv[]) case topoSetSource::NEW: case topoSetSource::ADD: case topoSetSource::DELETE: + { + Info<< " Applying source " << word(dict.lookup("source")) + << endl; + autoPtr source = topoSetSource::New + ( + dict.lookup("source"), + mesh, + dict.subDict("sourceInfo") + ); + + source().applyToSet(action, currentSet()); + // Synchronize for coupled patches. + currentSet().sync(mesh); + currentSet().write(); + } + break; + case topoSetSource::SUBSET: { Info<< " Applying source " << word(dict.lookup("source")) @@ -148,10 +165,26 @@ int main(int argc, char *argv[]) ( dict.lookup("source"), mesh, - dict.subDict("sourceDict") + dict.subDict("sourceInfo") ); - source().applyToSet(action, currentSet()); + // Backup current set. + autoPtr oldSet + ( + topoSet::New + ( + setType, + mesh, + currentSet().name() + "_old2", + currentSet() + ) + ); + + currentSet().clear(); + source().applyToSet(topoSetSource::NEW, currentSet()); + + // Combine new value of currentSet with old one. + currentSet().subset(oldSet()); // Synchronize for coupled patches. currentSet().sync(mesh); currentSet().write(); diff --git a/applications/utilities/mesh/manipulation/topoSet/topoSetDict b/applications/utilities/mesh/manipulation/topoSet/topoSetDict index ff487c6e64..40afc5ecb9 100644 --- a/applications/utilities/mesh/manipulation/topoSet/topoSetDict +++ b/applications/utilities/mesh/manipulation/topoSet/topoSetDict @@ -301,31 +301,61 @@ FoamFile actions ( + // Example:pick up internal faces on outside of cellSet + // ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ + + // Load initial cellSet { name c0; type cellSet; action new; source labelToCell; - sourceDict + sourceInfo { value (12 13 56); } } + // Get all faces in cellSet { - name c0; + name f0; + type faceSet; + action new; + source cellToFace; + sourceInfo + { + set c0; + option all; + } + } + + // Determine inverse cellSet + { + name c1; + type cellSet; + action new; + source cellToCell; + sourceInfo + { + set c0; + } + } + { + name c1; type cellSet; action invert; } + // Keep in f0 all faces in c1 { - name c0; - type cellSet; - action delete; - source labelToCell; - sourceDict + name f0; + type faceSet; + action subset; + source cellToFace; + sourceInfo { - value (1 2 3); + set c1; + option all; } } ); diff --git a/tutorials/lagrangian/coalChemistryFoam/simplifiedSiwek/system/topoSetDict b/tutorials/lagrangian/coalChemistryFoam/simplifiedSiwek/system/topoSetDict index ccaf0363cd..814c5a8f9e 100644 --- a/tutorials/lagrangian/coalChemistryFoam/simplifiedSiwek/system/topoSetDict +++ b/tutorials/lagrangian/coalChemistryFoam/simplifiedSiwek/system/topoSetDict @@ -23,7 +23,7 @@ actions action new; source sphereToCell; - sourceDict + sourceInfo { centre ( 0.125 0.375 0.05 ); radius 0.005; diff --git a/tutorials/multiphase/cavitatingFoam/les/throttle/system/topoSetDict.1 b/tutorials/multiphase/cavitatingFoam/les/throttle/system/topoSetDict.1 index 1e1592ee39..99b65f210c 100644 --- a/tutorials/multiphase/cavitatingFoam/les/throttle/system/topoSetDict.1 +++ b/tutorials/multiphase/cavitatingFoam/les/throttle/system/topoSetDict.1 @@ -22,7 +22,7 @@ actions type cellSet; action new; source boxToCell; - sourceDict + sourceInfo { box (0.004 -0.001 -1) (0.012 0.001 1); } diff --git a/tutorials/multiphase/cavitatingFoam/les/throttle/system/topoSetDict.2 b/tutorials/multiphase/cavitatingFoam/les/throttle/system/topoSetDict.2 index ab0289c156..f0bc41c9b6 100644 --- a/tutorials/multiphase/cavitatingFoam/les/throttle/system/topoSetDict.2 +++ b/tutorials/multiphase/cavitatingFoam/les/throttle/system/topoSetDict.2 @@ -22,7 +22,7 @@ actions type cellSet; action new; source boxToCell; - sourceDict + sourceInfo { box (0.0045 -0.00075 -1) (0.0095 0.00075 1); } diff --git a/tutorials/multiphase/cavitatingFoam/les/throttle/system/topoSetDict.3 b/tutorials/multiphase/cavitatingFoam/les/throttle/system/topoSetDict.3 index 3e504e9aef..fd1ed7949f 100644 --- a/tutorials/multiphase/cavitatingFoam/les/throttle/system/topoSetDict.3 +++ b/tutorials/multiphase/cavitatingFoam/les/throttle/system/topoSetDict.3 @@ -22,7 +22,7 @@ actions type cellSet; action new; source boxToCell; - sourceDict + sourceInfo { box (0.00475 -0.000375 -1) (0.009 0.000375 1); } diff --git a/tutorials/multiphase/cavitatingFoam/les/throttle3D/system/topoSetDict.1 b/tutorials/multiphase/cavitatingFoam/les/throttle3D/system/topoSetDict.1 index cd2329f57d..5fb3df6565 100644 --- a/tutorials/multiphase/cavitatingFoam/les/throttle3D/system/topoSetDict.1 +++ b/tutorials/multiphase/cavitatingFoam/les/throttle3D/system/topoSetDict.1 @@ -22,7 +22,7 @@ actions type cellSet; action new; source boxToCell; - sourceDict + sourceInfo { box ( 0.004 -0.001 -1 ) ( 0.012 0.001 1 ); } diff --git a/tutorials/multiphase/cavitatingFoam/les/throttle3D/system/topoSetDict.2 b/tutorials/multiphase/cavitatingFoam/les/throttle3D/system/topoSetDict.2 index a8a80dff4d..59c77c8d37 100644 --- a/tutorials/multiphase/cavitatingFoam/les/throttle3D/system/topoSetDict.2 +++ b/tutorials/multiphase/cavitatingFoam/les/throttle3D/system/topoSetDict.2 @@ -22,7 +22,7 @@ actions type cellSet; action new; source boxToCell; - sourceDict + sourceInfo { box ( 0.0045 -0.00075 -1 ) ( 0.0095 0.00075 1 ); } diff --git a/tutorials/multiphase/cavitatingFoam/les/throttle3D/system/topoSetDict.3 b/tutorials/multiphase/cavitatingFoam/les/throttle3D/system/topoSetDict.3 index 67021ba219..1dcc0ebc3f 100644 --- a/tutorials/multiphase/cavitatingFoam/les/throttle3D/system/topoSetDict.3 +++ b/tutorials/multiphase/cavitatingFoam/les/throttle3D/system/topoSetDict.3 @@ -22,7 +22,7 @@ actions type cellSet; action new; source boxToCell; - sourceDict + sourceInfo { box ( 0.00475 -0.000375 -1 ) ( 0.009 0.000375 1 ); } diff --git a/tutorials/multiphase/cavitatingFoam/ras/throttle/system/topoSetDict b/tutorials/multiphase/cavitatingFoam/ras/throttle/system/topoSetDict index 30e3ea0006..e833aa533b 100644 --- a/tutorials/multiphase/cavitatingFoam/ras/throttle/system/topoSetDict +++ b/tutorials/multiphase/cavitatingFoam/ras/throttle/system/topoSetDict @@ -22,7 +22,7 @@ actions type cellSet; action new; source boxToCell; - sourceDict + sourceInfo { box ( 0.00475 -0.000375 -1 ) ( 0.009 0.000375 1 ) ; } diff --git a/tutorials/multiphase/cavitatingFoam/ras/throttle/system/topoSetDict.1 b/tutorials/multiphase/cavitatingFoam/ras/throttle/system/topoSetDict.1 index 01e4f46a66..cfb66b9b72 100644 --- a/tutorials/multiphase/cavitatingFoam/ras/throttle/system/topoSetDict.1 +++ b/tutorials/multiphase/cavitatingFoam/ras/throttle/system/topoSetDict.1 @@ -22,7 +22,7 @@ actions type cellSet; action new; source boxToCell; - sourceDict + sourceInfo { box ( 0.004 -0.001 -1 ) ( 0.012 0.001 1 ) ; } diff --git a/tutorials/multiphase/cavitatingFoam/ras/throttle/system/topoSetDict.2 b/tutorials/multiphase/cavitatingFoam/ras/throttle/system/topoSetDict.2 index 20bc81f6ba..d3cf8a3aeb 100644 --- a/tutorials/multiphase/cavitatingFoam/ras/throttle/system/topoSetDict.2 +++ b/tutorials/multiphase/cavitatingFoam/ras/throttle/system/topoSetDict.2 @@ -22,7 +22,7 @@ actions type cellSet; action new; source boxToCell; - sourceDict + sourceInfo { box ( 0.0045 -0.00075 -1 ) ( 0.0095 0.00075 1 ) ; } diff --git a/tutorials/multiphase/cavitatingFoam/ras/throttle/system/topoSetDict.3 b/tutorials/multiphase/cavitatingFoam/ras/throttle/system/topoSetDict.3 index 30e3ea0006..e833aa533b 100644 --- a/tutorials/multiphase/cavitatingFoam/ras/throttle/system/topoSetDict.3 +++ b/tutorials/multiphase/cavitatingFoam/ras/throttle/system/topoSetDict.3 @@ -22,7 +22,7 @@ actions type cellSet; action new; source boxToCell; - sourceDict + sourceInfo { box ( 0.00475 -0.000375 -1 ) ( 0.009 0.000375 1 ) ; } diff --git a/tutorials/multiphase/interDyMFoam/ras/floatingObject/system/topoSetDict b/tutorials/multiphase/interDyMFoam/ras/floatingObject/system/topoSetDict index c696d169b4..7fdf7ca03a 100644 --- a/tutorials/multiphase/interDyMFoam/ras/floatingObject/system/topoSetDict +++ b/tutorials/multiphase/interDyMFoam/ras/floatingObject/system/topoSetDict @@ -22,7 +22,7 @@ actions type cellSet; action new; source boxToCell; - sourceDict + sourceInfo { box (0.35 0.35 0.44) (0.65 0.65 0.56); } diff --git a/tutorials/multiphase/interFoam/MRFInterFoam/mixerVessel2D/system/topoSetDict b/tutorials/multiphase/interFoam/MRFInterFoam/mixerVessel2D/system/topoSetDict index b89e6319bf..a36ee3b31a 100644 --- a/tutorials/multiphase/interFoam/MRFInterFoam/mixerVessel2D/system/topoSetDict +++ b/tutorials/multiphase/interFoam/MRFInterFoam/mixerVessel2D/system/topoSetDict @@ -23,7 +23,7 @@ actions type cellSet; action new; source zoneToCell; - sourceDict + sourceInfo { name rotor; } diff --git a/tutorials/multiphase/interFoam/les/nozzleFlow2D/system/topoSetDict b/tutorials/multiphase/interFoam/les/nozzleFlow2D/system/topoSetDict index cf1a5033eb..e6dc5a0687 100644 --- a/tutorials/multiphase/interFoam/les/nozzleFlow2D/system/topoSetDict +++ b/tutorials/multiphase/interFoam/les/nozzleFlow2D/system/topoSetDict @@ -22,7 +22,7 @@ actions type cellSet; action new; source boxToCell; - sourceDict + sourceInfo { box ( 0 0 -2e-05 ) ( 0.0036 0.0003 2e-05 ); } diff --git a/tutorials/multiphase/interFoam/les/nozzleFlow2D/system/topoSetDict.1 b/tutorials/multiphase/interFoam/les/nozzleFlow2D/system/topoSetDict.1 index 5c87356b4a..02ae84ba2d 100644 --- a/tutorials/multiphase/interFoam/les/nozzleFlow2D/system/topoSetDict.1 +++ b/tutorials/multiphase/interFoam/les/nozzleFlow2D/system/topoSetDict.1 @@ -22,7 +22,7 @@ actions type cellSet; action new; source boxToCell; - sourceDict + sourceInfo { box ( 0 0 -2e-05 ) ( 0.0036 0.0008 4e-05 ) ; } diff --git a/tutorials/multiphase/interFoam/les/nozzleFlow2D/system/topoSetDict.2 b/tutorials/multiphase/interFoam/les/nozzleFlow2D/system/topoSetDict.2 index cf1a5033eb..e6dc5a0687 100644 --- a/tutorials/multiphase/interFoam/les/nozzleFlow2D/system/topoSetDict.2 +++ b/tutorials/multiphase/interFoam/les/nozzleFlow2D/system/topoSetDict.2 @@ -22,7 +22,7 @@ actions type cellSet; action new; source boxToCell; - sourceDict + sourceInfo { box ( 0 0 -2e-05 ) ( 0.0036 0.0003 2e-05 ); } From be8c67a242a8697417bd6c7253207429c8b668df Mon Sep 17 00:00:00 2001 From: graham Date: Tue, 11 May 2010 12:09:58 +0100 Subject: [PATCH 36/57] ENH: sixDoFRigidBodyDisplacement rho field handling. Removing rhoInf from uncoupledSixDoF... patch, not needed. Adding optional rhoName entry to sixDoF... so no rhoInf entry is needed for simulations that have a rho field, and require than a rhoInf value is read for those that don't. --- ...gidBodyDisplacementPointPatchVectorField.C | 20 +++++++++++++++---- ...gidBodyDisplacementPointPatchVectorField.H | 7 ++++++- ...gidBodyDisplacementPointPatchVectorField.C | 14 ++++--------- ...gidBodyDisplacementPointPatchVectorField.H | 5 ----- 4 files changed, 26 insertions(+), 20 deletions(-) diff --git a/src/postProcessing/functionObjects/forces/pointPatchFields/derived/sixDoFRigidBodyDisplacement/sixDoFRigidBodyDisplacementPointPatchVectorField.C b/src/postProcessing/functionObjects/forces/pointPatchFields/derived/sixDoFRigidBodyDisplacement/sixDoFRigidBodyDisplacementPointPatchVectorField.C index 554e482c21..ed771efa6f 100644 --- a/src/postProcessing/functionObjects/forces/pointPatchFields/derived/sixDoFRigidBodyDisplacement/sixDoFRigidBodyDisplacementPointPatchVectorField.C +++ b/src/postProcessing/functionObjects/forces/pointPatchFields/derived/sixDoFRigidBodyDisplacement/sixDoFRigidBodyDisplacementPointPatchVectorField.C @@ -49,7 +49,8 @@ sixDoFRigidBodyDisplacementPointPatchVectorField fixedValuePointPatchField(p, iF), motion_(), initialPoints_(p.localPoints()), - rhoInf_(1.0) + rhoInf_(1.0), + rhoName_("rho") {} @@ -63,8 +64,14 @@ sixDoFRigidBodyDisplacementPointPatchVectorField : fixedValuePointPatchField(p, iF, dict), motion_(dict), - rhoInf_(readScalar(dict.lookup("rhoInf"))) + rhoInf_(1.0), + rhoName_(dict.lookupOrDefault("rhoName", "rho")) { + if (rhoName_ == "rhoInf") + { + rhoInf_ = readScalar(dict.lookup("rhoInf")); + } + if (!dict.found("value")) { updateCoeffs(); @@ -93,7 +100,8 @@ sixDoFRigidBodyDisplacementPointPatchVectorField fixedValuePointPatchField(ptf, p, iF, mapper), motion_(ptf.motion_), initialPoints_(ptf.initialPoints_, mapper), - rhoInf_(ptf.rhoInf_) + rhoInf_(ptf.rhoInf_), + rhoName_(ptf.rhoName_) {} @@ -107,7 +115,8 @@ sixDoFRigidBodyDisplacementPointPatchVectorField fixedValuePointPatchField(ptf, iF), motion_(ptf.motion_), initialPoints_(ptf.initialPoints_), - rhoInf_(ptf.rhoInf_) + rhoInf_(ptf.rhoInf_), + rhoName_(ptf.rhoName_) {} @@ -160,6 +169,7 @@ void sixDoFRigidBodyDisplacementPointPatchVectorField::updateCoeffs() forcesDict.add("patches", wordList(1, ptPatch.name())); forcesDict.add("rhoInf", rhoInf_); + forcesDict.add("rhoName", rhoName_); forcesDict.add("CofR", motion_.centreOfMass()); forces f("forces", db(), forcesDict); @@ -200,6 +210,8 @@ void sixDoFRigidBodyDisplacementPointPatchVectorField::write(Ostream& os) const motion_.write(os); os.writeKeyword("rhoInf") << rhoInf_ << token::END_STATEMENT << nl; + os.writeKeyword("rhoName") + << rhoName_ << token::END_STATEMENT << nl; initialPoints_.writeEntry("initialPoints", os); writeEntry("value", os); } diff --git a/src/postProcessing/functionObjects/forces/pointPatchFields/derived/sixDoFRigidBodyDisplacement/sixDoFRigidBodyDisplacementPointPatchVectorField.H b/src/postProcessing/functionObjects/forces/pointPatchFields/derived/sixDoFRigidBodyDisplacement/sixDoFRigidBodyDisplacementPointPatchVectorField.H index fa30a7eff2..9c512ab9d3 100644 --- a/src/postProcessing/functionObjects/forces/pointPatchFields/derived/sixDoFRigidBodyDisplacement/sixDoFRigidBodyDisplacementPointPatchVectorField.H +++ b/src/postProcessing/functionObjects/forces/pointPatchFields/derived/sixDoFRigidBodyDisplacement/sixDoFRigidBodyDisplacementPointPatchVectorField.H @@ -60,9 +60,14 @@ class sixDoFRigidBodyDisplacementPointPatchVectorField pointField initialPoints_; //- Reference density required by the forces object for - // incompressible calculations + // incompressible calculations, required if rhoName == rhoInf scalar rhoInf_; + //- Name of density field, optional unless used for an + // incompressible simulation, when this needs to be specified + // as rhoInf + word rhoName_; + public: diff --git a/src/postProcessing/functionObjects/forces/pointPatchFields/derived/uncoupledSixDoFRigidBodyDisplacement/uncoupledSixDoFRigidBodyDisplacementPointPatchVectorField.C b/src/postProcessing/functionObjects/forces/pointPatchFields/derived/uncoupledSixDoFRigidBodyDisplacement/uncoupledSixDoFRigidBodyDisplacementPointPatchVectorField.C index f63607c99c..7b7537eec3 100644 --- a/src/postProcessing/functionObjects/forces/pointPatchFields/derived/uncoupledSixDoFRigidBodyDisplacement/uncoupledSixDoFRigidBodyDisplacementPointPatchVectorField.C +++ b/src/postProcessing/functionObjects/forces/pointPatchFields/derived/uncoupledSixDoFRigidBodyDisplacement/uncoupledSixDoFRigidBodyDisplacementPointPatchVectorField.C @@ -47,8 +47,7 @@ uncoupledSixDoFRigidBodyDisplacementPointPatchVectorField : fixedValuePointPatchField(p, iF), motion_(), - initialPoints_(p.localPoints()), - rhoInf_(1.0) + initialPoints_(p.localPoints()) {} @@ -61,8 +60,7 @@ uncoupledSixDoFRigidBodyDisplacementPointPatchVectorField ) : fixedValuePointPatchField(p, iF, dict), - motion_(dict), - rhoInf_(readScalar(dict.lookup("rhoInf"))) + motion_(dict) { if (!dict.found("value")) { @@ -91,8 +89,7 @@ uncoupledSixDoFRigidBodyDisplacementPointPatchVectorField : fixedValuePointPatchField(ptf, p, iF, mapper), motion_(ptf.motion_), - initialPoints_(ptf.initialPoints_, mapper), - rhoInf_(ptf.rhoInf_) + initialPoints_(ptf.initialPoints_, mapper) {} @@ -105,8 +102,7 @@ uncoupledSixDoFRigidBodyDisplacementPointPatchVectorField : fixedValuePointPatchField(ptf, iF), motion_(ptf.motion_), - initialPoints_(ptf.initialPoints_), - rhoInf_(ptf.rhoInf_) + initialPoints_(ptf.initialPoints_) {} @@ -182,8 +178,6 @@ void uncoupledSixDoFRigidBodyDisplacementPointPatchVectorField::write { pointPatchField::write(os); motion_.write(os); - os.writeKeyword("rhoInf") - << rhoInf_ << token::END_STATEMENT << nl; initialPoints_.writeEntry("initialPoints", os); writeEntry("value", os); } diff --git a/src/postProcessing/functionObjects/forces/pointPatchFields/derived/uncoupledSixDoFRigidBodyDisplacement/uncoupledSixDoFRigidBodyDisplacementPointPatchVectorField.H b/src/postProcessing/functionObjects/forces/pointPatchFields/derived/uncoupledSixDoFRigidBodyDisplacement/uncoupledSixDoFRigidBodyDisplacementPointPatchVectorField.H index 631c732a93..d5a17c09c7 100644 --- a/src/postProcessing/functionObjects/forces/pointPatchFields/derived/uncoupledSixDoFRigidBodyDisplacement/uncoupledSixDoFRigidBodyDisplacementPointPatchVectorField.H +++ b/src/postProcessing/functionObjects/forces/pointPatchFields/derived/uncoupledSixDoFRigidBodyDisplacement/uncoupledSixDoFRigidBodyDisplacementPointPatchVectorField.H @@ -59,11 +59,6 @@ class uncoupledSixDoFRigidBodyDisplacementPointPatchVectorField //- Initial positions of points on the patch pointField initialPoints_; - //- Reference density required by the forces object for - // incompressible calculations. Retained here to give - // dictionary compatibility with other sixDoF patches. - scalar rhoInf_; - public: From a0aa574dd221cb3770230e2662090c8a3bb30fe9 Mon Sep 17 00:00:00 2001 From: graham Date: Tue, 11 May 2010 16:28:05 +0100 Subject: [PATCH 37/57] ENH: sixDoFRigidBodyDisplacement. Adding g lookup from BC dict when not available from db. --- ...gidBodyDisplacementPointPatchVectorField.C | 74 +++++++++++++++---- ...gidBodyDisplacementPointPatchVectorField.H | 16 ++++ 2 files changed, 77 insertions(+), 13 deletions(-) diff --git a/src/postProcessing/functionObjects/forces/pointPatchFields/derived/sixDoFRigidBodyDisplacement/sixDoFRigidBodyDisplacementPointPatchVectorField.C b/src/postProcessing/functionObjects/forces/pointPatchFields/derived/sixDoFRigidBodyDisplacement/sixDoFRigidBodyDisplacementPointPatchVectorField.C index ed771efa6f..8b248991d5 100644 --- a/src/postProcessing/functionObjects/forces/pointPatchFields/derived/sixDoFRigidBodyDisplacement/sixDoFRigidBodyDisplacementPointPatchVectorField.C +++ b/src/postProcessing/functionObjects/forces/pointPatchFields/derived/sixDoFRigidBodyDisplacement/sixDoFRigidBodyDisplacementPointPatchVectorField.C @@ -50,7 +50,9 @@ sixDoFRigidBodyDisplacementPointPatchVectorField motion_(), initialPoints_(p.localPoints()), rhoInf_(1.0), - rhoName_("rho") + rhoName_("rho"), + lookupGravity_(-1), + g_(vector::zero) {} @@ -65,13 +67,22 @@ sixDoFRigidBodyDisplacementPointPatchVectorField fixedValuePointPatchField(p, iF, dict), motion_(dict), rhoInf_(1.0), - rhoName_(dict.lookupOrDefault("rhoName", "rho")) + rhoName_(dict.lookupOrDefault("rhoName", "rho")), + lookupGravity_(-1), + g_(vector::zero) { if (rhoName_ == "rhoInf") { rhoInf_ = readScalar(dict.lookup("rhoInf")); } + if (dict.found("g")) + { + lookupGravity_ = -2; + + g_ = dict.lookup("g"); + } + if (!dict.found("value")) { updateCoeffs(); @@ -101,7 +112,9 @@ sixDoFRigidBodyDisplacementPointPatchVectorField motion_(ptf.motion_), initialPoints_(ptf.initialPoints_, mapper), rhoInf_(ptf.rhoInf_), - rhoName_(ptf.rhoName_) + rhoName_(ptf.rhoName_), + lookupGravity_(ptf.lookupGravity_), + g_(ptf.g_) {} @@ -116,7 +129,9 @@ sixDoFRigidBodyDisplacementPointPatchVectorField motion_(ptf.motion_), initialPoints_(ptf.initialPoints_), rhoInf_(ptf.rhoInf_), - rhoName_(ptf.rhoName_) + rhoName_(ptf.rhoName_), + lookupGravity_(ptf.lookupGravity_), + g_(ptf.g_) {} @@ -155,6 +170,33 @@ void sixDoFRigidBodyDisplacementPointPatchVectorField::updateCoeffs() return; } + if (lookupGravity_ < 0) + { + if (db().foundObject("g")) + { + if (lookupGravity_ == -2) + { + FatalErrorIn + ( + "void sixDoFRigidBodyDisplacementPointPatchVectorField" + "::updateCoeffs()" + ) + << "Specifying the value of g in this boundary condition " + << "when g is available from the database is considered " + << "a fatal error to avoid the possibility of inconsistency" + << exit(FatalError); + } + else + { + lookupGravity_ = 1; + } + } + else + { + lookupGravity_ = 0; + } + } + const polyMesh& mesh = this->dimensionedInternalField().mesh()(); const Time& t = mesh.time(); const pointPatch& ptPatch = this->patch(); @@ -178,19 +220,17 @@ void sixDoFRigidBodyDisplacementPointPatchVectorField::updateCoeffs() // Get the forces on the patch faces at the current positions - vector gravity = vector::zero; - - if (db().foundObject("g")) + if (lookupGravity_ == 1) { uniformDimensionedVectorField g = db().lookupObject("g"); - gravity = g.value(); + g_ = g.value(); } motion_.updateForce ( - fm.first().first() + fm.first().second() + gravity*motion_.mass(), + fm.first().first() + fm.first().second() + g_*motion_.mass(), fm.second().first() + fm.second().second(), t.deltaTValue() ); @@ -207,12 +247,20 @@ void sixDoFRigidBodyDisplacementPointPatchVectorField::updateCoeffs() void sixDoFRigidBodyDisplacementPointPatchVectorField::write(Ostream& os) const { pointPatchField::write(os); + + os.writeKeyword("rhoInf") << rhoInf_ << token::END_STATEMENT << nl; + + os.writeKeyword("rhoName") << rhoName_ << token::END_STATEMENT << nl; + + if (lookupGravity_ == 0 || lookupGravity_ == -2) + { + os.writeKeyword("g") << g_ << token::END_STATEMENT << nl; + } + motion_.write(os); - os.writeKeyword("rhoInf") - << rhoInf_ << token::END_STATEMENT << nl; - os.writeKeyword("rhoName") - << rhoName_ << token::END_STATEMENT << nl; + initialPoints_.writeEntry("initialPoints", os); + writeEntry("value", os); } diff --git a/src/postProcessing/functionObjects/forces/pointPatchFields/derived/sixDoFRigidBodyDisplacement/sixDoFRigidBodyDisplacementPointPatchVectorField.H b/src/postProcessing/functionObjects/forces/pointPatchFields/derived/sixDoFRigidBodyDisplacement/sixDoFRigidBodyDisplacementPointPatchVectorField.H index 9c512ab9d3..ca1a3715e4 100644 --- a/src/postProcessing/functionObjects/forces/pointPatchFields/derived/sixDoFRigidBodyDisplacement/sixDoFRigidBodyDisplacementPointPatchVectorField.H +++ b/src/postProcessing/functionObjects/forces/pointPatchFields/derived/sixDoFRigidBodyDisplacement/sixDoFRigidBodyDisplacementPointPatchVectorField.H @@ -68,6 +68,22 @@ class sixDoFRigidBodyDisplacementPointPatchVectorField // as rhoInf word rhoName_; + //- State of gravity lookup: + // -1 = not determined yet, as the BC may be instantiated before g has + // been read into the db yet. Determination deferred until first + // call to updateCoeffs. A g keyword was not supplied to the + // dictionary. + // -2 = as for -1, but a gravity value was specified in the dictionary, + // specifying a value in the dictionary is considered a fatal + // error if g is available from the db. + // 0 = Use this boundary condition's own value of gravity, as not + // available from the db. + // 1 = Lookup gravity from db. + label lookupGravity_; + + //- Gravity vector to store when not available from the db + vector g_; + public: From 925202da2e5e0381b6222a2be018bce79c05e6df Mon Sep 17 00:00:00 2001 From: mattijs Date: Wed, 12 May 2010 15:52:19 +0100 Subject: [PATCH 38/57] ENH: have -noSync option to prevent topoSet/setSet automatically syncing coupled faces. --- .../utilities/mesh/manipulation/setSet/setSet.C | 12 ++++++++++-- .../utilities/mesh/manipulation/topoSet/topoSet.C | 11 +++++++++-- 2 files changed, 19 insertions(+), 4 deletions(-) diff --git a/applications/utilities/mesh/manipulation/setSet/setSet.C b/applications/utilities/mesh/manipulation/setSet/setSet.C index 54ff169f16..308319f2e6 100644 --- a/applications/utilities/mesh/manipulation/setSet/setSet.C +++ b/applications/utilities/mesh/manipulation/setSet/setSet.C @@ -439,6 +439,7 @@ bool doCommand const word& actionName, const bool writeVTKFile, const bool writeCurrentTime, + const bool noSync, Istream& is ) { @@ -581,7 +582,7 @@ bool doCommand // Set will have been modified. // Synchronize for coupled patches. - currentSet.sync(mesh); + if (!noSync) currentSet.sync(mesh); // Write if (writeVTKFile) @@ -834,6 +835,11 @@ int main(int argc, char *argv[]) "file", "process in batch mode, using input from specified file" ); + argList::addBoolOption + ( + "noSync", + "do not synchronise selection across coupled patches" + ); # include "setRootCase.H" # include "createTime.H" @@ -842,6 +848,7 @@ int main(int argc, char *argv[]) const bool writeVTK = !args.optionFound("noVTK"); const bool loop = args.optionFound("loop"); const bool batch = args.optionFound("batch"); + const bool noSync = args.optionFound("noSync"); if (loop && !batch) { @@ -1008,7 +1015,8 @@ int main(int argc, char *argv[]) setName, actionName, writeVTK, - loop, // if in looping mode dump sets to time directory + loop, // if in looping mode dump sets to time directory + noSync, is ); diff --git a/applications/utilities/mesh/manipulation/topoSet/topoSet.C b/applications/utilities/mesh/manipulation/topoSet/topoSet.C index 18466603b3..6f1c9957e4 100644 --- a/applications/utilities/mesh/manipulation/topoSet/topoSet.C +++ b/applications/utilities/mesh/manipulation/topoSet/topoSet.C @@ -49,11 +49,18 @@ int main(int argc, char *argv[]) "specify an alternative dictionary for the topoSet dictionary" ); # include "addRegionOption.H" + argList::addBoolOption + ( + "noSync", + "do not synchronise selection across coupled patches" + ); # include "setRootCase.H" # include "createTime.H" # include "createNamedPolyMesh.H" + const bool noSync = args.optionFound("noSync"); + const word dictName("topoSetDict"); fileName dictPath = dictName; @@ -152,7 +159,7 @@ int main(int argc, char *argv[]) source().applyToSet(action, currentSet()); // Synchronize for coupled patches. - currentSet().sync(mesh); + if (!noSync) currentSet().sync(mesh); currentSet().write(); } break; @@ -186,7 +193,7 @@ int main(int argc, char *argv[]) // Combine new value of currentSet with old one. currentSet().subset(oldSet()); // Synchronize for coupled patches. - currentSet().sync(mesh); + if (!noSync) currentSet().sync(mesh); currentSet().write(); } break; From 322ccff48fd0a031d7eee01f00b2d9460aaa12dd Mon Sep 17 00:00:00 2001 From: mattijs Date: Wed, 12 May 2010 15:52:50 +0100 Subject: [PATCH 39/57] BUG: interpolateXY was not creating correct type. Only worked for scalarField. --- src/OpenFOAM/interpolations/interpolateXY/interpolateXY.C | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/src/OpenFOAM/interpolations/interpolateXY/interpolateXY.C b/src/OpenFOAM/interpolations/interpolateXY/interpolateXY.C index 5c45e33bd3..45cff57a7a 100644 --- a/src/OpenFOAM/interpolations/interpolateXY/interpolateXY.C +++ b/src/OpenFOAM/interpolations/interpolateXY/interpolateXY.C @@ -41,7 +41,7 @@ Field interpolateXY const Field& yOld ) { - scalarField yNew(xNew.size()); + Field yNew(xNew.size()); forAll(xNew, i) { From 9331bd89fa510334a49bcd402eef1bfd9a7031c2 Mon Sep 17 00:00:00 2001 From: mattijs Date: Wed, 12 May 2010 15:53:36 +0100 Subject: [PATCH 40/57] ENH: motionSmoother: allow certain tolerance when comparing coupled data --- src/dynamicMesh/motionSmoother/motionSmoother.C | 6 ++++-- src/dynamicMesh/motionSmoother/motionSmoother.H | 3 ++- src/dynamicMesh/motionSmoother/motionSmootherTemplates.C | 2 ++ 3 files changed, 8 insertions(+), 3 deletions(-) diff --git a/src/dynamicMesh/motionSmoother/motionSmoother.C b/src/dynamicMesh/motionSmoother/motionSmoother.C index 1f94c7582a..5c3d79a978 100644 --- a/src/dynamicMesh/motionSmoother/motionSmoother.C +++ b/src/dynamicMesh/motionSmoother/motionSmoother.C @@ -774,7 +774,8 @@ Foam::tmp Foam::motionSmoother::movePoints newPoints, minEqOp(), // combine op vector(GREAT,GREAT,GREAT), // null - true // separation + true, // separation + 1E-6*mesh_.bounds().mag() ); } @@ -925,7 +926,8 @@ bool Foam::motionSmoother::scaleMesh totalDisplacement, maxMagEqOp(), vector::zero, // null value - false // separation + false, // separation + 1E-6*mesh_.bounds().mag() ); } diff --git a/src/dynamicMesh/motionSmoother/motionSmoother.H b/src/dynamicMesh/motionSmoother/motionSmoother.H index f5df37e677..ee306dd3c9 100644 --- a/src/dynamicMesh/motionSmoother/motionSmoother.H +++ b/src/dynamicMesh/motionSmoother/motionSmoother.H @@ -208,7 +208,8 @@ class motionSmoother const Field&, const CombineOp& cop, const Type& zero, - const bool separation + const bool separation, + const scalar maxMag ) const; //- Assemble tensors for multi-patch constraints diff --git a/src/dynamicMesh/motionSmoother/motionSmootherTemplates.C b/src/dynamicMesh/motionSmoother/motionSmootherTemplates.C index aec66f951f..97d125318c 100644 --- a/src/dynamicMesh/motionSmoother/motionSmootherTemplates.C +++ b/src/dynamicMesh/motionSmoother/motionSmootherTemplates.C @@ -293,6 +293,7 @@ void Foam::motionSmoother::testSyncField const CombineOp& cop, const Type& zero, const bool separation + const scalar maxMag ) const { if (debug) @@ -315,6 +316,7 @@ void Foam::motionSmoother::testSyncField forAll(syncedFld, i) { if (syncedFld[i] != fld[i]) + if (mag(syncedFld[i] - fld[i]) > maxMag) { FatalErrorIn ( From 56cf9169af38bf1e326b4d7007946d48653262b9 Mon Sep 17 00:00:00 2001 From: mattijs Date: Wed, 12 May 2010 15:54:19 +0100 Subject: [PATCH 41/57] STYLE: basicSymmetryFvPatchField : 80char line length. --- .../basic/basicSymmetry/basicSymmetryFvPatchField.H | 3 ++- 1 file changed, 2 insertions(+), 1 deletion(-) diff --git a/src/finiteVolume/fields/fvPatchFields/basic/basicSymmetry/basicSymmetryFvPatchField.H b/src/finiteVolume/fields/fvPatchFields/basic/basicSymmetry/basicSymmetryFvPatchField.H index da3dc7530c..1dfc537dd0 100644 --- a/src/finiteVolume/fields/fvPatchFields/basic/basicSymmetry/basicSymmetryFvPatchField.H +++ b/src/finiteVolume/fields/fvPatchFields/basic/basicSymmetry/basicSymmetryFvPatchField.H @@ -76,7 +76,8 @@ public: const dictionary& ); - //- Construct by mapping given basicSymmetryFvPatchField onto a new patch + //- Construct by mapping given basicSymmetryFvPatchField onto a new + // patch basicSymmetryFvPatchField ( const basicSymmetryFvPatchField&, From 4bf6f2ecd1ddecf273298e4131127d552b5b3903 Mon Sep 17 00:00:00 2001 From: mattijs Date: Wed, 12 May 2010 15:54:51 +0100 Subject: [PATCH 42/57] STYLE: meshRefinementBaffles.C additional comment --- .../autoMesh/autoHexMesh/meshRefinement/meshRefinementBaffles.C | 2 ++ 1 file changed, 2 insertions(+) diff --git a/src/mesh/autoMesh/autoHexMesh/meshRefinement/meshRefinementBaffles.C b/src/mesh/autoMesh/autoHexMesh/meshRefinement/meshRefinementBaffles.C index 0d9cecd039..911c370cfd 100644 --- a/src/mesh/autoMesh/autoHexMesh/meshRefinement/meshRefinementBaffles.C +++ b/src/mesh/autoMesh/autoHexMesh/meshRefinement/meshRefinementBaffles.C @@ -1234,6 +1234,7 @@ void Foam::meshRefinement::findCellZoneTopo { label surfI = namedSurfaceIndex[faceI]; + // Connected even if no cellZone defined for surface if (surfI != -1) { // Calculate region to zone from cellRegions on either side @@ -1286,6 +1287,7 @@ void Foam::meshRefinement::findCellZoneTopo label surfI = namedSurfaceIndex[faceI]; + // Connected even if no cellZone defined for surface if (surfI != -1) { bool changedCell = calcRegionToZone From b56a533cf25a1dde420bc40356ead00e5c5925be Mon Sep 17 00:00:00 2001 From: mattijs Date: Wed, 12 May 2010 15:59:40 +0100 Subject: [PATCH 43/57] STYLE: chtMultiRegion*Foam: remove unused/hardly rhosCps. --- .../chtMultiRegionSimpleFoam/solid/createSolidFields.H | 7 ------- .../chtMultiRegionFoam/solid/createSolidFields.H | 7 ------- .../chtMultiRegionFoam/solid/solidRegionDiffusionNo.H | 2 +- 3 files changed, 1 insertion(+), 15 deletions(-) diff --git a/applications/solvers/heatTransfer/chtMultiRegionFoam/chtMultiRegionSimpleFoam/solid/createSolidFields.H b/applications/solvers/heatTransfer/chtMultiRegionFoam/chtMultiRegionSimpleFoam/solid/createSolidFields.H index 3361a89add..8f109a3f82 100644 --- a/applications/solvers/heatTransfer/chtMultiRegionFoam/chtMultiRegionSimpleFoam/solid/createSolidFields.H +++ b/applications/solvers/heatTransfer/chtMultiRegionFoam/chtMultiRegionSimpleFoam/solid/createSolidFields.H @@ -1,7 +1,6 @@ // Initialise solid field pointer lists PtrList rhos(solidRegions.size()); PtrList cps(solidRegions.size()); - PtrList rhosCps(solidRegions.size()); PtrList Ks(solidRegions.size()); PtrList Ts(solidRegions.size()); @@ -47,12 +46,6 @@ ) ); - rhosCps.set - ( - i, - new volScalarField("rhosCps", rhos[i]*cps[i]) - ); - Info<< " Adding to Ks\n" << endl; Ks.set ( diff --git a/applications/solvers/heatTransfer/chtMultiRegionFoam/solid/createSolidFields.H b/applications/solvers/heatTransfer/chtMultiRegionFoam/solid/createSolidFields.H index 3361a89add..8f109a3f82 100644 --- a/applications/solvers/heatTransfer/chtMultiRegionFoam/solid/createSolidFields.H +++ b/applications/solvers/heatTransfer/chtMultiRegionFoam/solid/createSolidFields.H @@ -1,7 +1,6 @@ // Initialise solid field pointer lists PtrList rhos(solidRegions.size()); PtrList cps(solidRegions.size()); - PtrList rhosCps(solidRegions.size()); PtrList Ks(solidRegions.size()); PtrList Ts(solidRegions.size()); @@ -47,12 +46,6 @@ ) ); - rhosCps.set - ( - i, - new volScalarField("rhosCps", rhos[i]*cps[i]) - ); - Info<< " Adding to Ks\n" << endl; Ks.set ( diff --git a/applications/solvers/heatTransfer/chtMultiRegionFoam/solid/solidRegionDiffusionNo.H b/applications/solvers/heatTransfer/chtMultiRegionFoam/solid/solidRegionDiffusionNo.H index c2e5668a68..4b09671de2 100644 --- a/applications/solvers/heatTransfer/chtMultiRegionFoam/solid/solidRegionDiffusionNo.H +++ b/applications/solvers/heatTransfer/chtMultiRegionFoam/solid/solidRegionDiffusionNo.H @@ -8,7 +8,7 @@ ( solidRegions[regionI], runTime, - rhosCps[regionI], + rhos[regionI]*cps[regionI], Ks[regionI] ), DiNum From 1ed3261f33cb60c1d76efcc14b8eed67a1f9bfb1 Mon Sep 17 00:00:00 2001 From: mattijs Date: Wed, 12 May 2010 16:04:30 +0100 Subject: [PATCH 44/57] COMP: motionSmootherTemplates.C : missing comma. --- src/dynamicMesh/motionSmoother/motionSmootherTemplates.C | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/src/dynamicMesh/motionSmoother/motionSmootherTemplates.C b/src/dynamicMesh/motionSmoother/motionSmootherTemplates.C index 97d125318c..1660a29e18 100644 --- a/src/dynamicMesh/motionSmoother/motionSmootherTemplates.C +++ b/src/dynamicMesh/motionSmoother/motionSmootherTemplates.C @@ -292,7 +292,7 @@ void Foam::motionSmoother::testSyncField const Field& fld, const CombineOp& cop, const Type& zero, - const bool separation + const bool separation, const scalar maxMag ) const { From 3d434390722c221411f7943bdc040fbf0755628d Mon Sep 17 00:00:00 2001 From: graham Date: Thu, 13 May 2010 16:00:42 +0100 Subject: [PATCH 45/57] ENH: Better output formatting, directly outputting sixDoFRigidBodyDisplacement BC entries. --- .../surface/surfaceInertia/surfaceInertia.C | 17 +++++++++++++---- 1 file changed, 13 insertions(+), 4 deletions(-) diff --git a/applications/utilities/surface/surfaceInertia/surfaceInertia.C b/applications/utilities/surface/surfaceInertia/surfaceInertia.C index 0819c4bbb6..c68608feda 100644 --- a/applications/utilities/surface/surfaceInertia/surfaceInertia.C +++ b/applications/utilities/surface/surfaceInertia/surfaceInertia.C @@ -591,18 +591,27 @@ int main(int argc, char *argv[]) if (showTransform) { - Info<< "Transform tensor from reference state (Q). " << nl + Info<< "Transform tensor from reference state (orientation):" << nl + << eVec.T() << nl << "Rotation tensor required to transform " "from the body reference frame to the global " "reference frame, i.e.:" << nl - << "globalVector = Q & bodyLocalVector" - << nl << eVec.T() + << "globalVector = orientation & bodyLocalVector" + << endl; + + Info<< nl + << "Entries for sixDoFRigidBodyDisplacement boundary condition:" + << nl + << " mass " << m << token::END_STATEMENT << nl + << " centreOfMass " << cM << token::END_STATEMENT << nl + << " momentOfInertia " << eVal << token::END_STATEMENT << nl + << " orientation " << eVec.T() << token::END_STATEMENT << endl; } if (calcAroundRefPt) { - Info << "Inertia tensor relative to " << refPt << ": " + Info<< nl << "Inertia tensor relative to " << refPt << ": " << nl << applyParallelAxisTheorem(m, cM, J, refPt) << endl; } From 4107c09b8a6add0a42dd1c3ae49c1cd8e111c5d9 Mon Sep 17 00:00:00 2001 From: andy Date: Fri, 14 May 2010 12:39:07 +0100 Subject: [PATCH 46/57] BUG: aded missing dt in COxidationKineticDiffusionLimitedRate model --- .../COxidationKineticDiffusionLimitedRate.C | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/src/lagrangian/coalCombustion/submodels/surfaceReactionModel/COxidationKineticDiffusionLimitedRate/COxidationKineticDiffusionLimitedRate.C b/src/lagrangian/coalCombustion/submodels/surfaceReactionModel/COxidationKineticDiffusionLimitedRate/COxidationKineticDiffusionLimitedRate.C index f6f7b79c9a..3fb7d18879 100644 --- a/src/lagrangian/coalCombustion/submodels/surfaceReactionModel/COxidationKineticDiffusionLimitedRate/COxidationKineticDiffusionLimitedRate.C +++ b/src/lagrangian/coalCombustion/submodels/surfaceReactionModel/COxidationKineticDiffusionLimitedRate/COxidationKineticDiffusionLimitedRate.C @@ -140,7 +140,7 @@ Foam::scalar Foam::COxidationKineticDiffusionLimitedRate::calculate const scalar Ap = constant::mathematical::pi*sqr(d); // Change in C mass [kg] - scalar dmC = Ap*rhoc*specie::RR*Tc*YO2/WO2_*D0*Rk/(D0 + Rk); + scalar dmC = Ap*rhoc*specie::RR*Tc*YO2/WO2_*D0*Rk/(D0 + Rk)*dt; // Limit mass transfer by availability of C dmC = min(mass*fComb, dmC); From 1638a4ac2f6fd19d5c027428be69c8536d14cbc5 Mon Sep 17 00:00:00 2001 From: andy Date: Fri, 14 May 2010 12:39:39 +0100 Subject: [PATCH 47/57] STYLE: enforcing 80 chars width --- .../COxidationDiffusionLimitedRate.C | 3 ++- 1 file changed, 2 insertions(+), 1 deletion(-) diff --git a/src/lagrangian/coalCombustion/submodels/surfaceReactionModel/COxidationDiffusionLimitedRate/COxidationDiffusionLimitedRate.C b/src/lagrangian/coalCombustion/submodels/surfaceReactionModel/COxidationDiffusionLimitedRate/COxidationDiffusionLimitedRate.C index 67bd87f76b..71e40a0a64 100644 --- a/src/lagrangian/coalCombustion/submodels/surfaceReactionModel/COxidationDiffusionLimitedRate/COxidationDiffusionLimitedRate.C +++ b/src/lagrangian/coalCombustion/submodels/surfaceReactionModel/COxidationDiffusionLimitedRate/COxidationDiffusionLimitedRate.C @@ -123,7 +123,8 @@ Foam::scalar Foam::COxidationDiffusionLimitedRate::calculate const scalar YO2 = this->owner().mcCarrierThermo().Y(O2GlobalId_)[cellI]; // Change in C mass [kg] - scalar dmC = 4.0*constant::mathematical::pi*d*D_*YO2*Tc*rhoc/(Sb_*(T + Tc))*dt; + scalar dmC = + 4.0*constant::mathematical::pi*d*D_*YO2*Tc*rhoc/(Sb_*(T + Tc))*dt; // Limit mass transfer by availability of C dmC = min(mass*fComb, dmC); From 4b00c01d0c85b09da60a856feaabf08ae961aabd Mon Sep 17 00:00:00 2001 From: andy Date: Fri, 14 May 2010 12:47:32 +0100 Subject: [PATCH 48/57] ENH: added interpolateSplineXY templated function, and updated tabulated6DoFMotion --- .../interpolateSplineXY/interpolateSplineXY.C | 126 ++++++++++++++++++ .../interpolateSplineXY/interpolateSplineXY.H | 84 ++++++++++++ .../tabulated6DoFMotion/tabulated6DoFMotion.C | 4 +- 3 files changed, 212 insertions(+), 2 deletions(-) create mode 100644 src/OpenFOAM/interpolations/interpolateSplineXY/interpolateSplineXY.C create mode 100644 src/OpenFOAM/interpolations/interpolateSplineXY/interpolateSplineXY.H diff --git a/src/OpenFOAM/interpolations/interpolateSplineXY/interpolateSplineXY.C b/src/OpenFOAM/interpolations/interpolateSplineXY/interpolateSplineXY.C new file mode 100644 index 0000000000..2fa74142cd --- /dev/null +++ b/src/OpenFOAM/interpolations/interpolateSplineXY/interpolateSplineXY.C @@ -0,0 +1,126 @@ +/*---------------------------------------------------------------------------*\ + ========= | + \\ / F ield | OpenFOAM: The Open Source CFD Toolbox + \\ / O peration | + \\ / A nd | Copyright (C) 2010-2010 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 + +\*---------------------------------------------------------------------------*/ + +#include "interpolateSplineXY.H" +#include "primitiveFields.H" + +// * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * // + +template +Foam::Field Foam::interpolateSplineXY +( + const scalarField& xNew, + const scalarField& xOld, + const Field& yOld +) +{ + Field yNew(xNew.size()); + + forAll(xNew, i) + { + yNew[i] = interpolateSmoothXY(xNew[i], xOld, yOld); + } + + return yNew; +} + + +template +Type Foam::interpolateSplineXY +( + const scalar x, + const scalarField& xOld, + const Field& yOld +) +{ + label n = xOld.size(); + + // early exit if out of bounds or only one value + if (n == 1 || x < xOld[0]) + { + return yOld[0]; + } + if (x > xOld[n - 1]) + { + return yOld[n - 1]; + } + + // linear interpolation if only two values + if (n == 2) + { + return (x - xOld[0])/(xOld[1] - xOld[0])*(yOld[1] - yOld[0]) + yOld[0]; + } + + // find bounding knots + label hi = 0; + while (hi < n && xOld[hi] < x) + { + hi++; + } + + label lo = hi - 1; + + const Type& y1 = yOld[lo]; + const Type& y2 = yOld[hi]; + + Type y0; + if (lo == 0) + { + y0 = 2*y1 - y2; + } + else + { + y0 = yOld[lo - 1]; + } + + Type y3; + if (hi + 1 == n) + { + y3 = 2*y2 - y1; + } + else + { + y3 = yOld[hi + 1]; + } + + // weighting + scalar mu = (x - xOld[lo])/(xOld[hi] - xOld[lo]); + + // interpolate + return + 0.5 + *( + 2*y1 + + mu + *( + -y0 + y2 + + mu*((2*y0 - 5*y1 + 4*y2 - y3) + mu*(-y0 + 3*y1 - 3*y2 + y3)) + ) + ); +} + + +// ************************************************************************* // diff --git a/src/OpenFOAM/interpolations/interpolateSplineXY/interpolateSplineXY.H b/src/OpenFOAM/interpolations/interpolateSplineXY/interpolateSplineXY.H new file mode 100644 index 0000000000..7d06169ea8 --- /dev/null +++ b/src/OpenFOAM/interpolations/interpolateSplineXY/interpolateSplineXY.H @@ -0,0 +1,84 @@ +/*---------------------------------------------------------------------------*\ + ========= | + \\ / F ield | OpenFOAM: The Open Source CFD Toolbox + \\ / O peration | + \\ / A nd | Copyright (C) 2010-2010 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 + +InNamespace + Foam + +Description + Interpolates y values from one curve to another with a different x + distribution. + + Uses Catmull-Rom spline interpolation between points. + +SourceFiles + interpolateSplineXY.C + +\*---------------------------------------------------------------------------*/ + +#ifndef interpolateSplineXY_H +#define interpolateSplineXY_H + +#include "scalar.H" +#include "primitiveFieldsFwd.H" + +// * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * // + +namespace Foam +{ + +// * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * // + +template +Field interpolateSplineXY +( + const scalarField& xNew, + const scalarField& xOld, + const Field& yOld +); + + +template +Type interpolateSplineXY +( + const scalar x, + const scalarField& xOld, + const Field& yOld +); + + +// * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * // + +} // End namespace Foam + +// * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * // + +#ifdef NoRepository +# include "interpolateSplineXY.C" +#endif + +// * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * // + +#endif + +// ************************************************************************* // diff --git a/src/dynamicFvMesh/solidBodyMotionFvMesh/solidBodyMotionFunctions/tabulated6DoFMotion/tabulated6DoFMotion.C b/src/dynamicFvMesh/solidBodyMotionFvMesh/solidBodyMotionFunctions/tabulated6DoFMotion/tabulated6DoFMotion.C index b4d6bf06d2..38ef552948 100644 --- a/src/dynamicFvMesh/solidBodyMotionFvMesh/solidBodyMotionFunctions/tabulated6DoFMotion/tabulated6DoFMotion.C +++ b/src/dynamicFvMesh/solidBodyMotionFvMesh/solidBodyMotionFunctions/tabulated6DoFMotion/tabulated6DoFMotion.C @@ -27,7 +27,7 @@ License #include "addToRunTimeSelectionTable.H" #include "Tuple2.H" #include "IFstream.H" -#include "interpolateXY.H" +#include "interpolateSplineXY.H" #include "mathematicalConstants.H" using namespace Foam::constant::mathematical; @@ -98,7 +98,7 @@ Foam::solidBodyMotionFunctions::tabulated6DoFMotion::transformation() const << exit(FatalError); } - translationRotationVectors TRV = interpolateXY + translationRotationVectors TRV = interpolateSplineXY ( t, times_, From 7fc436858659f6a0d4814ca9b067a92d03614d2a Mon Sep 17 00:00:00 2001 From: graham Date: Fri, 14 May 2010 17:54:58 +0100 Subject: [PATCH 49/57] ENH: New pimpleDyMFoam tutorial of fluttering wing, demonstrating the sixDoFRigidBodyDisplacement BC restraints and constraints. --- .../pimpleDyMFoam/wingFlutter/Allclean | 16 + .../pimpleDyMFoam/wingFlutter/Allrun | 29 + .../wingFlutter2D_pimpleDyMFoam/0.org/U | 45 + .../0.org/include/fixedInlet | 15 + .../0.org/include/frontBackTopBottomPatches | 24 + .../0.org/include/initialConditions | 15 + .../wingFlutter2D_pimpleDyMFoam/0.org/k | 44 + .../wingFlutter2D_pimpleDyMFoam/0.org/nut | 38 + .../wingFlutter2D_pimpleDyMFoam/0.org/omega | 44 + .../wingFlutter2D_pimpleDyMFoam/0.org/p | 44 + .../0.org/pointDisplacement | 120 ++ .../constant/RASProperties | 25 + .../constant/dynamicMeshDict | 26 + .../constant/polyMesh/boundary | 58 + .../constant/transportProperties | 22 + .../constant/turbulenceProperties | 21 + .../system/controlDict | 72 ++ .../system/decomposeParDict | 45 + .../system/fvSchemes | 59 + .../system/fvSolution | 88 ++ .../wingFlutter/wingFlutter2D_simpleFoam/0/U | 45 + .../0/include/fixedInlet | 15 + .../0/include/frontBackTopBottomPatches | 24 + .../0/include/initialConditions | 15 + .../wingFlutter/wingFlutter2D_simpleFoam/0/k | 44 + .../wingFlutter2D_simpleFoam/0/nut | 38 + .../wingFlutter2D_simpleFoam/0/omega | 44 + .../wingFlutter/wingFlutter2D_simpleFoam/0/p | 44 + .../constant/RASProperties | 25 + .../constant/extrudeProperties | 47 + .../constant/polyMesh/boundary | 58 + .../constant/transportProperties | 22 + .../system/controlDict | 67 ++ .../system/createPatchDict | 49 + .../wingFlutter2D_simpleFoam/system/fvSchemes | 59 + .../system/fvSolution | 79 ++ .../constant/polyMesh/blockMeshDict | 74 ++ .../constant/polyMesh/boundary | 58 + .../constant/triSurface/wing_5degrees.obj | 1054 +++++++++++++++++ .../system/controlDict | 50 + .../system/decomposeParDict | 45 + .../system/fvSchemes | 70 ++ .../system/fvSolution | 51 + .../system/snappyHexMeshDict | 326 +++++ 44 files changed, 3253 insertions(+) create mode 100755 tutorials/incompressible/pimpleDyMFoam/wingFlutter/Allclean create mode 100755 tutorials/incompressible/pimpleDyMFoam/wingFlutter/Allrun create mode 100644 tutorials/incompressible/pimpleDyMFoam/wingFlutter/wingFlutter2D_pimpleDyMFoam/0.org/U create mode 100644 tutorials/incompressible/pimpleDyMFoam/wingFlutter/wingFlutter2D_pimpleDyMFoam/0.org/include/fixedInlet create mode 100644 tutorials/incompressible/pimpleDyMFoam/wingFlutter/wingFlutter2D_pimpleDyMFoam/0.org/include/frontBackTopBottomPatches create mode 100644 tutorials/incompressible/pimpleDyMFoam/wingFlutter/wingFlutter2D_pimpleDyMFoam/0.org/include/initialConditions create mode 100644 tutorials/incompressible/pimpleDyMFoam/wingFlutter/wingFlutter2D_pimpleDyMFoam/0.org/k create mode 100644 tutorials/incompressible/pimpleDyMFoam/wingFlutter/wingFlutter2D_pimpleDyMFoam/0.org/nut create mode 100644 tutorials/incompressible/pimpleDyMFoam/wingFlutter/wingFlutter2D_pimpleDyMFoam/0.org/omega create mode 100644 tutorials/incompressible/pimpleDyMFoam/wingFlutter/wingFlutter2D_pimpleDyMFoam/0.org/p create mode 100644 tutorials/incompressible/pimpleDyMFoam/wingFlutter/wingFlutter2D_pimpleDyMFoam/0.org/pointDisplacement create mode 100644 tutorials/incompressible/pimpleDyMFoam/wingFlutter/wingFlutter2D_pimpleDyMFoam/constant/RASProperties create mode 100644 tutorials/incompressible/pimpleDyMFoam/wingFlutter/wingFlutter2D_pimpleDyMFoam/constant/dynamicMeshDict create mode 100644 tutorials/incompressible/pimpleDyMFoam/wingFlutter/wingFlutter2D_pimpleDyMFoam/constant/polyMesh/boundary create mode 100644 tutorials/incompressible/pimpleDyMFoam/wingFlutter/wingFlutter2D_pimpleDyMFoam/constant/transportProperties create mode 100644 tutorials/incompressible/pimpleDyMFoam/wingFlutter/wingFlutter2D_pimpleDyMFoam/constant/turbulenceProperties create mode 100644 tutorials/incompressible/pimpleDyMFoam/wingFlutter/wingFlutter2D_pimpleDyMFoam/system/controlDict create mode 100644 tutorials/incompressible/pimpleDyMFoam/wingFlutter/wingFlutter2D_pimpleDyMFoam/system/decomposeParDict create mode 100644 tutorials/incompressible/pimpleDyMFoam/wingFlutter/wingFlutter2D_pimpleDyMFoam/system/fvSchemes create mode 100644 tutorials/incompressible/pimpleDyMFoam/wingFlutter/wingFlutter2D_pimpleDyMFoam/system/fvSolution create mode 100644 tutorials/incompressible/pimpleDyMFoam/wingFlutter/wingFlutter2D_simpleFoam/0/U create mode 100644 tutorials/incompressible/pimpleDyMFoam/wingFlutter/wingFlutter2D_simpleFoam/0/include/fixedInlet create mode 100644 tutorials/incompressible/pimpleDyMFoam/wingFlutter/wingFlutter2D_simpleFoam/0/include/frontBackTopBottomPatches create mode 100644 tutorials/incompressible/pimpleDyMFoam/wingFlutter/wingFlutter2D_simpleFoam/0/include/initialConditions create mode 100644 tutorials/incompressible/pimpleDyMFoam/wingFlutter/wingFlutter2D_simpleFoam/0/k create mode 100644 tutorials/incompressible/pimpleDyMFoam/wingFlutter/wingFlutter2D_simpleFoam/0/nut create mode 100644 tutorials/incompressible/pimpleDyMFoam/wingFlutter/wingFlutter2D_simpleFoam/0/omega create mode 100644 tutorials/incompressible/pimpleDyMFoam/wingFlutter/wingFlutter2D_simpleFoam/0/p create mode 100644 tutorials/incompressible/pimpleDyMFoam/wingFlutter/wingFlutter2D_simpleFoam/constant/RASProperties create mode 100644 tutorials/incompressible/pimpleDyMFoam/wingFlutter/wingFlutter2D_simpleFoam/constant/extrudeProperties create mode 100644 tutorials/incompressible/pimpleDyMFoam/wingFlutter/wingFlutter2D_simpleFoam/constant/polyMesh/boundary create mode 100644 tutorials/incompressible/pimpleDyMFoam/wingFlutter/wingFlutter2D_simpleFoam/constant/transportProperties create mode 100644 tutorials/incompressible/pimpleDyMFoam/wingFlutter/wingFlutter2D_simpleFoam/system/controlDict create mode 100644 tutorials/incompressible/pimpleDyMFoam/wingFlutter/wingFlutter2D_simpleFoam/system/createPatchDict create mode 100644 tutorials/incompressible/pimpleDyMFoam/wingFlutter/wingFlutter2D_simpleFoam/system/fvSchemes create mode 100644 tutorials/incompressible/pimpleDyMFoam/wingFlutter/wingFlutter2D_simpleFoam/system/fvSolution create mode 100644 tutorials/incompressible/pimpleDyMFoam/wingFlutter/wingFlutter_snappyHexMesh/constant/polyMesh/blockMeshDict create mode 100644 tutorials/incompressible/pimpleDyMFoam/wingFlutter/wingFlutter_snappyHexMesh/constant/polyMesh/boundary create mode 100644 tutorials/incompressible/pimpleDyMFoam/wingFlutter/wingFlutter_snappyHexMesh/constant/triSurface/wing_5degrees.obj create mode 100644 tutorials/incompressible/pimpleDyMFoam/wingFlutter/wingFlutter_snappyHexMesh/system/controlDict create mode 100644 tutorials/incompressible/pimpleDyMFoam/wingFlutter/wingFlutter_snappyHexMesh/system/decomposeParDict create mode 100644 tutorials/incompressible/pimpleDyMFoam/wingFlutter/wingFlutter_snappyHexMesh/system/fvSchemes create mode 100644 tutorials/incompressible/pimpleDyMFoam/wingFlutter/wingFlutter_snappyHexMesh/system/fvSolution create mode 100644 tutorials/incompressible/pimpleDyMFoam/wingFlutter/wingFlutter_snappyHexMesh/system/snappyHexMeshDict diff --git a/tutorials/incompressible/pimpleDyMFoam/wingFlutter/Allclean b/tutorials/incompressible/pimpleDyMFoam/wingFlutter/Allclean new file mode 100755 index 0000000000..daafdf90aa --- /dev/null +++ b/tutorials/incompressible/pimpleDyMFoam/wingFlutter/Allclean @@ -0,0 +1,16 @@ +#!/bin/sh +cd ${0%/*} || exit 1 # run from this directory + +# Source tutorial run functions +. $WM_PROJECT_DIR/bin/tools/CleanFunctions + +cd wingFlutter_snappyHexMesh +cleanCase + +cd ../wingFlutter2D_simpleFoam +cleanCase + +cd ../wingFlutter2D_pimpleDyMFoam +cleanCase +rm -rf 0 + diff --git a/tutorials/incompressible/pimpleDyMFoam/wingFlutter/Allrun b/tutorials/incompressible/pimpleDyMFoam/wingFlutter/Allrun new file mode 100755 index 0000000000..23f224782e --- /dev/null +++ b/tutorials/incompressible/pimpleDyMFoam/wingFlutter/Allrun @@ -0,0 +1,29 @@ +#!/bin/sh +cd ${0%/*} || exit 1 # run from this directory + +# Source tutorial run functions +. $WM_PROJECT_DIR/bin/tools/RunFunctions + +# Make 3D mesh in slab of cells. +cd wingFlutter_snappyHexMesh +runApplication blockMesh +runApplication snappyHexMesh -overwrite + +# Make a 2D mesh by extruding a patch and solve to steady state. +cd ../wingFlutter2D_simpleFoam +runApplication extrudeMesh +runApplication createPatch -overwrite +runApplication simpleFoam + +# Copy the mesh from the steady state case and map the results to a +# mesh motion case, then solve transient. +cd ../wingFlutter2D_pimpleDyMFoam +cp -r ../wingFlutter2D_simpleFoam/constant/polyMesh/* constant/polyMesh/ +cp -r 0.org 0 +runApplication mapFields ../wingFlutter2D_simpleFoam -sourceTime latestTime -consistent +mv 0/pointDisplacement.unmapped 0/pointDisplacement +runApplication decomposePar +runParallel pimpleDyMFoam 3 +runApplication reconstructPar + +# ----------------------------------------------------------------- end-of-file diff --git a/tutorials/incompressible/pimpleDyMFoam/wingFlutter/wingFlutter2D_pimpleDyMFoam/0.org/U b/tutorials/incompressible/pimpleDyMFoam/wingFlutter/wingFlutter2D_pimpleDyMFoam/0.org/U new file mode 100644 index 0000000000..345f30007b --- /dev/null +++ b/tutorials/incompressible/pimpleDyMFoam/wingFlutter/wingFlutter2D_pimpleDyMFoam/0.org/U @@ -0,0 +1,45 @@ +/*--------------------------------*- C++ -*----------------------------------*\ +| ========= | | +| \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | +| \\ / O peration | Version: 1.6 | +| \\ / A nd | Web: http://www.OpenFOAM.org | +| \\/ M anipulation | | +\*---------------------------------------------------------------------------*/ +FoamFile +{ + version 2.0; + format ascii; + class volVectorField; + location "0"; + object U; +} +// * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * // + +#include "include/initialConditions" + +dimensions [0 1 -1 0 0 0 0]; + +internalField uniform $flowVelocity; + +boundaryField +{ + #include "include/fixedInlet" + + outlet + { + type inletOutlet; + inletValue uniform (0 0 0); + value $internalField; + } + + wing + { + type movingWallVelocity; + value uniform (0 0 0); + } + + #include "include/frontBackTopBottomPatches" +} + + +// ************************************************************************* // diff --git a/tutorials/incompressible/pimpleDyMFoam/wingFlutter/wingFlutter2D_pimpleDyMFoam/0.org/include/fixedInlet b/tutorials/incompressible/pimpleDyMFoam/wingFlutter/wingFlutter2D_pimpleDyMFoam/0.org/include/fixedInlet new file mode 100644 index 0000000000..ccf1d6e897 --- /dev/null +++ b/tutorials/incompressible/pimpleDyMFoam/wingFlutter/wingFlutter2D_pimpleDyMFoam/0.org/include/fixedInlet @@ -0,0 +1,15 @@ +/*--------------------------------*- C++ -*----------------------------------*\ +| ========= | | +| \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | +| \\ / O peration | Version: 1.6 | +| \\ / A nd | Web: http://www.OpenFOAM.org | +| \\/ M anipulation | | +\*---------------------------------------------------------------------------*/ + +inlet +{ + type fixedValue; + value $internalField; +} + +// ************************************************************************* // diff --git a/tutorials/incompressible/pimpleDyMFoam/wingFlutter/wingFlutter2D_pimpleDyMFoam/0.org/include/frontBackTopBottomPatches b/tutorials/incompressible/pimpleDyMFoam/wingFlutter/wingFlutter2D_pimpleDyMFoam/0.org/include/frontBackTopBottomPatches new file mode 100644 index 0000000000..70336f846e --- /dev/null +++ b/tutorials/incompressible/pimpleDyMFoam/wingFlutter/wingFlutter2D_pimpleDyMFoam/0.org/include/frontBackTopBottomPatches @@ -0,0 +1,24 @@ +/*--------------------------------*- C++ -*----------------------------------*\ +| ========= | | +| \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | +| \\ / O peration | Version: 1.6 | +| \\ / A nd | Web: http://www.OpenFOAM.org | +| \\/ M anipulation | | +\*---------------------------------------------------------------------------*/ + +topAndBottom +{ + type slip; +} + +front +{ + type empty +} + +back +{ + type empty; +} + +// ************************************************************************* // diff --git a/tutorials/incompressible/pimpleDyMFoam/wingFlutter/wingFlutter2D_pimpleDyMFoam/0.org/include/initialConditions b/tutorials/incompressible/pimpleDyMFoam/wingFlutter/wingFlutter2D_pimpleDyMFoam/0.org/include/initialConditions new file mode 100644 index 0000000000..e0d098096a --- /dev/null +++ b/tutorials/incompressible/pimpleDyMFoam/wingFlutter/wingFlutter2D_pimpleDyMFoam/0.org/include/initialConditions @@ -0,0 +1,15 @@ +/*--------------------------------*- C++ -*----------------------------------*\ +| ========= | | +| \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | +| \\ / O peration | Version: 1.6 | +| \\ / A nd | Web: http://www.OpenFOAM.org | +| \\/ M anipulation | | +\*---------------------------------------------------------------------------*/ + +flowVelocity (100 0 0); +pressure 0; +turbulentKE 37; +turbulentOmega 32; +#inputMode merge + +// ************************************************************************* // diff --git a/tutorials/incompressible/pimpleDyMFoam/wingFlutter/wingFlutter2D_pimpleDyMFoam/0.org/k b/tutorials/incompressible/pimpleDyMFoam/wingFlutter/wingFlutter2D_pimpleDyMFoam/0.org/k new file mode 100644 index 0000000000..8ba642effb --- /dev/null +++ b/tutorials/incompressible/pimpleDyMFoam/wingFlutter/wingFlutter2D_pimpleDyMFoam/0.org/k @@ -0,0 +1,44 @@ +/*--------------------------------*- C++ -*----------------------------------*\ +| ========= | | +| \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | +| \\ / O peration | Version: 1.6 | +| \\ / A nd | Web: http://www.OpenFOAM.org | +| \\/ M anipulation | | +\*---------------------------------------------------------------------------*/ +FoamFile +{ + version 2.0; + format ascii; + class volScalarField; + object k; +} +// * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * // + +#include "include/initialConditions" + +dimensions [0 2 -2 0 0 0 0]; + +internalField uniform $turbulentKE; + +boundaryField +{ + #include "include/fixedInlet" + + outlet + { + type inletOutlet; + inletValue $internalField; + value $internalField; + } + + wing + { + type kqRWallFunction; + value $internalField; + } + + #include "include/frontBackTopBottomPatches" +} + + +// ************************************************************************* // diff --git a/tutorials/incompressible/pimpleDyMFoam/wingFlutter/wingFlutter2D_pimpleDyMFoam/0.org/nut b/tutorials/incompressible/pimpleDyMFoam/wingFlutter/wingFlutter2D_pimpleDyMFoam/0.org/nut new file mode 100644 index 0000000000..27bfad4f39 --- /dev/null +++ b/tutorials/incompressible/pimpleDyMFoam/wingFlutter/wingFlutter2D_pimpleDyMFoam/0.org/nut @@ -0,0 +1,38 @@ +/*--------------------------------*- C++ -*----------------------------------*\ +| ========= | | +| \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | +| \\ / O peration | Version: 1.6 | +| \\ / A nd | Web: www.OpenFOAM.org | +| \\/ M anipulation | | +\*---------------------------------------------------------------------------*/ +FoamFile +{ + version 2.0; + format ascii; + class volScalarField; + location "0"; + object nut; +} +// * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * // + +dimensions [0 2 -1 0 0 0 0]; + +internalField uniform 0; + +boundaryField +{ + wing + { + type nutkWallFunction; + value uniform 0; + } + + "(front|back|topAndBottom|inlet|outlet)" + { + type calculated; + value uniform 0; + } +} + + +// ************************************************************************* // diff --git a/tutorials/incompressible/pimpleDyMFoam/wingFlutter/wingFlutter2D_pimpleDyMFoam/0.org/omega b/tutorials/incompressible/pimpleDyMFoam/wingFlutter/wingFlutter2D_pimpleDyMFoam/0.org/omega new file mode 100644 index 0000000000..2024b25ef7 --- /dev/null +++ b/tutorials/incompressible/pimpleDyMFoam/wingFlutter/wingFlutter2D_pimpleDyMFoam/0.org/omega @@ -0,0 +1,44 @@ +/*--------------------------------*- C++ -*----------------------------------*\ +| ========= | | +| \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | +| \\ / O peration | Version: 1.6 | +| \\ / A nd | Web: http://www.OpenFOAM.org | +| \\/ M anipulation | | +\*---------------------------------------------------------------------------*/ +FoamFile +{ + version 2.0; + format ascii; + class volScalarField; + object epsilon; +} +// * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * // + +#include "include/initialConditions" + +dimensions [0 0 -1 0 0 0 0]; + +internalField uniform $turbulentOmega; + +boundaryField +{ + #include "include/fixedInlet" + + outlet + { + type inletOutlet; + inletValue $internalField; + value $internalField; + } + + wing + { + type omegaWallFunction; + value $internalField; + } + + #include "include/frontBackTopBottomPatches" +} + + +// ************************************************************************* // diff --git a/tutorials/incompressible/pimpleDyMFoam/wingFlutter/wingFlutter2D_pimpleDyMFoam/0.org/p b/tutorials/incompressible/pimpleDyMFoam/wingFlutter/wingFlutter2D_pimpleDyMFoam/0.org/p new file mode 100644 index 0000000000..78a5d15299 --- /dev/null +++ b/tutorials/incompressible/pimpleDyMFoam/wingFlutter/wingFlutter2D_pimpleDyMFoam/0.org/p @@ -0,0 +1,44 @@ +/*--------------------------------*- C++ -*----------------------------------*\ +| ========= | | +| \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | +| \\ / O peration | Version: 1.6 | +| \\ / A nd | Web: http://www.OpenFOAM.org | +| \\/ M anipulation | | +\*---------------------------------------------------------------------------*/ +FoamFile +{ + version 2.0; + format ascii; + class volScalarField; + object p; +} +// * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * // + +#include "include/initialConditions" + +dimensions [0 2 -2 0 0 0 0]; + +internalField uniform $pressure; + +boundaryField +{ + inlet + { + type zeroGradient; + } + + outlet + { + type fixedValue; + value $internalField; + } + + wing + { + type zeroGradient; + } + + #include "include/frontBackTopBottomPatches" +} + +// ************************************************************************* // diff --git a/tutorials/incompressible/pimpleDyMFoam/wingFlutter/wingFlutter2D_pimpleDyMFoam/0.org/pointDisplacement b/tutorials/incompressible/pimpleDyMFoam/wingFlutter/wingFlutter2D_pimpleDyMFoam/0.org/pointDisplacement new file mode 100644 index 0000000000..f51ea94a8d --- /dev/null +++ b/tutorials/incompressible/pimpleDyMFoam/wingFlutter/wingFlutter2D_pimpleDyMFoam/0.org/pointDisplacement @@ -0,0 +1,120 @@ +/*--------------------------------*- C++ -*----------------------------------*\ +| ========= | | +| \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | +| \\ / O peration | Version: 1.6 | +| \\ / A nd | Web: www.OpenFOAM.org | +| \\/ M anipulation | | +\*---------------------------------------------------------------------------*/ +FoamFile +{ + version 2.0; + format ascii; + class pointVectorField; + location "0.01"; + object pointDisplacement; +} +// * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * // + +dimensions [0 1 0 0 0 0 0]; + +internalField uniform (0 0 0); + +boundaryField +{ + wing + { + type sixDoFRigidBodyDisplacement; + mass 22.9; + centreOfMass (0.4974612746 -0.01671895744 0.125); + momentOfInertia (1.958864357 3.920839234 2.057121362); + orientation + ( + 0.9953705935 0.09611129781 0 + -0.09611129781 0.9953705935 0 + 0 0 1 + ); + velocity (0 0 0); + acceleration (0 0 0); + angularMomentum (0 0 -0.5); + torque (0 0 0); + rhoName rhoInf; + rhoInf 1; + g (0 -9.81 0); + report on; + constraints + { + maxIterations 500; + + fixedLine1 + { + sixDoFRigidBodyMotionConstraint fixedLine; + tolerance 1e-9; + relaxationFactor 0.7; + fixedLineCoeffs + { + refPoint (0.25 0.007 0.125); + direction (0 1 0); + } + } + + fixedAxis1 + { + sixDoFRigidBodyMotionConstraint fixedAxis; + tolerance 1e-06; + relaxationFactor 0.7; + fixedAxisCoeffs + { + axis ( 0 0 1 ); + } + } + } + restraints + { + verticalSpring + { + sixDoFRigidBodyMotionRestraint linearSpring; + + linearSpringCoeffs + { + anchor (0.25 0.007 0.125); + refAttachmentPt (0.25 0.007 0.125); + stiffness 4000; + damping 2; + restLength 0; + } + } + axialSpring + { + sixDoFRigidBodyMotionRestraint linearAxialAngularSpring; + + linearAxialAngularSpringCoeffs + { + axis (0 0 1); + stiffness 700; + damping 0.5; + referenceOrientation $orientation; + } + } + } + value uniform (0 0 0); + } + + front + { + type empty; + } + + back + { + type empty; + } + + ".*" + { + type fixedValue; + value uniform (0 0 0); + } +} + + +// ************************************************************************* // diff --git a/tutorials/incompressible/pimpleDyMFoam/wingFlutter/wingFlutter2D_pimpleDyMFoam/constant/RASProperties b/tutorials/incompressible/pimpleDyMFoam/wingFlutter/wingFlutter2D_pimpleDyMFoam/constant/RASProperties new file mode 100644 index 0000000000..4e21ca67e4 --- /dev/null +++ b/tutorials/incompressible/pimpleDyMFoam/wingFlutter/wingFlutter2D_pimpleDyMFoam/constant/RASProperties @@ -0,0 +1,25 @@ +/*--------------------------------*- C++ -*----------------------------------*\ +| ========= | | +| \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | +| \\ / O peration | Version: 1.6 | +| \\ / A nd | Web: www.OpenFOAM.org | +| \\/ M anipulation | | +\*---------------------------------------------------------------------------*/ +FoamFile +{ + version 2.0; + format ascii; + class dictionary; + location "constant"; + object RASProperties; +} +// * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * // + +RASModel kOmegaSST; + +turbulence on; + +printCoeffs on; + + +// ************************************************************************* // diff --git a/tutorials/incompressible/pimpleDyMFoam/wingFlutter/wingFlutter2D_pimpleDyMFoam/constant/dynamicMeshDict b/tutorials/incompressible/pimpleDyMFoam/wingFlutter/wingFlutter2D_pimpleDyMFoam/constant/dynamicMeshDict new file mode 100644 index 0000000000..986a599c5f --- /dev/null +++ b/tutorials/incompressible/pimpleDyMFoam/wingFlutter/wingFlutter2D_pimpleDyMFoam/constant/dynamicMeshDict @@ -0,0 +1,26 @@ +/*--------------------------------*- C++ -*----------------------------------*\ +| ========= | | +| \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | +| \\ / O peration | Version: 1.6 | +| \\ / A nd | Web: http://www.OpenFOAM.org | +| \\/ M anipulation | | +\*---------------------------------------------------------------------------*/ +FoamFile +{ + version 2.0; + format ascii; + class dictionary; + object motionProperties; +} +// * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * // + +dynamicFvMesh dynamicMotionSolverFvMesh; + +motionSolverLibs ("libfvMotionSolvers.so"); + +solver displacementLaplacian; + +diffusivity inverseDistance (wing); + + +// ************************************************************************* // diff --git a/tutorials/incompressible/pimpleDyMFoam/wingFlutter/wingFlutter2D_pimpleDyMFoam/constant/polyMesh/boundary b/tutorials/incompressible/pimpleDyMFoam/wingFlutter/wingFlutter2D_pimpleDyMFoam/constant/polyMesh/boundary new file mode 100644 index 0000000000..87c839b5cc --- /dev/null +++ b/tutorials/incompressible/pimpleDyMFoam/wingFlutter/wingFlutter2D_pimpleDyMFoam/constant/polyMesh/boundary @@ -0,0 +1,58 @@ +/*--------------------------------*- C++ -*----------------------------------*\ +| ========= | | +| \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | +| \\ / O peration | Version: dev | +| \\ / A nd | Web: www.OpenFOAM.org | +| \\/ M anipulation | | +\*---------------------------------------------------------------------------*/ +FoamFile +{ + version 2.0; + format ascii; + class polyBoundaryMesh; + location "constant/polyMesh"; + object boundary; +} +// * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * // + +6 +( + topAndBottom + { + type patch; + nFaces 150; + startFace 76473; + } + inlet + { + type patch; + nFaces 48; + startFace 76623; + } + outlet + { + type patch; + nFaces 48; + startFace 76671; + } + front + { + type empty; + nFaces 38129; + startFace 76719; + } + back + { + type empty; + nFaces 38129; + startFace 114848; + } + wing + { + type wall; + nFaces 778; + startFace 152977; + } +) + +// ************************************************************************* // diff --git a/tutorials/incompressible/pimpleDyMFoam/wingFlutter/wingFlutter2D_pimpleDyMFoam/constant/transportProperties b/tutorials/incompressible/pimpleDyMFoam/wingFlutter/wingFlutter2D_pimpleDyMFoam/constant/transportProperties new file mode 100644 index 0000000000..a9d8bf659c --- /dev/null +++ b/tutorials/incompressible/pimpleDyMFoam/wingFlutter/wingFlutter2D_pimpleDyMFoam/constant/transportProperties @@ -0,0 +1,22 @@ +/*--------------------------------*- C++ -*----------------------------------*\ +| ========= | | +| \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | +| \\ / O peration | Version: 1.6 | +| \\ / A nd | Web: http://www.OpenFOAM.org | +| \\/ M anipulation | | +\*---------------------------------------------------------------------------*/ +FoamFile +{ + version 2.0; + format ascii; + class dictionary; + object transportProperties; +} + +// * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * // + +transportModel Newtonian; + +nu nu [0 2 -1 0 0 0 0] 1e-05; + +// ************************************************************************* // diff --git a/tutorials/incompressible/pimpleDyMFoam/wingFlutter/wingFlutter2D_pimpleDyMFoam/constant/turbulenceProperties b/tutorials/incompressible/pimpleDyMFoam/wingFlutter/wingFlutter2D_pimpleDyMFoam/constant/turbulenceProperties new file mode 100644 index 0000000000..f6753662e2 --- /dev/null +++ b/tutorials/incompressible/pimpleDyMFoam/wingFlutter/wingFlutter2D_pimpleDyMFoam/constant/turbulenceProperties @@ -0,0 +1,21 @@ +/*--------------------------------*- C++ -*----------------------------------*\ +| ========= | | +| \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | +| \\ / O peration | Version: 1.6 | +| \\ / A nd | Web: www.OpenFOAM.org | +| \\/ M anipulation | | +\*---------------------------------------------------------------------------*/ +FoamFile +{ + version 2.0; + format ascii; + class dictionary; + location "constant"; + object turbulenceProperties; +} +// * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * // + +simulationType RASModel; + + +// ************************************************************************* // diff --git a/tutorials/incompressible/pimpleDyMFoam/wingFlutter/wingFlutter2D_pimpleDyMFoam/system/controlDict b/tutorials/incompressible/pimpleDyMFoam/wingFlutter/wingFlutter2D_pimpleDyMFoam/system/controlDict new file mode 100644 index 0000000000..83a4748d21 --- /dev/null +++ b/tutorials/incompressible/pimpleDyMFoam/wingFlutter/wingFlutter2D_pimpleDyMFoam/system/controlDict @@ -0,0 +1,72 @@ +/*--------------------------------*- C++ -*----------------------------------*\ +| ========= | | +| \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | +| \\ / O peration | Version: 1.6 | +| \\ / A nd | Web: www.OpenFOAM.org | +| \\/ M anipulation | | +\*---------------------------------------------------------------------------*/ +FoamFile +{ + version 2.0; + format ascii; + class dictionary; + location "system"; + object controlDict; +} +// * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * // + +application pimpleDyMFoam; + +startFrom latestTime; + +startTime 0; + +stopAt endTime; + +endTime 1; + +deltaT 1e-5; + +writeControl adjustableRunTime; + +writeInterval 5e-3; + +purgeWrite 0; + +writeFormat ascii; + +writePrecision 10; + +writeCompression off; + +timeFormat general; + +timePrecision 6; + +runTimeModifiable true; + +adjustTimeStep yes; + +maxCo 0.9; + +libs ("libforces.so"); + +functions +{ + forces + { + type forces; + functionObjectLibs ( "libforces.so" ); + outputControl timeStep; + outputInterval 10; + patches (wing); + pName p; + UName U; + rhoName rhoInf; + log true; + rhoInf 1; + CofR (0.25 0.007 0.125); + } +} + +// ************************************************************************* // diff --git a/tutorials/incompressible/pimpleDyMFoam/wingFlutter/wingFlutter2D_pimpleDyMFoam/system/decomposeParDict b/tutorials/incompressible/pimpleDyMFoam/wingFlutter/wingFlutter2D_pimpleDyMFoam/system/decomposeParDict new file mode 100644 index 0000000000..2dc0a0a25e --- /dev/null +++ b/tutorials/incompressible/pimpleDyMFoam/wingFlutter/wingFlutter2D_pimpleDyMFoam/system/decomposeParDict @@ -0,0 +1,45 @@ +/*--------------------------------*- C++ -*----------------------------------*\ +| ========= | | +| \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | +| \\ / O peration | Version: 1.6 | +| \\ / A nd | Web: www.OpenFOAM.org | +| \\/ M anipulation | | +\*---------------------------------------------------------------------------*/ +FoamFile +{ + version 2.0; + format ascii; + class dictionary; + location "system"; + object decomposeParDict; +} +// * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * // + +numberOfSubdomains 3; + +method simple; + +simpleCoeffs +{ + n ( 1 3 1 ); + delta 0.001; +} + +hierarchicalCoeffs +{ + n ( 3 2 1 ); + delta 0.001; + order xyz; +} + +manualCoeffs +{ + dataFile "cellDecomposition"; +} + +metisCoeffs +{ +} + + +// ************************************************************************* // diff --git a/tutorials/incompressible/pimpleDyMFoam/wingFlutter/wingFlutter2D_pimpleDyMFoam/system/fvSchemes b/tutorials/incompressible/pimpleDyMFoam/wingFlutter/wingFlutter2D_pimpleDyMFoam/system/fvSchemes new file mode 100644 index 0000000000..2bee15799d --- /dev/null +++ b/tutorials/incompressible/pimpleDyMFoam/wingFlutter/wingFlutter2D_pimpleDyMFoam/system/fvSchemes @@ -0,0 +1,59 @@ +/*--------------------------------*- C++ -*----------------------------------*\ +| ========= | | +| \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | +| \\ / O peration | Version: 1.6 | +| \\ / A nd | Web: http://www.OpenFOAM.org | +| \\/ M anipulation | | +\*---------------------------------------------------------------------------*/ +FoamFile +{ + version 2.0; + format ascii; + class dictionary; + object fvSchemes; +} +// * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * // + +ddtSchemes +{ + default Euler; +} + +gradSchemes +{ + default Gauss linear; + grad(p) Gauss linear; + grad(U) Gauss linear; +} + +divSchemes +{ + default none; + div(phi,U) Gauss linearUpwind grad(U); + div(phi,k) Gauss limitedLinear 1; + div(phi,omega) Gauss limitedLinear 1; + div((nuEff*dev(grad(U).T()))) Gauss linear; +} + +laplacianSchemes +{ + default Gauss linear limited 0.5; +} + +interpolationSchemes +{ + default linear; +} + +snGradSchemes +{ + default corrected; +} + +fluxRequired +{ + default no; + p; +} + +// ************************************************************************* // diff --git a/tutorials/incompressible/pimpleDyMFoam/wingFlutter/wingFlutter2D_pimpleDyMFoam/system/fvSolution b/tutorials/incompressible/pimpleDyMFoam/wingFlutter/wingFlutter2D_pimpleDyMFoam/system/fvSolution new file mode 100644 index 0000000000..038b442397 --- /dev/null +++ b/tutorials/incompressible/pimpleDyMFoam/wingFlutter/wingFlutter2D_pimpleDyMFoam/system/fvSolution @@ -0,0 +1,88 @@ +/*--------------------------------*- C++ -*----------------------------------*\ +| ========= | | +| \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | +| \\ / O peration | Version: 1.6 | +| \\ / A nd | Web: http://www.OpenFOAM.org | +| \\/ M anipulation | | +\*---------------------------------------------------------------------------*/ +FoamFile +{ + version 2.0; + format ascii; + class dictionary; + object fvSolution; +} +// * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * // + +solvers +{ + p + { + solver GAMG; + tolerance 1e-7; + relTol 0.01; + smoother GaussSeidel; + nPreSweeps 0; + nPostSweeps 2; + cacheAgglomeration on; + agglomerator faceAreaPair; + nCellsInCoarsestLevel 10; + mergeLevels 1; + } + + pFinal + { + solver GAMG; + tolerance 1e-7; + relTol 0; + smoother GaussSeidel; + nPreSweeps 0; + nPostSweeps 2; + cacheAgglomeration on; + agglomerator faceAreaPair; + nCellsInCoarsestLevel 10; + mergeLevels 1; + } + + "(U|k|omega)" + { + solver PBiCG; + preconditioner DILU; + tolerance 1e-06; + relTol 0; + } + + cellDisplacement + { + solver GAMG; + tolerance 1e-5; + relTol 0; + smoother GaussSeidel; + cacheAgglomeration true; + nCellsInCoarsestLevel 10; + agglomerator faceAreaPair; + mergeLevels 1; + } +} + +PIMPLE +{ + nOuterCorrectors 2; + nCorrectors 1; + nNonOrthogonalCorrectors 0; +} + +relaxationFactors +{ + p 0.3; + U 0.7; + k 0.7; + omega 0.7; +} + +cache +{ + grad(U); +} + +// ************************************************************************* // diff --git a/tutorials/incompressible/pimpleDyMFoam/wingFlutter/wingFlutter2D_simpleFoam/0/U b/tutorials/incompressible/pimpleDyMFoam/wingFlutter/wingFlutter2D_simpleFoam/0/U new file mode 100644 index 0000000000..bd35fcfb40 --- /dev/null +++ b/tutorials/incompressible/pimpleDyMFoam/wingFlutter/wingFlutter2D_simpleFoam/0/U @@ -0,0 +1,45 @@ +/*--------------------------------*- C++ -*----------------------------------*\ +| ========= | | +| \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | +| \\ / O peration | Version: 1.6 | +| \\ / A nd | Web: http://www.OpenFOAM.org | +| \\/ M anipulation | | +\*---------------------------------------------------------------------------*/ +FoamFile +{ + version 2.0; + format ascii; + class volVectorField; + location "0"; + object U; +} +// * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * // + +#include "include/initialConditions" + +dimensions [0 1 -1 0 0 0 0]; + +internalField uniform $flowVelocity; + +boundaryField +{ + #include "include/fixedInlet" + + outlet + { + type inletOutlet; + inletValue uniform (0 0 0); + value $internalField; + } + + wing + { + type fixedValue; + value uniform (0 0 0); + } + + #include "include/frontBackTopBottomPatches" +} + + +// ************************************************************************* // diff --git a/tutorials/incompressible/pimpleDyMFoam/wingFlutter/wingFlutter2D_simpleFoam/0/include/fixedInlet b/tutorials/incompressible/pimpleDyMFoam/wingFlutter/wingFlutter2D_simpleFoam/0/include/fixedInlet new file mode 100644 index 0000000000..ccf1d6e897 --- /dev/null +++ b/tutorials/incompressible/pimpleDyMFoam/wingFlutter/wingFlutter2D_simpleFoam/0/include/fixedInlet @@ -0,0 +1,15 @@ +/*--------------------------------*- C++ -*----------------------------------*\ +| ========= | | +| \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | +| \\ / O peration | Version: 1.6 | +| \\ / A nd | Web: http://www.OpenFOAM.org | +| \\/ M anipulation | | +\*---------------------------------------------------------------------------*/ + +inlet +{ + type fixedValue; + value $internalField; +} + +// ************************************************************************* // diff --git a/tutorials/incompressible/pimpleDyMFoam/wingFlutter/wingFlutter2D_simpleFoam/0/include/frontBackTopBottomPatches b/tutorials/incompressible/pimpleDyMFoam/wingFlutter/wingFlutter2D_simpleFoam/0/include/frontBackTopBottomPatches new file mode 100644 index 0000000000..70336f846e --- /dev/null +++ b/tutorials/incompressible/pimpleDyMFoam/wingFlutter/wingFlutter2D_simpleFoam/0/include/frontBackTopBottomPatches @@ -0,0 +1,24 @@ +/*--------------------------------*- C++ -*----------------------------------*\ +| ========= | | +| \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | +| \\ / O peration | Version: 1.6 | +| \\ / A nd | Web: http://www.OpenFOAM.org | +| \\/ M anipulation | | +\*---------------------------------------------------------------------------*/ + +topAndBottom +{ + type slip; +} + +front +{ + type empty +} + +back +{ + type empty; +} + +// ************************************************************************* // diff --git a/tutorials/incompressible/pimpleDyMFoam/wingFlutter/wingFlutter2D_simpleFoam/0/include/initialConditions b/tutorials/incompressible/pimpleDyMFoam/wingFlutter/wingFlutter2D_simpleFoam/0/include/initialConditions new file mode 100644 index 0000000000..e0d098096a --- /dev/null +++ b/tutorials/incompressible/pimpleDyMFoam/wingFlutter/wingFlutter2D_simpleFoam/0/include/initialConditions @@ -0,0 +1,15 @@ +/*--------------------------------*- C++ -*----------------------------------*\ +| ========= | | +| \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | +| \\ / O peration | Version: 1.6 | +| \\ / A nd | Web: http://www.OpenFOAM.org | +| \\/ M anipulation | | +\*---------------------------------------------------------------------------*/ + +flowVelocity (100 0 0); +pressure 0; +turbulentKE 37; +turbulentOmega 32; +#inputMode merge + +// ************************************************************************* // diff --git a/tutorials/incompressible/pimpleDyMFoam/wingFlutter/wingFlutter2D_simpleFoam/0/k b/tutorials/incompressible/pimpleDyMFoam/wingFlutter/wingFlutter2D_simpleFoam/0/k new file mode 100644 index 0000000000..8ba642effb --- /dev/null +++ b/tutorials/incompressible/pimpleDyMFoam/wingFlutter/wingFlutter2D_simpleFoam/0/k @@ -0,0 +1,44 @@ +/*--------------------------------*- C++ -*----------------------------------*\ +| ========= | | +| \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | +| \\ / O peration | Version: 1.6 | +| \\ / A nd | Web: http://www.OpenFOAM.org | +| \\/ M anipulation | | +\*---------------------------------------------------------------------------*/ +FoamFile +{ + version 2.0; + format ascii; + class volScalarField; + object k; +} +// * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * // + +#include "include/initialConditions" + +dimensions [0 2 -2 0 0 0 0]; + +internalField uniform $turbulentKE; + +boundaryField +{ + #include "include/fixedInlet" + + outlet + { + type inletOutlet; + inletValue $internalField; + value $internalField; + } + + wing + { + type kqRWallFunction; + value $internalField; + } + + #include "include/frontBackTopBottomPatches" +} + + +// ************************************************************************* // diff --git a/tutorials/incompressible/pimpleDyMFoam/wingFlutter/wingFlutter2D_simpleFoam/0/nut b/tutorials/incompressible/pimpleDyMFoam/wingFlutter/wingFlutter2D_simpleFoam/0/nut new file mode 100644 index 0000000000..27bfad4f39 --- /dev/null +++ b/tutorials/incompressible/pimpleDyMFoam/wingFlutter/wingFlutter2D_simpleFoam/0/nut @@ -0,0 +1,38 @@ +/*--------------------------------*- C++ -*----------------------------------*\ +| ========= | | +| \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | +| \\ / O peration | Version: 1.6 | +| \\ / A nd | Web: www.OpenFOAM.org | +| \\/ M anipulation | | +\*---------------------------------------------------------------------------*/ +FoamFile +{ + version 2.0; + format ascii; + class volScalarField; + location "0"; + object nut; +} +// * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * // + +dimensions [0 2 -1 0 0 0 0]; + +internalField uniform 0; + +boundaryField +{ + wing + { + type nutkWallFunction; + value uniform 0; + } + + "(front|back|topAndBottom|inlet|outlet)" + { + type calculated; + value uniform 0; + } +} + + +// ************************************************************************* // diff --git a/tutorials/incompressible/pimpleDyMFoam/wingFlutter/wingFlutter2D_simpleFoam/0/omega b/tutorials/incompressible/pimpleDyMFoam/wingFlutter/wingFlutter2D_simpleFoam/0/omega new file mode 100644 index 0000000000..2024b25ef7 --- /dev/null +++ b/tutorials/incompressible/pimpleDyMFoam/wingFlutter/wingFlutter2D_simpleFoam/0/omega @@ -0,0 +1,44 @@ +/*--------------------------------*- C++ -*----------------------------------*\ +| ========= | | +| \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | +| \\ / O peration | Version: 1.6 | +| \\ / A nd | Web: http://www.OpenFOAM.org | +| \\/ M anipulation | | +\*---------------------------------------------------------------------------*/ +FoamFile +{ + version 2.0; + format ascii; + class volScalarField; + object epsilon; +} +// * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * // + +#include "include/initialConditions" + +dimensions [0 0 -1 0 0 0 0]; + +internalField uniform $turbulentOmega; + +boundaryField +{ + #include "include/fixedInlet" + + outlet + { + type inletOutlet; + inletValue $internalField; + value $internalField; + } + + wing + { + type omegaWallFunction; + value $internalField; + } + + #include "include/frontBackTopBottomPatches" +} + + +// ************************************************************************* // diff --git a/tutorials/incompressible/pimpleDyMFoam/wingFlutter/wingFlutter2D_simpleFoam/0/p b/tutorials/incompressible/pimpleDyMFoam/wingFlutter/wingFlutter2D_simpleFoam/0/p new file mode 100644 index 0000000000..78a5d15299 --- /dev/null +++ b/tutorials/incompressible/pimpleDyMFoam/wingFlutter/wingFlutter2D_simpleFoam/0/p @@ -0,0 +1,44 @@ +/*--------------------------------*- C++ -*----------------------------------*\ +| ========= | | +| \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | +| \\ / O peration | Version: 1.6 | +| \\ / A nd | Web: http://www.OpenFOAM.org | +| \\/ M anipulation | | +\*---------------------------------------------------------------------------*/ +FoamFile +{ + version 2.0; + format ascii; + class volScalarField; + object p; +} +// * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * // + +#include "include/initialConditions" + +dimensions [0 2 -2 0 0 0 0]; + +internalField uniform $pressure; + +boundaryField +{ + inlet + { + type zeroGradient; + } + + outlet + { + type fixedValue; + value $internalField; + } + + wing + { + type zeroGradient; + } + + #include "include/frontBackTopBottomPatches" +} + +// ************************************************************************* // diff --git a/tutorials/incompressible/pimpleDyMFoam/wingFlutter/wingFlutter2D_simpleFoam/constant/RASProperties b/tutorials/incompressible/pimpleDyMFoam/wingFlutter/wingFlutter2D_simpleFoam/constant/RASProperties new file mode 100644 index 0000000000..4e21ca67e4 --- /dev/null +++ b/tutorials/incompressible/pimpleDyMFoam/wingFlutter/wingFlutter2D_simpleFoam/constant/RASProperties @@ -0,0 +1,25 @@ +/*--------------------------------*- C++ -*----------------------------------*\ +| ========= | | +| \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | +| \\ / O peration | Version: 1.6 | +| \\ / A nd | Web: www.OpenFOAM.org | +| \\/ M anipulation | | +\*---------------------------------------------------------------------------*/ +FoamFile +{ + version 2.0; + format ascii; + class dictionary; + location "constant"; + object RASProperties; +} +// * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * // + +RASModel kOmegaSST; + +turbulence on; + +printCoeffs on; + + +// ************************************************************************* // diff --git a/tutorials/incompressible/pimpleDyMFoam/wingFlutter/wingFlutter2D_simpleFoam/constant/extrudeProperties b/tutorials/incompressible/pimpleDyMFoam/wingFlutter/wingFlutter2D_simpleFoam/constant/extrudeProperties new file mode 100644 index 0000000000..bbb18ba9e6 --- /dev/null +++ b/tutorials/incompressible/pimpleDyMFoam/wingFlutter/wingFlutter2D_simpleFoam/constant/extrudeProperties @@ -0,0 +1,47 @@ +/*--------------------------------*- C++ -*----------------------------------*\ +| ========= | | +| \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | +| \\ / O peration | Version: 1.6 | +| \\ / A nd | Web: http://www.OpenFOAM.org | +| \\/ M anipulation | | +\*---------------------------------------------------------------------------*/ +FoamFile +{ + version 2.0; + format ascii; + class dictionary; + object extrudeProperties; +} +// * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * // + +// What to extrude: +// patch : from patch of another case ('sourceCase') + +constructFrom patch; +sourceCase "../wingFlutter_snappyHexMesh"; +sourcePatches (front); + +// If construct from patch: patch to use for back (can be same as sourcePatch) +exposedPatchName back; + +// Flip surface normals before usage. +flipNormals false; + +//- Linear extrusion in point-normal direction +extrudeModel linearNormal; + +nLayers 1; + +expansionRatio 1.0; + +linearNormalCoeffs +{ + thickness 0.05; +} + +// Do front and back need to be merged? Usually only makes sense for 360 +// degree wedges. +mergeFaces false; + + +// * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * // diff --git a/tutorials/incompressible/pimpleDyMFoam/wingFlutter/wingFlutter2D_simpleFoam/constant/polyMesh/boundary b/tutorials/incompressible/pimpleDyMFoam/wingFlutter/wingFlutter2D_simpleFoam/constant/polyMesh/boundary new file mode 100644 index 0000000000..87c839b5cc --- /dev/null +++ b/tutorials/incompressible/pimpleDyMFoam/wingFlutter/wingFlutter2D_simpleFoam/constant/polyMesh/boundary @@ -0,0 +1,58 @@ +/*--------------------------------*- C++ -*----------------------------------*\ +| ========= | | +| \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | +| \\ / O peration | Version: dev | +| \\ / A nd | Web: www.OpenFOAM.org | +| \\/ M anipulation | | +\*---------------------------------------------------------------------------*/ +FoamFile +{ + version 2.0; + format ascii; + class polyBoundaryMesh; + location "constant/polyMesh"; + object boundary; +} +// * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * // + +6 +( + topAndBottom + { + type patch; + nFaces 150; + startFace 76473; + } + inlet + { + type patch; + nFaces 48; + startFace 76623; + } + outlet + { + type patch; + nFaces 48; + startFace 76671; + } + front + { + type empty; + nFaces 38129; + startFace 76719; + } + back + { + type empty; + nFaces 38129; + startFace 114848; + } + wing + { + type wall; + nFaces 778; + startFace 152977; + } +) + +// ************************************************************************* // diff --git a/tutorials/incompressible/pimpleDyMFoam/wingFlutter/wingFlutter2D_simpleFoam/constant/transportProperties b/tutorials/incompressible/pimpleDyMFoam/wingFlutter/wingFlutter2D_simpleFoam/constant/transportProperties new file mode 100644 index 0000000000..a9d8bf659c --- /dev/null +++ b/tutorials/incompressible/pimpleDyMFoam/wingFlutter/wingFlutter2D_simpleFoam/constant/transportProperties @@ -0,0 +1,22 @@ +/*--------------------------------*- C++ -*----------------------------------*\ +| ========= | | +| \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | +| \\ / O peration | Version: 1.6 | +| \\ / A nd | Web: http://www.OpenFOAM.org | +| \\/ M anipulation | | +\*---------------------------------------------------------------------------*/ +FoamFile +{ + version 2.0; + format ascii; + class dictionary; + object transportProperties; +} + +// * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * // + +transportModel Newtonian; + +nu nu [0 2 -1 0 0 0 0] 1e-05; + +// ************************************************************************* // diff --git a/tutorials/incompressible/pimpleDyMFoam/wingFlutter/wingFlutter2D_simpleFoam/system/controlDict b/tutorials/incompressible/pimpleDyMFoam/wingFlutter/wingFlutter2D_simpleFoam/system/controlDict new file mode 100644 index 0000000000..7e8f0995ed --- /dev/null +++ b/tutorials/incompressible/pimpleDyMFoam/wingFlutter/wingFlutter2D_simpleFoam/system/controlDict @@ -0,0 +1,67 @@ +/*--------------------------------*- C++ -*----------------------------------*\ +| ========= | | +| \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | +| \\ / O peration | Version: 1.6 | +| \\ / A nd | Web: www.OpenFOAM.org | +| \\/ M anipulation | | +\*---------------------------------------------------------------------------*/ +FoamFile +{ + version 2.0; + format ascii; + class dictionary; + location "system"; + object controlDict; +} +// * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * // + +application simpleFoam; + +startFrom latestTime; + +startTime 0; + +stopAt endTime; + +endTime 3000; + +deltaT 1; + +writeControl runTime; + +writeInterval 100; + +purgeWrite 0; + +writeFormat ascii; + +writePrecision 6; + +writeCompression off; + +timeFormat general; + +timePrecision 6; + +runTimeModifiable true; + +functions +{ + forces + { + type forces; + functionObjectLibs ( "libforces.so" ); + outputControl timeStep; + outputInterval 10; + patches (wing); + pName p; + UName U; + rhoName rhoInf; + log true; + rhoInf 1; + CofR (0.4974612746 -0.01671895744 0.125); + } +} + + +// ************************************************************************* // diff --git a/tutorials/incompressible/pimpleDyMFoam/wingFlutter/wingFlutter2D_simpleFoam/system/createPatchDict b/tutorials/incompressible/pimpleDyMFoam/wingFlutter/wingFlutter2D_simpleFoam/system/createPatchDict new file mode 100644 index 0000000000..b75b8e1075 --- /dev/null +++ b/tutorials/incompressible/pimpleDyMFoam/wingFlutter/wingFlutter2D_simpleFoam/system/createPatchDict @@ -0,0 +1,49 @@ +/*--------------------------------*- C++ -*----------------------------------*\ +| ========= | | +| \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | +| \\ / O peration | Version: 1.6 | +| \\ / A nd | Web: http://www.OpenFOAM.org | +| \\/ M anipulation | | +\*---------------------------------------------------------------------------*/ +FoamFile +{ + version 2.0; + format ascii; + class dictionary; + object createPatchDict; +} + +// * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * // + +// Tolerance used in matching faces. Absolute tolerance is span of +// face times this factor. To load incorrectly matches meshes set this +// to a higher value. +matchTolerance 1E-3; + +// Do a synchronisation of coupled points after creation of any patches. +// Note: this does not work with points that are on multiple coupled patches +// with transformations. +pointSync true; + +// Patches to create. +patches +( + { + // Name of new patch + name wing; + + // Type of new patch + patchInfo + { + type wall; + } + + // How to construct: either from 'patches' or 'set' + constructFrom patches; + + // If constructFrom = patches : names of patches. Wildcards allowed. + patches ( wing_5degrees.obj_WALL10 ); + } +); + +// ************************************************************************* // diff --git a/tutorials/incompressible/pimpleDyMFoam/wingFlutter/wingFlutter2D_simpleFoam/system/fvSchemes b/tutorials/incompressible/pimpleDyMFoam/wingFlutter/wingFlutter2D_simpleFoam/system/fvSchemes new file mode 100644 index 0000000000..2eb6038d7f --- /dev/null +++ b/tutorials/incompressible/pimpleDyMFoam/wingFlutter/wingFlutter2D_simpleFoam/system/fvSchemes @@ -0,0 +1,59 @@ +/*--------------------------------*- C++ -*----------------------------------*\ +| ========= | | +| \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | +| \\ / O peration | Version: 1.6 | +| \\ / A nd | Web: http://www.OpenFOAM.org | +| \\/ M anipulation | | +\*---------------------------------------------------------------------------*/ +FoamFile +{ + version 2.0; + format ascii; + class dictionary; + object fvSchemes; +} +// * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * // + +ddtSchemes +{ + default steadyState; +} + +gradSchemes +{ + default Gauss linear; + grad(p) Gauss linear; + grad(U) Gauss linear; +} + +divSchemes +{ + default none; + div(phi,U) Gauss linearUpwind grad(U); + div(phi,k) Gauss upwind; + div(phi,omega) Gauss upwind; + div((nuEff*dev(grad(U).T()))) Gauss linear; +} + +laplacianSchemes +{ + default Gauss linear corrected; +} + +interpolationSchemes +{ + default linear; +} + +snGradSchemes +{ + default corrected; +} + +fluxRequired +{ + default no; + p; +} + +// ************************************************************************* // diff --git a/tutorials/incompressible/pimpleDyMFoam/wingFlutter/wingFlutter2D_simpleFoam/system/fvSolution b/tutorials/incompressible/pimpleDyMFoam/wingFlutter/wingFlutter2D_simpleFoam/system/fvSolution new file mode 100644 index 0000000000..e99098b5b9 --- /dev/null +++ b/tutorials/incompressible/pimpleDyMFoam/wingFlutter/wingFlutter2D_simpleFoam/system/fvSolution @@ -0,0 +1,79 @@ +/*--------------------------------*- C++ -*----------------------------------*\ +| ========= | | +| \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | +| \\ / O peration | Version: 1.6 | +| \\ / A nd | Web: http://www.OpenFOAM.org | +| \\/ M anipulation | | +\*---------------------------------------------------------------------------*/ +FoamFile +{ + version 2.0; + format ascii; + class dictionary; + object fvSolution; +} +// * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * // + +solvers +{ + p + { + solver GAMG; + tolerance 1e-7; + relTol 0.1; + smoother GaussSeidel; + nPreSweeps 0; + nPostSweeps 2; + cacheAgglomeration on; + agglomerator faceAreaPair; + nCellsInCoarsestLevel 10; + mergeLevels 1; + } + + U + { + solver smoothSolver; + smoother GaussSeidel; + tolerance 1e-8; + relTol 0.1; + nSweeps 1; + } + + k + { + solver smoothSolver; + smoother GaussSeidel; + tolerance 1e-8; + relTol 0.1; + nSweeps 1; + } + + omega + { + solver smoothSolver; + smoother GaussSeidel; + tolerance 1e-8; + relTol 0.1; + nSweeps 1; + } +} + +SIMPLE +{ + nNonOrthogonalCorrectors 0; +} + +relaxationFactors +{ + p 0.3; + U 0.7; + k 0.7; + omega 0.7; +} + +cache +{ + grad(U); +} + +// ************************************************************************* // diff --git a/tutorials/incompressible/pimpleDyMFoam/wingFlutter/wingFlutter_snappyHexMesh/constant/polyMesh/blockMeshDict b/tutorials/incompressible/pimpleDyMFoam/wingFlutter/wingFlutter_snappyHexMesh/constant/polyMesh/blockMeshDict new file mode 100644 index 0000000000..1a5ba112ca --- /dev/null +++ b/tutorials/incompressible/pimpleDyMFoam/wingFlutter/wingFlutter_snappyHexMesh/constant/polyMesh/blockMeshDict @@ -0,0 +1,74 @@ +/*--------------------------------*- C++ -*----------------------------------*\ +| ========= | | +| \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | +| \\ / O peration | Version: 1.6 | +| \\ / A nd | Web: http://www.OpenFOAM.org | +| \\/ M anipulation | | +\*---------------------------------------------------------------------------*/ +FoamFile +{ + version 2.0; + format ascii; + class dictionary; + object blockMeshDict; +} + +// * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * // + +convertToMeters 1; + +vertices +( + (-2.5 -4.8 -0.1) + ( 10 -4.8 -0.1) + ( 10 4.8 -0.1) + (-2.5 4.8 -0.1) + (-2.5 -4.8 0.1) + ( 10 -4.8 0.1) + ( 10 4.8 0.1) + (-2.5 4.8 0.1) +); + +blocks +( + hex (0 1 2 3 4 5 6 7) (75 48 1) simpleGrading (1 1 1) +); + +edges +( +); + +patches +( + patch topAndBottom + ( + (3 7 6 2) + (1 5 4 0) + ) + + patch inlet + ( + (0 4 7 3) + ) + + patch outlet + ( + (2 6 5 1) + ) + + empty front + ( + (4 5 6 7) + ) + + empty back + ( + (0 3 2 1) + ) +); + +mergePatchPairs +( +); + +// ************************************************************************* // diff --git a/tutorials/incompressible/pimpleDyMFoam/wingFlutter/wingFlutter_snappyHexMesh/constant/polyMesh/boundary b/tutorials/incompressible/pimpleDyMFoam/wingFlutter/wingFlutter_snappyHexMesh/constant/polyMesh/boundary new file mode 100644 index 0000000000..450937dc95 --- /dev/null +++ b/tutorials/incompressible/pimpleDyMFoam/wingFlutter/wingFlutter_snappyHexMesh/constant/polyMesh/boundary @@ -0,0 +1,58 @@ +/*--------------------------------*- C++ -*----------------------------------*\ +| ========= | | +| \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | +| \\ / O peration | Version: dev | +| \\ / A nd | Web: www.OpenFOAM.org | +| \\/ M anipulation | | +\*---------------------------------------------------------------------------*/ +FoamFile +{ + version 2.0; + format ascii; + class polyBoundaryMesh; + location "constant/polyMesh"; + object boundary; +} +// * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * // + +6 +( + topAndBottom + { + type patch; + nFaces 150; + startFace 2098769; + } + inlet + { + type patch; + nFaces 48; + startFace 2098919; + } + outlet + { + type patch; + nFaces 48; + startFace 2098967; + } + front + { + type empty; + nFaces 38129; + startFace 2099015; + } + back + { + type empty; + nFaces 38120; + startFace 2137144; + } + wing_5degrees.obj_WALL10 + { + type wall; + nFaces 49792; + startFace 2175264; + } +) + +// ************************************************************************* // diff --git a/tutorials/incompressible/pimpleDyMFoam/wingFlutter/wingFlutter_snappyHexMesh/constant/triSurface/wing_5degrees.obj b/tutorials/incompressible/pimpleDyMFoam/wingFlutter/wingFlutter_snappyHexMesh/constant/triSurface/wing_5degrees.obj new file mode 100644 index 0000000000..4be2aac5f2 --- /dev/null +++ b/tutorials/incompressible/pimpleDyMFoam/wingFlutter/wingFlutter_snappyHexMesh/constant/triSurface/wing_5degrees.obj @@ -0,0 +1,1054 @@ +# Wavefront OBJ file written 2010-05-13T09:12:43 +o wing_5degrees + +# points : 520 +# faces : 520 +# zones : 1 +# 0 WALL10 (nFaces: 520) + +# +v 1.00488 -0.0890722 -0.5 +v 1.00488 -0.0890722 0.5 +v 0.999453 -0.0870827 0.5 +v 0.999453 -0.0870827 -0.5 +v 0.993747 -0.0849908 0.5 +v 0.993747 -0.0849908 -0.5 +v 0.98776 -0.0827959 0.5 +v 0.98776 -0.0827959 -0.5 +v 0.981475 -0.0804834 0.5 +v 0.981475 -0.0804834 -0.5 +v 0.974878 -0.0780483 0.5 +v 0.974878 -0.0780483 -0.5 +v 0.967936 -0.075535 0.5 +v 0.967936 -0.075535 -0.5 +v 0.960671 -0.0728297 0.5 +v 0.960671 -0.0728297 -0.5 +v 0.952986 -0.070149 0.5 +v 0.952986 -0.070149 -0.5 +v 0.944915 -0.067332 0.5 +v 0.944915 -0.067332 -0.5 +v 0.936442 -0.064377 0.5 +v 0.936442 -0.064377 -0.5 +v 0.927543 -0.0612777 0.5 +v 0.927543 -0.0612777 -0.5 +v 0.918171 -0.0581074 0.5 +v 0.918171 -0.0581074 -0.5 +v 0.908345 -0.0547308 0.5 +v 0.908345 -0.0547308 -0.5 +v 0.897978 -0.0513371 0.5 +v 0.897978 -0.0513371 -0.5 +v 0.887113 -0.0477115 0.5 +v 0.887113 -0.0477115 -0.5 +v 0.875671 -0.0440076 0.5 +v 0.875671 -0.0440076 -0.5 +v 0.863634 -0.0401898 0.5 +v 0.863634 -0.0401898 -0.5 +v 0.850988 -0.0362043 0.5 +v 0.850988 -0.0362043 -0.5 +v 0.837677 -0.0321259 0.5 +v 0.837677 -0.0321259 -0.5 +v 0.8237 -0.0278406 0.5 +v 0.8237 -0.0278406 -0.5 +v 0.808997 -0.0234314 0.5 +v 0.808997 -0.0234314 -0.5 +v 0.793536 -0.0188824 0.5 +v 0.793536 -0.0188824 -0.5 +v 0.777248 -0.0142896 0.5 +v 0.777248 -0.0142896 -0.5 +v 0.760144 -0.00947585 0.5 +v 0.760144 -0.00947585 -0.5 +v 0.742148 -0.0045544 0.5 +v 0.742148 -0.0045544 -0.5 +v 0.723207 0.000449948 0.5 +v 0.723207 0.000449948 -0.5 +v 0.703296 0.00561154 0.5 +v 0.703296 0.00561154 -0.5 +v 0.682345 0.010854 0.5 +v 0.682345 0.010854 -0.5 +v 0.660295 0.0161554 0.5 +v 0.660295 0.0161554 -0.5 +v 0.637103 0.0215548 0.5 +v 0.637103 0.0215548 -0.5 +v 0.606829 0.0282606 0.5 +v 0.606829 0.0282606 -0.5 +v 0.578018 0.0343978 0.5 +v 0.578018 0.0343978 -0.5 +v 0.550557 0.0397874 0.5 +v 0.550557 0.0397874 -0.5 +v 0.524436 0.0447356 0.5 +v 0.524436 0.0447356 -0.5 +v 0.499549 0.0490421 0.5 +v 0.499549 0.0490421 -0.5 +v 0.475869 0.05291 0.5 +v 0.475869 0.05291 -0.5 +v 0.45334 0.0563729 0.5 +v 0.45334 0.0563729 -0.5 +v 0.431911 0.059484 0.5 +v 0.431911 0.059484 -0.5 +v 0.411518 0.0621876 0.5 +v 0.411518 0.0621876 -0.5 +v 0.392118 0.0645445 0.5 +v 0.392118 0.0645445 -0.5 +v 0.373644 0.0664046 0.5 +v 0.373644 0.0664046 -0.5 +v 0.356081 0.0680196 0.5 +v 0.356081 0.0680196 -0.5 +v 0.339375 0.0692961 0.5 +v 0.339375 0.0692961 -0.5 +v 0.323487 0.0702815 0.5 +v 0.323487 0.0702815 -0.5 +v 0.308383 0.0710035 0.5 +v 0.308383 0.0710035 -0.5 +v 0.294024 0.0714698 0.5 +v 0.294024 0.0714698 -0.5 +v 0.28038 0.0717809 0.5 +v 0.28038 0.0717809 -0.5 +v 0.267416 0.0719191 0.5 +v 0.267416 0.0719191 -0.5 +v 0.255099 0.0718222 0.5 +v 0.255099 0.0718222 -0.5 +v 0.243399 0.0716511 0.5 +v 0.243399 0.0716511 -0.5 +v 0.232288 0.0713208 0.5 +v 0.232288 0.0713208 -0.5 +v 0.221735 0.0709249 0.5 +v 0.221735 0.0709249 -0.5 +v 0.211715 0.0704338 0.5 +v 0.211715 0.0704338 -0.5 +v 0.202202 0.0698513 0.5 +v 0.202202 0.0698513 -0.5 +v 0.19317 0.0692271 0.5 +v 0.19317 0.0692271 -0.5 +v 0.184599 0.0685108 0.5 +v 0.184599 0.0685108 -0.5 +v 0.176464 0.0677409 0.5 +v 0.176464 0.0677409 -0.5 +v 0.168741 0.0669472 0.5 +v 0.168741 0.0669472 -0.5 +v 0.161418 0.0660755 0.5 +v 0.161418 0.0660755 -0.5 +v 0.154469 0.0651852 0.5 +v 0.154469 0.0651852 -0.5 +v 0.145493 0.0640314 0.5 +v 0.145493 0.0640314 -0.5 +v 0.136995 0.0627463 0.5 +v 0.136995 0.0627463 -0.5 +v 0.128932 0.0614383 0.5 +v 0.128932 0.0614383 -0.5 +v 0.121282 0.0601525 0.5 +v 0.121282 0.0601525 -0.5 +v 0.114049 0.0587416 0.5 +v 0.114049 0.0587416 -0.5 +v 0.107186 0.0573482 0.5 +v 0.107186 0.0573482 -0.5 +v 0.100675 0.0559871 0.5 +v 0.100675 0.0559871 -0.5 +v 0.0945147 0.0545794 0.5 +v 0.0945147 0.0545794 -0.5 +v 0.0886858 0.0531426 0.5 +v 0.0886858 0.0531426 -0.5 +v 0.0831659 0.0517083 0.5 +v 0.0831659 0.0517083 -0.5 +v 0.0779342 0.0503006 0.5 +v 0.0779342 0.0503006 -0.5 +v 0.072975 0.0489224 0.5 +v 0.072975 0.0489224 -0.5 +v 0.0682798 0.0475559 0.5 +v 0.0682798 0.0475559 -0.5 +v 0.0638499 0.0461601 0.5 +v 0.0638499 0.0461601 -0.5 +v 0.0596656 0.0447577 0.5 +v 0.0596656 0.0447577 -0.5 +v 0.055694 0.0434126 0.5 +v 0.055694 0.0434126 -0.5 +v 0.0519364 0.0420932 0.5 +v 0.0519364 0.0420932 -0.5 +v 0.0484053 0.0407363 0.5 +v 0.0484053 0.0407363 -0.5 +v 0.0450779 0.0393756 0.5 +v 0.0450779 0.0393756 -0.5 +v 0.0419215 0.0380722 0.5 +v 0.0419215 0.0380722 -0.5 +v 0.0389288 0.0368211 0.5 +v 0.0389288 0.0368211 -0.5 +v 0.036102 0.0355928 0.5 +v 0.036102 0.0355928 -0.5 +v 0.0334425 0.034368 0.5 +v 0.0334425 0.034368 -0.5 +v 0.0309496 0.0331356 0.5 +v 0.0309496 0.0331356 -0.5 +v 0.0286117 0.0319047 0.5 +v 0.0286117 0.0319047 -0.5 +v 0.0264077 0.0307022 0.5 +v 0.0264077 0.0307022 -0.5 +v 0.0243248 0.02954 0.5 +v 0.0243248 0.02954 -0.5 +v 0.0223665 0.0284014 0.5 +v 0.0223665 0.0284014 -0.5 +v 0.0205353 0.0272716 0.5 +v 0.0205353 0.0272716 -0.5 +v 0.0188204 0.0261581 0.5 +v 0.0188204 0.0261581 -0.5 +v 0.0172057 0.0250781 0.5 +v 0.0172057 0.0250781 -0.5 +v 0.015681 0.0240389 0.5 +v 0.015681 0.0240389 -0.5 +v 0.0142472 0.0230307 0.5 +v 0.0142472 0.0230307 -0.5 +v 0.0129051 0.0220434 0.5 +v 0.0129051 0.0220434 -0.5 +v 0.0116567 0.0210699 0.5 +v 0.0116567 0.0210699 -0.5 +v 0.0105044 0.0201047 0.5 +v 0.0105044 0.0201047 -0.5 +v 0.00944864 0.0191444 0.5 +v 0.00944864 0.0191444 -0.5 +v 0.00847997 0.0181956 0.5 +v 0.00847997 0.0181956 -0.5 +v 0.00758214 0.0172702 0.5 +v 0.00758214 0.0172702 -0.5 +v 0.00674204 0.0163779 0.5 +v 0.00674204 0.0163779 -0.5 +v 0.00595671 0.0155186 0.5 +v 0.00595671 0.0155186 -0.5 +v 0.00523198 0.0146848 0.5 +v 0.00523198 0.0146848 -0.5 +v 0.00457157 0.0138701 0.5 +v 0.00457157 0.0138701 -0.5 +v 0.00397503 0.0130721 0.5 +v 0.00397503 0.0130721 -0.5 +v 0.00343506 0.0122936 0.5 +v 0.00343506 0.0122936 -0.5 +v 0.0029443 0.0115379 0.5 +v 0.0029443 0.0115379 -0.5 +v 0.0024965 0.010807 0.5 +v 0.0024965 0.010807 -0.5 +v 0.00209053 0.0101012 0.5 +v 0.00209053 0.0101012 -0.5 +v 0.00172938 0.00941821 0.5 +v 0.00172938 0.00941821 -0.5 +v 0.00141481 0.00875662 0.5 +v 0.00141481 0.00875662 -0.5 +v 0.00114703 0.00811509 0.5 +v 0.00114703 0.00811509 -0.5 +v 0.000922634 0.00749375 0.5 +v 0.000922634 0.00749375 -0.5 +v 0.00073432 0.00689421 0.5 +v 0.00073432 0.00689421 -0.5 +v 0.000575606 0.00631745 0.5 +v 0.000575606 0.00631745 -0.5 +v 0.000441178 0.00576428 0.5 +v 0.000441178 0.00576428 -0.5 +v 0.000326628 0.00523494 0.5 +v 0.000326628 0.00523494 -0.5 +v 0.000229331 0.00472926 0.5 +v 0.000229331 0.00472926 -0.5 +v 0.000147968 0.00424663 0.5 +v 0.000147968 0.00424663 -0.5 +v 8.13071e-05 0.00378656 0.5 +v 8.13071e-05 0.00378656 -0.5 +v 2.81186e-05 0.00334838 0.5 +v 2.81186e-05 0.00334838 -0.5 +v -1.28053e-05 0.00293132 0.5 +v -1.28053e-05 0.00293132 -0.5 +v -4.26138e-05 0.00253464 0.5 +v -4.26138e-05 0.00253464 -0.5 +v -6.24104e-05 0.00215753 0.5 +v -6.24104e-05 0.00215753 -0.5 +v -7.32354e-05 0.00179922 0.5 +v -7.32354e-05 0.00179922 -0.5 +v -7.6066e-05 0.00145891 0.5 +v -7.6066e-05 0.00145891 -0.5 +v -7.18149e-05 0.00113574 0.5 +v -7.18149e-05 0.00113574 -0.5 +v -6.13265e-05 0.000828962 0.5 +v -6.13265e-05 0.000828962 -0.5 +v -4.5388e-05 0.000537894 0.5 +v -4.5388e-05 0.000537894 -0.5 +v -2.47174e-05 0.000261729 0.5 +v -2.47174e-05 0.000261729 -0.5 +v 0.999428 -0.0886333 -0.5 +v 0.999428 -0.0886333 0.5 +v 0 0 0.5 +v 0 0 -0.5 +v 3.07731e-05 -0.000269468 0.5 +v 3.07731e-05 -0.000269468 -0.5 +v 6.87839e-05 -0.000551758 0.5 +v 6.87839e-05 -0.000551758 -0.5 +v 0.00011487 -0.000847395 0.5 +v 0.00011487 -0.000847395 -0.5 +v 0.000169958 -0.00115699 0.5 +v 0.000169958 -0.00115699 -0.5 +v 0.000235006 -0.00148084 0.5 +v 0.000235006 -0.00148084 -0.5 +v 0.000311085 -0.00181947 0.5 +v 0.000311085 -0.00181947 -0.5 +v 0.000399343 -0.00217329 0.5 +v 0.000399343 -0.00217329 -0.5 +v 0.000501006 -0.00254265 0.5 +v 0.000501006 -0.00254265 -0.5 +v 0.000617405 -0.00292793 0.5 +v 0.000617405 -0.00292793 -0.5 +v 0.000749918 -0.00332928 0.5 +v 0.000749918 -0.00332928 -0.5 +v 0.000900098 -0.00374706 0.5 +v 0.000900098 -0.00374706 -0.5 +v 0.00106951 -0.00418123 0.5 +v 0.00106951 -0.00418123 -0.5 +v 0.00125981 -0.00463173 0.5 +v 0.00125981 -0.00463173 -0.5 +v 0.00147278 -0.00509836 0.5 +v 0.00147278 -0.00509836 -0.5 +v 0.00171023 -0.00558073 0.5 +v 0.00171023 -0.00558073 -0.5 +v 0.0019741 -0.00607866 0.5 +v 0.0019741 -0.00607866 -0.5 +v 0.00226657 -0.00659235 0.5 +v 0.00226657 -0.00659235 -0.5 +v 0.00258985 -0.00712192 0.5 +v 0.00258985 -0.00712192 -0.5 +v 0.00294625 -0.00766749 0.5 +v 0.00294625 -0.00766749 -0.5 +v 0.0033381 -0.00822888 0.5 +v 0.0033381 -0.00822888 -0.5 +v 0.00376858 -0.00880495 0.5 +v 0.00376858 -0.00880495 -0.5 +v 0.00424144 -0.00939356 0.5 +v 0.00424144 -0.00939356 -0.5 +v 0.0047608 -0.00999197 0.5 +v 0.0047608 -0.00999197 -0.5 +v 0.00533108 -0.0105969 0.5 +v 0.00533108 -0.0105969 -0.5 +v 0.00595465 -0.0112076 0.5 +v 0.00595465 -0.0112076 -0.5 +v 0.00663108 -0.0118268 0.5 +v 0.00663108 -0.0118268 -0.5 +v 0.00735864 -0.0124589 0.5 +v 0.00735864 -0.0124589 -0.5 +v 0.00813479 -0.0131082 0.5 +v 0.00813479 -0.0131082 -0.5 +v 0.00896315 -0.0137726 0.5 +v 0.00896315 -0.0137726 -0.5 +v 0.00985143 -0.0144449 0.5 +v 0.00985143 -0.0144449 -0.5 +v 0.0108089 -0.0151156 0.5 +v 0.0108089 -0.0151156 -0.5 +v 0.0118417 -0.0157801 0.5 +v 0.0118417 -0.0157801 -0.5 +v 0.0129485 -0.0164439 0.5 +v 0.0129485 -0.0164439 -0.5 +v 0.0141258 -0.0171158 0.5 +v 0.0141258 -0.0171158 -0.5 +v 0.0153717 -0.0178024 0.5 +v 0.0153717 -0.0178024 -0.5 +v 0.0166914 -0.0185005 0.5 +v 0.0166914 -0.0185005 -0.5 +v 0.0180921 -0.0192037 0.5 +v 0.0180921 -0.0192037 -0.5 +v 0.01958 -0.019908 0.5 +v 0.01958 -0.019908 -0.5 +v 0.0211576 -0.0206151 0.5 +v 0.0211576 -0.0206151 -0.5 +v 0.0228265 -0.0213288 0.5 +v 0.0228265 -0.0213288 -0.5 +v 0.0245895 -0.0220523 0.5 +v 0.0245895 -0.0220523 -0.5 +v 0.0264506 -0.0227868 0.5 +v 0.0264506 -0.0227868 -0.5 +v 0.028415 -0.0235332 0.5 +v 0.028415 -0.0235332 -0.5 +v 0.0304905 -0.0242814 0.5 +v 0.0304905 -0.0242814 -0.5 +v 0.0326872 -0.0250146 0.5 +v 0.0326872 -0.0250146 -0.5 +v 0.0350128 -0.0257258 0.5 +v 0.0350128 -0.0257258 -0.5 +v 0.0374672 -0.0264333 0.5 +v 0.0374672 -0.0264333 -0.5 +v 0.0400497 -0.0271566 0.5 +v 0.0400497 -0.0271566 -0.5 +v 0.0427704 -0.0278802 0.5 +v 0.0427704 -0.0278802 -0.5 +v 0.0456434 -0.0285739 0.5 +v 0.0456434 -0.0285739 -0.5 +v 0.0486731 -0.0292495 0.5 +v 0.0486731 -0.0292495 -0.5 +v 0.0518554 -0.0299566 0.5 +v 0.0518554 -0.0299566 -0.5 +v 0.0551966 -0.030697 0.5 +v 0.0551966 -0.030697 -0.5 +v 0.0587179 -0.0314085 0.5 +v 0.0587179 -0.0314085 -0.5 +v 0.062431 -0.032078 0.5 +v 0.062431 -0.032078 -0.5 +v 0.0663314 -0.0327743 0.5 +v 0.0663314 -0.0327743 -0.5 +v 0.0704248 -0.033514 0.5 +v 0.0704248 -0.033514 -0.5 +v 0.0747335 -0.0342256 0.5 +v 0.0747335 -0.0342256 -0.5 +v 0.0792714 -0.0348902 0.5 +v 0.0792714 -0.0348902 -0.5 +v 0.0840416 -0.0355492 0.5 +v 0.0840416 -0.0355492 -0.5 +v 0.089054 -0.0362103 0.5 +v 0.089054 -0.0362103 -0.5 +v 0.0943226 -0.0368627 0.5 +v 0.0943226 -0.0368627 -0.5 +v 0.0998603 -0.0375041 0.5 +v 0.0998603 -0.0375041 -0.5 +v 0.105679 -0.0381355 0.5 +v 0.105679 -0.0381355 -0.5 +v 0.111793 -0.0387575 0.5 +v 0.111793 -0.0387575 -0.5 +v 0.118218 -0.0393567 0.5 +v 0.118218 -0.0393567 -0.5 +v 0.124968 -0.0399429 0.5 +v 0.124968 -0.0399429 -0.5 +v 0.132055 -0.0405782 0.5 +v 0.132055 -0.0405782 -0.5 +v 0.1395 -0.0411771 0.5 +v 0.1395 -0.0411771 -0.5 +v 0.147326 -0.041699 0.5 +v 0.147326 -0.041699 -0.5 +v 0.15451 -0.0421969 0.5 +v 0.15451 -0.0421969 -0.5 +v 0.162054 -0.042698 0.5 +v 0.162054 -0.042698 -0.5 +v 0.16998 -0.0431596 0.5 +v 0.16998 -0.0431596 -0.5 +v 0.178305 -0.0435984 0.5 +v 0.178305 -0.0435984 -0.5 +v 0.187045 -0.0440696 0.5 +v 0.187045 -0.0440696 -0.5 +v 0.196223 -0.0445349 0.5 +v 0.196223 -0.0445349 -0.5 +v 0.205864 -0.0449725 0.5 +v 0.205864 -0.0449725 -0.5 +v 0.215985 -0.045448 0.5 +v 0.215985 -0.045448 -0.5 +v 0.226615 -0.0458797 0.5 +v 0.226615 -0.0458797 -0.5 +v 0.237778 -0.0463184 0.5 +v 0.237778 -0.0463184 -0.5 +v 0.249497 -0.0468156 0.5 +v 0.249497 -0.0468156 -0.5 +v 0.261804 -0.0472732 0.5 +v 0.261804 -0.0472732 -0.5 +v 0.274727 -0.0477637 0.5 +v 0.274727 -0.0477637 -0.5 +v 0.288294 -0.0483182 0.5 +v 0.288294 -0.0483182 -0.5 +v 0.302542 -0.0488257 0.5 +v 0.302542 -0.0488257 -0.5 +v 0.317502 -0.0493844 0.5 +v 0.317502 -0.0493844 -0.5 +v 0.33321 -0.0499788 0.5 +v 0.33321 -0.0499788 -0.5 +v 0.349702 -0.0506056 0.5 +v 0.349702 -0.0506056 -0.5 +v 0.367015 -0.0513872 0.5 +v 0.367015 -0.0513872 -0.5 +v 0.385192 -0.0522281 0.5 +v 0.385192 -0.0522281 -0.5 +v 0.404277 -0.0531254 0.5 +v 0.404277 -0.0531254 -0.5 +v 0.424316 -0.0540817 0.5 +v 0.424316 -0.0540817 -0.5 +v 0.445357 -0.0550979 0.5 +v 0.445357 -0.0550979 -0.5 +v 0.467451 -0.0560874 0.5 +v 0.467451 -0.0560874 -0.5 +v 0.490649 -0.0571824 0.5 +v 0.490649 -0.0571824 -0.5 +v 0.51501 -0.0582757 0.5 +v 0.51501 -0.0582757 -0.5 +v 0.540585 -0.0594903 0.5 +v 0.540585 -0.0594903 -0.5 +v 0.567439 -0.0607815 0.5 +v 0.567439 -0.0607815 -0.5 +v 0.595635 -0.0621304 0.5 +v 0.595635 -0.0621304 -0.5 +v 0.625242 -0.0635352 0.5 +v 0.625242 -0.0635352 -0.5 +v 0.649433 -0.0648334 0.5 +v 0.649433 -0.0648334 -0.5 +v 0.672415 -0.0660494 0.5 +v 0.672415 -0.0660494 -0.5 +v 0.694245 -0.0672674 0.5 +v 0.694245 -0.0672674 -0.5 +v 0.714979 -0.0684936 0.5 +v 0.714979 -0.0684936 -0.5 +v 0.734678 -0.0696472 0.5 +v 0.734678 -0.0696472 -0.5 +v 0.753392 -0.070724 0.5 +v 0.753392 -0.070724 -0.5 +v 0.771162 -0.0718742 0.5 +v 0.771162 -0.0718742 -0.5 +v 0.788046 -0.0729552 0.5 +v 0.788046 -0.0729552 -0.5 +v 0.804086 -0.0739668 0.5 +v 0.804086 -0.0739668 -0.5 +v 0.819316 -0.0750462 0.5 +v 0.819316 -0.0750462 -0.5 +v 0.833785 -0.076061 0.5 +v 0.833785 -0.076061 -0.5 +v 0.847532 -0.0770175 0.5 +v 0.847532 -0.0770175 -0.5 +v 0.86059 -0.0779215 0.5 +v 0.86059 -0.0779215 -0.5 +v 0.872998 -0.0787716 0.5 +v 0.872998 -0.0787716 -0.5 +v 0.884776 -0.079698 0.5 +v 0.884776 -0.079698 -0.5 +v 0.89597 -0.0805061 0.5 +v 0.89597 -0.0805061 -0.5 +v 0.906605 -0.0812554 0.5 +v 0.906605 -0.0812554 -0.5 +v 0.916704 -0.0820352 0.5 +v 0.916704 -0.0820352 -0.5 +v 0.926301 -0.0827494 0.5 +v 0.926301 -0.0827494 -0.5 +v 0.935409 -0.0835384 0.5 +v 0.935409 -0.0835384 -0.5 +v 0.944071 -0.0841575 0.5 +v 0.944071 -0.0841575 -0.5 +v 0.952294 -0.0848264 0.5 +v 0.952294 -0.0848264 -0.5 +v 0.960109 -0.0854166 0.5 +v 0.960109 -0.0854166 -0.5 +v 0.967527 -0.0860602 0.5 +v 0.967527 -0.0860602 -0.5 +v 0.97458 -0.0865997 0.5 +v 0.97458 -0.0865997 -0.5 +v 0.981277 -0.0871547 0.5 +v 0.981277 -0.0871547 -0.5 +v 0.987637 -0.0876912 0.5 +v 0.987637 -0.0876912 -0.5 +v 0.993684 -0.0881407 0.5 +v 0.993684 -0.0881407 -0.5 +# + +# +g WALL10 +f 1 2 3 +f 3 4 1 +f 4 3 5 +f 5 6 4 +f 6 5 7 +f 7 8 6 +f 8 7 9 +f 9 10 8 +f 10 9 11 +f 11 12 10 +f 12 11 13 +f 13 14 12 +f 14 13 15 +f 15 16 14 +f 16 15 17 +f 17 18 16 +f 18 17 19 +f 19 20 18 +f 20 19 21 +f 21 22 20 +f 22 21 23 +f 23 24 22 +f 24 23 25 +f 25 26 24 +f 26 25 27 +f 27 28 26 +f 28 27 29 +f 29 30 28 +f 30 29 31 +f 31 32 30 +f 32 31 33 +f 33 34 32 +f 34 33 35 +f 35 36 34 +f 36 35 37 +f 37 38 36 +f 38 37 39 +f 39 40 38 +f 40 39 41 +f 41 42 40 +f 42 41 43 +f 43 44 42 +f 44 43 45 +f 45 46 44 +f 46 45 47 +f 47 48 46 +f 48 47 49 +f 49 50 48 +f 50 49 51 +f 51 52 50 +f 52 51 53 +f 53 54 52 +f 54 53 55 +f 55 56 54 +f 56 55 57 +f 57 58 56 +f 58 57 59 +f 59 60 58 +f 60 59 61 +f 61 62 60 +f 62 61 63 +f 63 64 62 +f 64 63 65 +f 65 66 64 +f 66 65 67 +f 67 68 66 +f 68 67 69 +f 69 70 68 +f 70 69 71 +f 71 72 70 +f 72 71 73 +f 73 74 72 +f 74 73 75 +f 75 76 74 +f 76 75 77 +f 77 78 76 +f 78 77 79 +f 79 80 78 +f 80 79 81 +f 81 82 80 +f 82 81 83 +f 83 84 82 +f 84 83 85 +f 85 86 84 +f 86 85 87 +f 87 88 86 +f 88 87 89 +f 89 90 88 +f 90 89 91 +f 91 92 90 +f 92 91 93 +f 93 94 92 +f 94 93 95 +f 95 96 94 +f 96 95 97 +f 97 98 96 +f 98 97 99 +f 99 100 98 +f 100 99 101 +f 101 102 100 +f 102 101 103 +f 103 104 102 +f 104 103 105 +f 105 106 104 +f 106 105 107 +f 107 108 106 +f 108 107 109 +f 109 110 108 +f 110 109 111 +f 111 112 110 +f 112 111 113 +f 113 114 112 +f 114 113 115 +f 115 116 114 +f 116 115 117 +f 117 118 116 +f 118 117 119 +f 119 120 118 +f 120 119 121 +f 121 122 120 +f 122 121 123 +f 123 124 122 +f 124 123 125 +f 125 126 124 +f 126 125 127 +f 127 128 126 +f 128 127 129 +f 129 130 128 +f 130 129 131 +f 131 132 130 +f 132 131 133 +f 133 134 132 +f 134 133 135 +f 135 136 134 +f 136 135 137 +f 137 138 136 +f 138 137 139 +f 139 140 138 +f 140 139 141 +f 141 142 140 +f 142 141 143 +f 143 144 142 +f 144 143 145 +f 145 146 144 +f 146 145 147 +f 147 148 146 +f 148 147 149 +f 149 150 148 +f 150 149 151 +f 151 152 150 +f 152 151 153 +f 153 154 152 +f 154 153 155 +f 155 156 154 +f 156 155 157 +f 157 158 156 +f 158 157 159 +f 159 160 158 +f 160 159 161 +f 161 162 160 +f 162 161 163 +f 163 164 162 +f 164 163 165 +f 165 166 164 +f 166 165 167 +f 167 168 166 +f 168 167 169 +f 169 170 168 +f 170 169 171 +f 171 172 170 +f 172 171 173 +f 173 174 172 +f 174 173 175 +f 175 176 174 +f 176 175 177 +f 177 178 176 +f 178 177 179 +f 179 180 178 +f 180 179 181 +f 181 182 180 +f 182 181 183 +f 183 184 182 +f 184 183 185 +f 185 186 184 +f 186 185 187 +f 187 188 186 +f 188 187 189 +f 189 190 188 +f 190 189 191 +f 191 192 190 +f 192 191 193 +f 193 194 192 +f 194 193 195 +f 195 196 194 +f 196 195 197 +f 197 198 196 +f 198 197 199 +f 199 200 198 +f 200 199 201 +f 201 202 200 +f 202 201 203 +f 203 204 202 +f 204 203 205 +f 205 206 204 +f 206 205 207 +f 207 208 206 +f 208 207 209 +f 209 210 208 +f 210 209 211 +f 211 212 210 +f 212 211 213 +f 213 214 212 +f 214 213 215 +f 215 216 214 +f 216 215 217 +f 217 218 216 +f 218 217 219 +f 219 220 218 +f 220 219 221 +f 221 222 220 +f 222 221 223 +f 223 224 222 +f 224 223 225 +f 225 226 224 +f 226 225 227 +f 227 228 226 +f 228 227 229 +f 229 230 228 +f 230 229 231 +f 231 232 230 +f 232 231 233 +f 233 234 232 +f 234 233 235 +f 235 236 234 +f 236 235 237 +f 237 238 236 +f 238 237 239 +f 239 240 238 +f 240 239 241 +f 241 242 240 +f 242 241 243 +f 243 244 242 +f 244 243 245 +f 245 246 244 +f 246 245 247 +f 247 248 246 +f 248 247 249 +f 249 250 248 +f 250 249 251 +f 251 252 250 +f 252 251 253 +f 253 254 252 +f 254 253 255 +f 255 256 254 +f 256 255 257 +f 257 258 256 +f 258 257 259 +f 259 260 258 +f 261 262 2 +f 2 1 261 +f 260 259 263 +f 263 264 260 +f 264 263 265 +f 265 266 264 +f 266 265 267 +f 267 268 266 +f 268 267 269 +f 269 270 268 +f 270 269 271 +f 271 272 270 +f 272 271 273 +f 273 274 272 +f 274 273 275 +f 275 276 274 +f 276 275 277 +f 277 278 276 +f 278 277 279 +f 279 280 278 +f 280 279 281 +f 281 282 280 +f 282 281 283 +f 283 284 282 +f 284 283 285 +f 285 286 284 +f 286 285 287 +f 287 288 286 +f 288 287 289 +f 289 290 288 +f 290 289 291 +f 291 292 290 +f 292 291 293 +f 293 294 292 +f 294 293 295 +f 295 296 294 +f 296 295 297 +f 297 298 296 +f 298 297 299 +f 299 300 298 +f 300 299 301 +f 301 302 300 +f 302 301 303 +f 303 304 302 +f 304 303 305 +f 305 306 304 +f 306 305 307 +f 307 308 306 +f 308 307 309 +f 309 310 308 +f 310 309 311 +f 311 312 310 +f 312 311 313 +f 313 314 312 +f 314 313 315 +f 315 316 314 +f 316 315 317 +f 317 318 316 +f 318 317 319 +f 319 320 318 +f 320 319 321 +f 321 322 320 +f 322 321 323 +f 323 324 322 +f 324 323 325 +f 325 326 324 +f 326 325 327 +f 327 328 326 +f 328 327 329 +f 329 330 328 +f 330 329 331 +f 331 332 330 +f 332 331 333 +f 333 334 332 +f 334 333 335 +f 335 336 334 +f 336 335 337 +f 337 338 336 +f 338 337 339 +f 339 340 338 +f 340 339 341 +f 341 342 340 +f 342 341 343 +f 343 344 342 +f 344 343 345 +f 345 346 344 +f 346 345 347 +f 347 348 346 +f 348 347 349 +f 349 350 348 +f 350 349 351 +f 351 352 350 +f 352 351 353 +f 353 354 352 +f 354 353 355 +f 355 356 354 +f 356 355 357 +f 357 358 356 +f 358 357 359 +f 359 360 358 +f 360 359 361 +f 361 362 360 +f 362 361 363 +f 363 364 362 +f 364 363 365 +f 365 366 364 +f 366 365 367 +f 367 368 366 +f 368 367 369 +f 369 370 368 +f 370 369 371 +f 371 372 370 +f 372 371 373 +f 373 374 372 +f 374 373 375 +f 375 376 374 +f 376 375 377 +f 377 378 376 +f 378 377 379 +f 379 380 378 +f 380 379 381 +f 381 382 380 +f 382 381 383 +f 383 384 382 +f 384 383 385 +f 385 386 384 +f 386 385 387 +f 387 388 386 +f 388 387 389 +f 389 390 388 +f 390 389 391 +f 391 392 390 +f 392 391 393 +f 393 394 392 +f 394 393 395 +f 395 396 394 +f 396 395 397 +f 397 398 396 +f 398 397 399 +f 399 400 398 +f 400 399 401 +f 401 402 400 +f 402 401 403 +f 403 404 402 +f 404 403 405 +f 405 406 404 +f 406 405 407 +f 407 408 406 +f 408 407 409 +f 409 410 408 +f 410 409 411 +f 411 412 410 +f 412 411 413 +f 413 414 412 +f 414 413 415 +f 415 416 414 +f 416 415 417 +f 417 418 416 +f 418 417 419 +f 419 420 418 +f 420 419 421 +f 421 422 420 +f 422 421 423 +f 423 424 422 +f 424 423 425 +f 425 426 424 +f 426 425 427 +f 427 428 426 +f 428 427 429 +f 429 430 428 +f 430 429 431 +f 431 432 430 +f 432 431 433 +f 433 434 432 +f 434 433 435 +f 435 436 434 +f 436 435 437 +f 437 438 436 +f 438 437 439 +f 439 440 438 +f 440 439 441 +f 441 442 440 +f 442 441 443 +f 443 444 442 +f 444 443 445 +f 445 446 444 +f 446 445 447 +f 447 448 446 +f 448 447 449 +f 449 450 448 +f 450 449 451 +f 451 452 450 +f 452 451 453 +f 453 454 452 +f 454 453 455 +f 455 456 454 +f 456 455 457 +f 457 458 456 +f 458 457 459 +f 459 460 458 +f 460 459 461 +f 461 462 460 +f 462 461 463 +f 463 464 462 +f 464 463 465 +f 465 466 464 +f 466 465 467 +f 467 468 466 +f 468 467 469 +f 469 470 468 +f 470 469 471 +f 471 472 470 +f 472 471 473 +f 473 474 472 +f 474 473 475 +f 475 476 474 +f 476 475 477 +f 477 478 476 +f 478 477 479 +f 479 480 478 +f 480 479 481 +f 481 482 480 +f 482 481 483 +f 483 484 482 +f 484 483 485 +f 485 486 484 +f 486 485 487 +f 487 488 486 +f 488 487 489 +f 489 490 488 +f 490 489 491 +f 491 492 490 +f 492 491 493 +f 493 494 492 +f 494 493 495 +f 495 496 494 +f 496 495 497 +f 497 498 496 +f 498 497 499 +f 499 500 498 +f 500 499 501 +f 501 502 500 +f 502 501 503 +f 503 504 502 +f 504 503 505 +f 505 506 504 +f 506 505 507 +f 507 508 506 +f 508 507 509 +f 509 510 508 +f 510 509 511 +f 511 512 510 +f 512 511 513 +f 513 514 512 +f 514 513 515 +f 515 516 514 +f 516 515 517 +f 517 518 516 +f 518 517 519 +f 519 520 518 +f 520 519 262 +f 262 261 520 +# diff --git a/tutorials/incompressible/pimpleDyMFoam/wingFlutter/wingFlutter_snappyHexMesh/system/controlDict b/tutorials/incompressible/pimpleDyMFoam/wingFlutter/wingFlutter_snappyHexMesh/system/controlDict new file mode 100644 index 0000000000..1259284a3d --- /dev/null +++ b/tutorials/incompressible/pimpleDyMFoam/wingFlutter/wingFlutter_snappyHexMesh/system/controlDict @@ -0,0 +1,50 @@ +/*--------------------------------*- C++ -*----------------------------------*\ +| ========= | | +| \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | +| \\ / O peration | Version: 1.6 | +| \\ / A nd | Web: www.OpenFOAM.org | +| \\/ M anipulation | | +\*---------------------------------------------------------------------------*/ +FoamFile +{ + version 2.0; + format ascii; + class dictionary; + location "system"; + object controlDict; +} +// * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * // + +application snappyHexMesh; + +startFrom latestTime; + +startTime 0; + +stopAt endTime; + +endTime 100; + +deltaT 1; + +writeControl runTime; + +writeInterval 1; + +purgeWrite 0; + +writeFormat ascii; + +writePrecision 6; + +writeCompression off; + +timeFormat general; + +timePrecision 6; + +runTimeModifiable true; + +} + +// ************************************************************************* // diff --git a/tutorials/incompressible/pimpleDyMFoam/wingFlutter/wingFlutter_snappyHexMesh/system/decomposeParDict b/tutorials/incompressible/pimpleDyMFoam/wingFlutter/wingFlutter_snappyHexMesh/system/decomposeParDict new file mode 100644 index 0000000000..2dc0a0a25e --- /dev/null +++ b/tutorials/incompressible/pimpleDyMFoam/wingFlutter/wingFlutter_snappyHexMesh/system/decomposeParDict @@ -0,0 +1,45 @@ +/*--------------------------------*- C++ -*----------------------------------*\ +| ========= | | +| \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | +| \\ / O peration | Version: 1.6 | +| \\ / A nd | Web: www.OpenFOAM.org | +| \\/ M anipulation | | +\*---------------------------------------------------------------------------*/ +FoamFile +{ + version 2.0; + format ascii; + class dictionary; + location "system"; + object decomposeParDict; +} +// * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * // + +numberOfSubdomains 3; + +method simple; + +simpleCoeffs +{ + n ( 1 3 1 ); + delta 0.001; +} + +hierarchicalCoeffs +{ + n ( 3 2 1 ); + delta 0.001; + order xyz; +} + +manualCoeffs +{ + dataFile "cellDecomposition"; +} + +metisCoeffs +{ +} + + +// ************************************************************************* // diff --git a/tutorials/incompressible/pimpleDyMFoam/wingFlutter/wingFlutter_snappyHexMesh/system/fvSchemes b/tutorials/incompressible/pimpleDyMFoam/wingFlutter/wingFlutter_snappyHexMesh/system/fvSchemes new file mode 100644 index 0000000000..ae2773bf84 --- /dev/null +++ b/tutorials/incompressible/pimpleDyMFoam/wingFlutter/wingFlutter_snappyHexMesh/system/fvSchemes @@ -0,0 +1,70 @@ +/*--------------------------------*- C++ -*----------------------------------*\ +| ========= | | +| \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | +| \\ / O peration | Version: 1.6 | +| \\ / A nd | Web: www.OpenFOAM.org | +| \\/ M anipulation | | +\*---------------------------------------------------------------------------*/ +FoamFile +{ + version 2.0; + format ascii; + class dictionary; + location "system"; + object fvSchemes; +} +// * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * // + +ddtSchemes +{ + default Euler; +} + +gradSchemes +{ + default Gauss linear; +} + +divSchemes +{ + default none; + div(phi,U) Gauss limitedLinearV 1; + div(phi,k) Gauss upwind; + div(phi,epsilon) Gauss upwind; + div(phi,R) Gauss upwind; + div(R) Gauss linear; + div(phid,p) Gauss limitedLinear 1; + div(phiU,p) Gauss limitedLinear 1; + div(phi,e) Gauss limitedLinear 1; + div((muEff*dev2(grad(U).T()))) Gauss linear; +} + +laplacianSchemes +{ + default none; + laplacian(muEff,U) Gauss linear limited 0.5; + laplacian(DkEff,k) Gauss linear limited 0.5; + laplacian(DREff,R) Gauss linear limited 0.5; + laplacian(DepsilonEff,epsilon) Gauss linear limited 0.5; + laplacian((rho*(1|A(U))),p) Gauss linear limited 0.5; + laplacian(alphaEff,e) Gauss linear limited 0.5; +} + +interpolationSchemes +{ + default linear; +} + +snGradSchemes +{ + default corrected; +} + +fluxRequired +{ + default no; + p; +} + + +// ************************************************************************* // diff --git a/tutorials/incompressible/pimpleDyMFoam/wingFlutter/wingFlutter_snappyHexMesh/system/fvSolution b/tutorials/incompressible/pimpleDyMFoam/wingFlutter/wingFlutter_snappyHexMesh/system/fvSolution new file mode 100644 index 0000000000..d85a6d5e98 --- /dev/null +++ b/tutorials/incompressible/pimpleDyMFoam/wingFlutter/wingFlutter_snappyHexMesh/system/fvSolution @@ -0,0 +1,51 @@ +/*--------------------------------*- C++ -*----------------------------------*\ +| ========= | | +| \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | +| \\ / O peration | Version: 1.6 | +| \\ / A nd | Web: www.OpenFOAM.org | +| \\/ M anipulation | | +\*---------------------------------------------------------------------------*/ +FoamFile +{ + version 2.0; + format ascii; + class dictionary; + location "system"; + object fvSolution; +} +// * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * // + +solvers +{ + p + { + solver PBiCG; + preconditioner DILU; + tolerance 1e-12; + relTol 0; + } + + rho + { + solver PCG; + preconditioner DIC; + tolerance 1e-08; + relTol 0; + } + + "(U|e|k|epsilon|R)" + { + $p; + tolerance 1e-08; + relTol 0; + } +} + +PISO +{ + nCorrectors 2; + nNonOrthogonalCorrectors 2; +} + + +// ************************************************************************* // diff --git a/tutorials/incompressible/pimpleDyMFoam/wingFlutter/wingFlutter_snappyHexMesh/system/snappyHexMeshDict b/tutorials/incompressible/pimpleDyMFoam/wingFlutter/wingFlutter_snappyHexMesh/system/snappyHexMeshDict new file mode 100644 index 0000000000..2300d79207 --- /dev/null +++ b/tutorials/incompressible/pimpleDyMFoam/wingFlutter/wingFlutter_snappyHexMesh/system/snappyHexMeshDict @@ -0,0 +1,326 @@ +/*--------------------------------*- C++ -*----------------------------------*\ +| ========= | | +| \\ / F ield | OpenFOAM: The Open Source CFD Toolbox | +| \\ / O peration | Version: 1.6 | +| \\ / A nd | Web: http://www.OpenFOAM.org | +| \\/ M anipulation | | +\*---------------------------------------------------------------------------*/ +FoamFile +{ + version 2.0; + format ascii; + class dictionary; + object snappyHexMeshDict; +} +// * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * // + +// Which of the steps to run +castellatedMesh true; +snap true; +addLayers true; + + +// Geometry. Definition of all surfaces. All surfaces are of class +// searchableSurface. +// Surfaces are used +// - to specify refinement for any mesh cell intersecting it +// - to specify refinement for any mesh cell inside/outside/near +// - to 'snap' the mesh boundary to the surface +geometry +{ + wing_5degrees.obj + { + type triSurfaceMesh; + } + + refinementBox + { + type searchableBox; + min (-1 -1 -1); + max ( 5 1 1); + } +}; + + + +// Settings for the castellatedMesh generation. +castellatedMeshControls +{ + + // Refinement parameters + // ~~~~~~~~~~~~~~~~~~~~~ + + // If local number of cells is >= maxLocalCells on any processor + // switches from from refinement followed by balancing + // (current method) to (weighted) balancing before refinement. + maxLocalCells 1000000; + + // Overall cell limit (approximately). Refinement will stop immediately + // upon reaching this number so a refinement level might not complete. + // Note that this is the number of cells before removing the part which + // is not 'visible' from the keepPoint. The final number of cells might + // actually be a lot less. + maxGlobalCells 2000000; + + // The surface refinement loop might spend lots of iterations refining just a + // few cells. This setting will cause refinement to stop if <= minimumRefine + // are selected for refinement. Note: it will at least do one iteration + // (unless the number of cells to refine is 0) + minRefinementCells 100; + + // Number of buffer layers between different levels. + // 1 means normal 2:1 refinement restriction, larger means slower + // refinement. + nCellsBetweenLevels 6; + + + + // Explicit feature edge refinement + // ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ + + // Specifies a level for any cell intersected by its edges. + // This is a featureEdgeMesh, read from constant/triSurface for now. + features (); + + + + // Surface based refinement + // ~~~~~~~~~~~~~~~~~~~~~~~~ + + // Specifies two levels for every surface. The first is the minimum level, + // every cell intersecting a surface gets refined up to the minimum level. + // The second level is the maximum level. Cells that 'see' multiple + // intersections where the intersections make an + // angle > resolveFeatureAngle get refined up to the maximum level. + + refinementSurfaces + { + wing_5degrees.obj + { + // Surface-wise min and max refinement level + level (6 6); + } + } + + // Resolve sharp angles on fridges + resolveFeatureAngle 30; + + + // Region-wise refinement + // ~~~~~~~~~~~~~~~~~~~~~~ + + // Specifies refinement level for cells in relation to a surface. One of + // three modes + // - distance. 'levels' specifies per distance to the surface the + // wanted refinement level. The distances need to be specified in + // descending order. + // - inside. 'levels' is only one entry and only the level is used. All + // cells inside the surface get refined up to the level. The surface + // needs to be closed for this to be possible. + // - outside. Same but cells outside. + + refinementRegions + { + refinementBox + { + mode inside; + levels ((1e15 3)); + } + } + + + // Mesh selection + // ~~~~~~~~~~~~~~ + + // After refinement patches get added for all refinementSurfaces and + // all cells intersecting the surfaces get put into these patches. The + // section reachable from the locationInMesh is kept. + // NOTE: This point should never be on a face, always inside a cell, even + // after refinement. + locationInMesh (-0.5 0 0); + + + // Whether any faceZones (as specified in the refinementSurfaces) + // are only on the boundary of corresponding cellZones or also allow + // free-standing zone faces. Not used if there are no faceZones. + allowFreeStandingZoneFaces true; +} + + + +// Settings for the snapping. +snapControls +{ + //- Number of patch smoothing iterations before finding correspondence + // to surface + nSmoothPatch 3; + + //- Relative distance for points to be attracted by surface feature point + // or edge. True distance is this factor times local + // maximum edge length. + tolerance 4.0; + + //- Number of mesh displacement relaxation iterations. + nSolveIter 30; + + //- Maximum number of snapping relaxation iterations. Should stop + // before upon reaching a correct mesh. + nRelaxIter 5; +} + + + +// Settings for the layer addition. +addLayersControls +{ + // Are the thickness parameters below relative to the undistorted + // size of the refined cell outside layer (true) or absolute sizes (false). + relativeSizes true; + + // Per final patch (so not geometry!) the layer information + layers + { + "wing.*" + { + nSurfaceLayers 3; + } + } + + // Expansion factor for layer mesh + expansionRatio 1.3; + + //- Wanted thickness of final added cell layer. If multiple layers + // is the + // thickness of the layer furthest away from the wall. + // Relative to undistorted size of cell outside layer. + // is the thickness of the layer furthest away from the wall. + // See relativeSizes parameter. + finalLayerThickness 0.7; + + //- Minimum thickness of cell layer. If for any reason layer + // cannot be above minThickness do not add layer. + // Relative to undistorted size of cell outside layer. + // See relativeSizes parameter. + minThickness 0.25; + + //- If points get not extruded do nGrow layers of connected faces that are + // also not grown. This helps convergence of the layer addition process + // close to features. + nGrow 0; + + + // Advanced settings + + //- When not to extrude surface. 0 is flat surface, 90 is when two faces + // make straight angle. + featureAngle 60; + + //- Maximum number of snapping relaxation iterations. Should stop + // before upon reaching a correct mesh. + nRelaxIter 5; + + // Number of smoothing iterations of surface normals + nSmoothSurfaceNormals 1; + + // Number of smoothing iterations of interior mesh movement direction + nSmoothNormals 3; + + // Smooth layer thickness over surface patches + nSmoothThickness 10; + + // Stop layer growth on highly warped cells + maxFaceThicknessRatio 0.5; + + // Reduce layer growth where ratio thickness to medial + // distance is large + maxThicknessToMedialRatio 0.3; + + // Angle used to pick up medial axis points + // Note: changed(corrected) w.r.t 16x! 90 degrees corresponds to 130 in 16x. + minMedianAxisAngle 90; + + // Create buffer region for new layer terminations + nBufferCellsNoExtrude 0; + + + // Overall max number of layer addition iterations. The mesher will exit + // if it reaches this number of iterations; possibly with an illegal + // mesh. + nLayerIter 50; +} + + + +// Generic mesh quality settings. At any undoable phase these determine +// where to undo. +meshQualityControls +{ + //- Maximum non-orthogonality allowed. Set to 180 to disable. + maxNonOrtho 65; + + //- Max skewness allowed. Set to <0 to disable. + maxBoundarySkewness 20; + maxInternalSkewness 4; + + //- Max concaveness allowed. Is angle (in degrees) below which concavity + // is allowed. 0 is straight face, <0 would be convex face. + // Set to 180 to disable. + maxConcave 80; + + //- Minimum pyramid volume. Is absolute volume of cell pyramid. + // Set to a sensible fraction of the smallest cell volume expected. + // Set to very negative number (e.g. -1E30) to disable. + minVol 1e-13; + + //- Minimum tet volume. Is absolute volume of the tet formed by the + // face-centre decomposition triangle and the cell centre. + // Set to a sensible fraction of the smallest cell volume expected. + // Set to very negative number (e.g. -1E30) to disable. + minTetVol 1e-20; + + //- Minimum face area. Set to <0 to disable. + minArea -1; + + //- Minimum face twist. Set to <-1 to disable. dot product of face normal + //- and face centre triangles normal + minTwist 0.05; + + //- minimum normalised cell determinant + //- 1 = hex, <= 0 = folded or flattened illegal cell + minDeterminant 0.001; + + //- minFaceWeight (0 -> 0.5) + minFaceWeight 0.05; + + //- minVolRatio (0 -> 1) + minVolRatio 0.01; + + //must be >0 for Fluent compatibility + minTriangleTwist -1; + + + // Advanced + + //- Number of error distribution iterations + nSmoothScale 4; + //- amount to scale back displacement at error points + errorReduction 0.75; +} + + +// Advanced + +// Flags for optional output +// 0 : only write final meshes +// 1 : write intermediate meshes +// 2 : write volScalarField with cellLevel for postprocessing +// 4 : write current intersections as .obj files +debug 0; + + +// Merge tolerance. Is fraction of overall bounding box of initial mesh. +// Note: the write tolerance needs to be higher than this. +mergeTolerance 1E-6; + + +// ************************************************************************* // From 7e05548ec035285d60f3d61f47b41cf5ca558b95 Mon Sep 17 00:00:00 2001 From: mattijs Date: Fri, 14 May 2010 17:55:23 +0100 Subject: [PATCH 50/57] BUG: TimeActivatedExplicitSource : absolute source incorrect. Also added cellZone and all as source selection mechanism. --- .../TimeActivatedExplicitSource.C | 70 +++++++++++++------ .../TimeActivatedExplicitSource.H | 33 ++++----- .../TimeActivatedExplicitSourceI.H | 13 ++-- 3 files changed, 73 insertions(+), 43 deletions(-) diff --git a/src/finiteVolume/cfdTools/general/fieldSources/timeActivatedExplicitSource/TimeActivatedExplicitSource.C b/src/finiteVolume/cfdTools/general/fieldSources/timeActivatedExplicitSource/TimeActivatedExplicitSource.C index b8fbe54a89..1873bbe3fe 100644 --- a/src/finiteVolume/cfdTools/general/fieldSources/timeActivatedExplicitSource/TimeActivatedExplicitSource.C +++ b/src/finiteVolume/cfdTools/general/fieldSources/timeActivatedExplicitSource/TimeActivatedExplicitSource.C @@ -33,7 +33,7 @@ template const Foam::wordList Foam::TimeActivatedExplicitSource:: selectionModeTypeNames_ ( - IStringStream("(points cellSet)")() + IStringStream("(points cellSet cellZone all)")() ); @@ -156,6 +156,15 @@ void Foam::TimeActivatedExplicitSource::setSelection dict.lookup("cellSet") >> cellSetName_; break; } + case smCellZone: + { + dict.lookup("cellZone") >> cellSetName_; + break; + } + case smAll: + { + break; + } default: { FatalErrorIn @@ -221,13 +230,14 @@ void Foam::TimeActivatedExplicitSource::setCellSet() { Info<< indent << "- selecting cells using points" << endl; - labelHashSet cellOwners; + labelHashSet selectedCells; + forAll(points_, i) { label cellI = mesh_.findCell(points_[i]); if (cellI >= 0) { - cellOwners.insert(cellI); + selectedCells.insert(cellI); } label globalCellI = returnReduce(cellI, maxOp