Skip to content
GitLab
Projects
Groups
Snippets
Help
Loading...
Help
What's new
10
Help
Support
Community forum
Keyboard shortcuts
?
Submit feedback
Contribute to GitLab
Sign in
Toggle navigation
Open sidebar
Backofen, Rainer
amdis
Commits
a84838be
Commit
a84838be
authored
Jun 07, 2010
by
Thomas Witkowski
Browse files
Options
Browse Files
Download
Email Patches
Plain Diff
Removed MATRIX_OPERATOR and VECTOR_OPERATOR tags, which are now obsolete.
parent
d307a2bf
Changes
20
Hide whitespace changes
Inline
Side-by-side
Showing
20 changed files
with
103 additions
and
175 deletions
+103
-175
AMDiS/libtool
AMDiS/libtool
+32
-32
AMDiS/src/Operator.cc
AMDiS/src/Operator.cc
+13
-1
AMDiS/src/Operator.h
AMDiS/src/Operator.h
+10
-35
AMDiS/src/ProblemVec.cc
AMDiS/src/ProblemVec.cc
+0
-8
AMDiS/src/ProblemVec.h
AMDiS/src/ProblemVec.h
+0
-11
AMDiS/src/RobinBC.cc
AMDiS/src/RobinBC.cc
+6
-8
demo/src/ball.cc
demo/src/ball.cc
+3
-5
demo/src/bunny.cc
demo/src/bunny.cc
+4
-11
demo/src/couple.cc
demo/src/couple.cc
+4
-4
demo/src/ellipt.cc
demo/src/ellipt.cc
+2
-2
demo/src/heat.cc
demo/src/heat.cc
+3
-5
demo/src/neumann.cc
demo/src/neumann.cc
+2
-2
demo/src/parallelellipt.cc
demo/src/parallelellipt.cc
+2
-2
demo/src/parallelheat.cc
demo/src/parallelheat.cc
+3
-14
demo/src/parametric.cc
demo/src/parametric.cc
+2
-4
demo/src/periodic.cc
demo/src/periodic.cc
+2
-2
demo/src/sphere.cc
demo/src/sphere.cc
+3
-8
demo/src/torus.cc
demo/src/torus.cc
+2
-4
demo/src/vecellipt.cc
demo/src/vecellipt.cc
+4
-7
demo/src/vecheat.cc
demo/src/vecheat.cc
+6
-10
No files found.
AMDiS/libtool
View file @
a84838be
...
...
@@ -30,10 +30,10 @@
# the same distribution terms that you use for the rest of that program.
# A sed program that does not truncate output.
SED
=
"/
usr/
bin/sed"
SED
=
"/bin/sed"
# Sed that helps us avoid accidentally triggering echo(1) options like -n.
Xsed
=
"/
usr/
bin/sed -e 1s/^X//"
Xsed
=
"/bin/sed -e 1s/^X//"
# The HP-UX ksh and POSIX shell print the target directory to stdout
# if CDPATH is set.
...
...
@@ -44,7 +44,7 @@ available_tags=" CXX F77"
# ### BEGIN LIBTOOL CONFIG
# Libtool was configured on host
p2q079
:
# Libtool was configured on host
NWRW15
:
# Shell to use when invoking shell scripts.
SHELL
=
"/bin/sh"
...
...
@@ -66,12 +66,12 @@ fast_install=yes
# The host system.
host_alias
=
host
=
x86_64-unknown
-linux-gnu
host
=
i686-pc
-linux-gnu
host_os
=
linux-gnu
# The build system.
build_alias
=
build
=
x86_64-unknown
-linux-gnu
build
=
i686-pc
-linux-gnu
build_os
=
linux-gnu
# An echo program that does not interpret backslashes.
...
...
@@ -82,13 +82,13 @@ AR="ar"
AR_FLAGS
=
"cru"
# A C compiler.
LTCC
=
"
/licsoft/libraries/openmpi/1.2.6/64bit/bin/mpi
cc"
LTCC
=
"
g
cc"
# LTCC compiler flags.
LTCFLAGS
=
"-g -O2"
# A language-specific compiler.
CC
=
"
/licsoft/libraries/openmpi/1.2.6/64bit/bin/mpi
cc"
CC
=
"
g
cc"
# Is the compiler the GNU C compiler?
with_gcc
=
yes
...
...
@@ -97,7 +97,7 @@ with_gcc=yes
EGREP
=
"grep -E"
# The linker used to build libraries.
LD
=
"/usr/
x86_64-suse-linux/bin/ld -m elf_x86_64
"
LD
=
"/usr/
bin/ld
"
# Whether we need hard or soft links.
LN_S
=
"ln -s"
...
...
@@ -171,7 +171,7 @@ dlopen_self=unknown
dlopen_self_static
=
unknown
# Compiler flag to prevent dynamic linking.
link_static_flag
=
""
link_static_flag
=
"
-static
"
# Compiler flag to turn off builtin functions.
no_builtin_flag
=
" -fno-builtin"
...
...
@@ -325,10 +325,10 @@ variables_saved_for_relink="PATH LD_LIBRARY_PATH LD_RUN_PATH GCC_EXEC_PREFIX COM
link_all_deplibs
=
unknown
# Compile-time system search path for libraries
sys_lib_search_path_spec
=
" /
fastfs/wir/local/lib/x86_64-suse
-linux/4.1.2/ /
fastfs/wir
/local/lib/
../lib64/
/usr/lib
64
/gcc/
x86_64-suse
-linux/4.1.2/ /usr/lib/gcc/
x86_64-suse
-linux/4.1.2/ /usr/lib
64
/gcc/
x86_64-suse
-linux/4.1.2/../../../../
x86_64-suse-linux/lib/x86_64-suse
-linux/4.1.2/ /usr/lib
64
/gcc/
x86_64-suse
-linux/4.1.2/../../../../
x86_64-suse
-linux/lib/
../lib64/
/usr/lib
64
/gcc/
x86_64-suse
-linux/4.1.2/../../../
x86_64-suse
-linux/4.1.2/ /usr/lib
64
/gcc/
x86_64-suse
-linux/4.1.2/../../../
../lib64/ /lib/x86_64-suse-linux/4.1.2/ /lib/../lib64/ /usr/lib/x86_64-suse-linux/4.1.2/ /usr/lib/../lib64/ /fastfs/wir/local/lib/ /usr/lib64/gcc/x86_64-suse-linux/4.1.2/../../../../x86_64-suse-linux/lib/ /usr/lib64/gcc/x86_64-suse-linux/4.1.2/../../../ /lib
/ /usr/lib/"
sys_lib_search_path_spec
=
" /
u/witkowski/local/lib/i386-redhat
-linux/4.1.2/ /
u/witkowski
/local/lib/ /usr/lib/gcc/
i386-redhat
-linux/4.1.2/ /usr/lib/gcc/
i386-redhat
-linux/4.1.2/ /usr/lib/gcc/
i386-redhat
-linux/4.1.2/../../../../
i386-redhat-linux/lib/i386-redhat
-linux/4.1.2/ /usr/lib/gcc/
i386-redhat
-linux/4.1.2/../../../../
i386-redhat
-linux/lib/ /usr/lib/gcc/
i386-redhat
-linux/4.1.2/../../../
i386-redhat
-linux/4.1.2/ /usr/lib/gcc/
i386-redhat
-linux/4.1.2/../../../
/lib/i386-redhat-linux/4.1.2/ /lib/ /usr/lib/i386-redhat-linux/4.1.2
/ /usr/lib/"
# Run-time system search path for libraries
sys_lib_dlsearch_path_spec
=
"/lib /usr/lib /usr/
X11R6/lib64/Xaw3d /usr/X11R6/lib64 /usr/X11R6/lib/Xaw3d /usr/X11R6/lib /usr/x86_64-suse-linux/lib /usr/local/lib64 /usr/local/lib /opt/kde3/lib64 /opt/kde3/lib /opt/gnome/lib64 /opt/gnome/lib /lib64 /lib /usr/lib64 /usr/lib /opt/cluster/intel/cce/9.1.042/lib /opt/cluster/intel/fce/9.1.036/lib /opt/cluster/Pathscale3.0/lib/2.9.99 /opt/cluster/Pathscale
3.
0
/lib
/2.9.99/32 /work/licsoft/compilers/pgi/linux86-64/6.2/lib /work/licsoft/compilers/pgi/linux86-64/6.2
/lib
so
"
sys_lib_dlsearch_path_spec
=
"/lib /usr/lib /usr/
lib/octave-2.9.9 /usr/lib/qt-
3.
3
/lib
/usr/lib/qt4
/lib "
# Fix the shell variable $srcfile for the compiler.
fix_srcfile_path
=
""
...
...
@@ -6760,7 +6760,7 @@ build_old_libs=`case $build_libtool_libs in yes) $echo no;; *) $echo yes;; esac`
# End:
# ### BEGIN LIBTOOL TAG CONFIG: CXX
# Libtool was configured on host
p2q079
:
# Libtool was configured on host
NWRW15
:
# Shell to use when invoking shell scripts.
SHELL
=
"/bin/sh"
...
...
@@ -6782,12 +6782,12 @@ fast_install=yes
# The host system.
host_alias
=
host
=
x86_64-unknown
-linux-gnu
host
=
i686-pc
-linux-gnu
host_os
=
linux-gnu
# The build system.
build_alias
=
build
=
x86_64-unknown
-linux-gnu
build
=
i686-pc
-linux-gnu
build_os
=
linux-gnu
# An echo program that does not interpret backslashes.
...
...
@@ -6798,13 +6798,13 @@ AR="ar"
AR_FLAGS
=
"cru"
# A C compiler.
LTCC
=
"
/licsoft/libraries/openmpi/1.2.6/64bit/bin/mpi
cc"
LTCC
=
"
g
cc"
# LTCC compiler flags.
LTCFLAGS
=
"-g -O2"
# A language-specific compiler.
CC
=
"
/licsoft/libraries/openmpi/1.2.6/64bit/bin/mpiCC
"
CC
=
"
g++
"
# Is the compiler the GNU C compiler?
with_gcc
=
yes
...
...
@@ -6813,7 +6813,7 @@ with_gcc=yes
EGREP
=
"grep -E"
# The linker used to build libraries.
LD
=
"/usr/
x86_64-suse-linux/bin/ld -m elf_x86_64
"
LD
=
"/usr/
bin/ld
"
# Whether we need hard or soft links.
LN_S
=
"ln -s"
...
...
@@ -6887,7 +6887,7 @@ dlopen_self=unknown
dlopen_self_static
=
unknown
# Compiler flag to prevent dynamic linking.
link_static_flag
=
""
link_static_flag
=
"
-static
"
# Compiler flag to turn off builtin functions.
no_builtin_flag
=
" -fno-builtin"
...
...
@@ -6942,11 +6942,11 @@ striplib="strip --strip-unneeded"
# Dependencies to place before the objects being linked to create a
# shared library.
predep_objects
=
"/usr/lib
64
/gcc/
x86_64-suse
-linux/4.1.2/../../../
../lib64/
crti.o /usr/lib
64
/gcc/
x86_64-suse
-linux/4.1.2/crtbeginS.o"
predep_objects
=
"/usr/lib/gcc/
i386-redhat
-linux/4.1.2/../../../crti.o /usr/lib/gcc/
i386-redhat
-linux/4.1.2/crtbeginS.o"
# Dependencies to place after the objects being linked to create a
# shared library.
postdep_objects
=
"/usr/lib
64
/gcc/
x86_64-suse
-linux/4.1.2/crtendS.o /usr/lib
64
/gcc/
x86_64-suse
-linux/4.1.2/../../../
../lib64/
crtn.o"
postdep_objects
=
"/usr/lib/gcc/
i386-redhat
-linux/4.1.2/crtendS.o /usr/lib/gcc/
i386-redhat
-linux/4.1.2/../../../crtn.o"
# Dependencies to place before the objects being linked to create a
# shared library.
...
...
@@ -6954,11 +6954,11 @@ predeps=""
# Dependencies to place after the objects being linked to create a
# shared library.
postdeps
=
"
-lmpi_cxx -lmpi -lopen-rte -lopen-pal -ldl -lnsl -lutil -ldl
-lstdc++ -lm -lgcc_s
-lpthread
-lc -lgcc_s"
postdeps
=
"-lstdc++ -lm -lgcc_s -lc -lgcc_s"
# The library search path used internally by the compiler when linking
# a shared library.
compiler_lib_search_path
=
"-L/
licsoft/libraries/openmpi/1.4.1_gnu4.2.4/64bit/lib -L/usr/lib64/gcc/x86_64-suse-linux/4.1.2
-L/usr/lib
64
/gcc/
x86_64-suse
-linux/4.1.2
/../../../../lib64 -L/lib/../lib64 -L/usr/lib/../lib64 -L/fastfs/wir/local/lib -L/usr/lib64/gcc/x86_64-suse-linux/4.1.2/../../../../x86_64-suse-linux/lib
-L/usr/lib
64
/gcc/
x86_64-suse
-linux/4.1.2/../../.."
compiler_lib_search_path
=
"-L/
u/witkowski/local/lib
-L/usr/lib/gcc/
i386-redhat
-linux/4.1.2
-L/usr/lib/gcc/i386-redhat-linux/4.1.2
-L/usr/lib/gcc/
i386-redhat
-linux/4.1.2/../../.."
# Method to check whether dependent libraries are shared objects.
deplibs_check_method
=
"pass_all"
...
...
@@ -7038,10 +7038,10 @@ variables_saved_for_relink="PATH LD_LIBRARY_PATH LD_RUN_PATH GCC_EXEC_PREFIX COM
link_all_deplibs
=
unknown
# Compile-time system search path for libraries
sys_lib_search_path_spec
=
" /
fastfs/wir/local/lib/x86_64-suse
-linux/4.1.2/ /
fastfs/wir
/local/lib/
../lib64/
/usr/lib
64
/gcc/
x86_64-suse
-linux/4.1.2/ /usr/lib/gcc/
x86_64-suse
-linux/4.1.2/ /usr/lib
64
/gcc/
x86_64-suse
-linux/4.1.2/../../../../
x86_64-suse-linux/lib/x86_64-suse
-linux/4.1.2/ /usr/lib
64
/gcc/
x86_64-suse
-linux/4.1.2/../../../../
x86_64-suse
-linux/lib/
../lib64/
/usr/lib
64
/gcc/
x86_64-suse
-linux/4.1.2/../../../
x86_64-suse
-linux/4.1.2/ /usr/lib
64
/gcc/
x86_64-suse
-linux/4.1.2/../../../
../lib64/ /lib/x86_64-suse-linux/4.1.2/ /lib/../lib64/ /usr/lib/x86_64-suse-linux/4.1.2/ /usr/lib/../lib64/ /fastfs/wir/local/lib/ /usr/lib64/gcc/x86_64-suse-linux/4.1.2/../../../../x86_64-suse-linux/lib/ /usr/lib64/gcc/x86_64-suse-linux/4.1.2/../../../ /lib
/ /usr/lib/"
sys_lib_search_path_spec
=
" /
u/witkowski/local/lib/i386-redhat
-linux/4.1.2/ /
u/witkowski
/local/lib/ /usr/lib/gcc/
i386-redhat
-linux/4.1.2/ /usr/lib/gcc/
i386-redhat
-linux/4.1.2/ /usr/lib/gcc/
i386-redhat
-linux/4.1.2/../../../../
i386-redhat-linux/lib/i386-redhat
-linux/4.1.2/ /usr/lib/gcc/
i386-redhat
-linux/4.1.2/../../../../
i386-redhat
-linux/lib/ /usr/lib/gcc/
i386-redhat
-linux/4.1.2/../../../
i386-redhat
-linux/4.1.2/ /usr/lib/gcc/
i386-redhat
-linux/4.1.2/../../../
/lib/i386-redhat-linux/4.1.2/ /lib/ /usr/lib/i386-redhat-linux/4.1.2
/ /usr/lib/"
# Run-time system search path for libraries
sys_lib_dlsearch_path_spec
=
"/lib /usr/lib /usr/
X11R6/lib64/Xaw3d /usr/X11R6/lib64 /usr/X11R6/lib/Xaw3d /usr/X11R6/lib /usr/x86_64-suse-linux/lib /usr/local/lib64 /usr/local/lib /opt/kde3/lib64 /opt/kde3/lib /opt/gnome/lib64 /opt/gnome/lib /lib64 /lib /usr/lib64 /usr/lib /opt/cluster/intel/cce/9.1.042/lib /opt/cluster/intel/fce/9.1.036/lib /opt/cluster/Pathscale3.0/lib/2.9.99 /opt/cluster/Pathscale
3.
0
/lib
/2.9.99/32 /work/licsoft/compilers/pgi/linux86-64/6.2/lib /work/licsoft/compilers/pgi/linux86-64/6.2
/lib
so
"
sys_lib_dlsearch_path_spec
=
"/lib /usr/lib /usr/
lib/octave-2.9.9 /usr/lib/qt-
3.
3
/lib
/usr/lib/qt4
/lib "
# Fix the shell variable $srcfile for the compiler.
fix_srcfile_path
=
""
...
...
@@ -7065,7 +7065,7 @@ include_expsyms=""
# ### BEGIN LIBTOOL TAG CONFIG: F77
# Libtool was configured on host
p2q079
:
# Libtool was configured on host
NWRW15
:
# Shell to use when invoking shell scripts.
SHELL
=
"/bin/sh"
...
...
@@ -7087,12 +7087,12 @@ fast_install=yes
# The host system.
host_alias
=
host
=
x86_64-unknown
-linux-gnu
host
=
i686-pc
-linux-gnu
host_os
=
linux-gnu
# The build system.
build_alias
=
build
=
x86_64-unknown
-linux-gnu
build
=
i686-pc
-linux-gnu
build_os
=
linux-gnu
# An echo program that does not interpret backslashes.
...
...
@@ -7103,7 +7103,7 @@ AR="ar"
AR_FLAGS
=
"cru"
# A C compiler.
LTCC
=
"
/licsoft/libraries/openmpi/1.2.6/64bit/bin/mpi
cc"
LTCC
=
"
g
cc"
# LTCC compiler flags.
LTCFLAGS
=
"-g -O2"
...
...
@@ -7112,13 +7112,13 @@ LTCFLAGS="-g -O2"
CC
=
"g77"
# Is the compiler the GNU C compiler?
with_gcc
=
with_gcc
=
yes
# An ERE matcher.
EGREP
=
"grep -E"
# The linker used to build libraries.
LD
=
"/usr/
x86_64-suse-linux/bin/ld -m elf_x86_64
"
LD
=
"/usr/
bin/ld
"
# Whether we need hard or soft links.
LN_S
=
"ln -s"
...
...
@@ -7346,10 +7346,10 @@ variables_saved_for_relink="PATH LD_LIBRARY_PATH LD_RUN_PATH GCC_EXEC_PREFIX COM
link_all_deplibs
=
unknown
# Compile-time system search path for libraries
sys_lib_search_path_spec
=
" /
fastfs/wir/local/lib/x86_64-suse-linux/3.3.5/ /fastfs/wir
/local/lib/ /usr/lib
64
/gcc
-lib/x86_64-suse
-linux/3.
3.5
/ /usr/lib/gcc/
x86_64-suse
-linux/3.
3.5
/ /usr/lib
64
/gcc
-lib/x86_64-suse
-linux/3.
3.5
/../../../../
x86_64-suse-linux/lib/x86_64-suse
-linux/3.
3.5
/ /usr/lib
64
/gcc
-lib/x86_64-suse
-linux/3.
3.5
/../../../../
x86_64-suse
-linux/lib/ /usr/lib
64
/gcc
-lib/x86_64-suse
-linux/3.
3.5
/../../../
x86_64-suse
-linux/3.
3.5
/ /usr/lib
64
/gcc
-lib/x86_64-suse
-linux/3.
3.5
/../../../ /lib/
x86_64-suse
-linux/3.
3.5
/ /lib/ /usr/lib/
x86_64-suse
-linux/3.
3.5
/ /usr/lib/"
sys_lib_search_path_spec
=
" /
u/witkowski/local/lib/i386-redhat-linux/3.4.6/ /u/witkowski
/local/lib/ /usr/lib/gcc
/i386-redhat
-linux/3.
4.6
/ /usr/lib/gcc/
i386-redhat
-linux/3.
4.6
/ /usr/lib/gcc
/i386-redhat
-linux/3.
4.6
/../../../../
i386-redhat-linux/lib/i386-redhat
-linux/3.
4.6
/ /usr/lib/gcc
/i386-redhat
-linux/3.
4.6
/../../../../
i386-redhat
-linux/lib/ /usr/lib/gcc
/i386-redhat
-linux/3.
4.6
/../../../
i386-redhat
-linux/3.
4.6
/ /usr/lib/gcc
/i386-redhat
-linux/3.
4.6
/../../../ /lib/
i386-redhat
-linux/3.
4.6
/ /lib/ /usr/lib/
i386-redhat
-linux/3.
4.6
/ /usr/lib/"
# Run-time system search path for libraries
sys_lib_dlsearch_path_spec
=
"/lib /usr/lib /usr/
X11R6/lib64/Xaw3d /usr/X11R6/lib64 /usr/X11R6/lib/Xaw3d /usr/X11R6/lib /usr/x86_64-suse-linux/lib /usr/local/lib64 /usr/local/lib /opt/kde3/lib64 /opt/kde3/lib /opt/gnome/lib64 /opt/gnome/lib /lib64 /lib /usr/lib64 /usr/lib /opt/cluster/intel/cce/9.1.042/lib /opt/cluster/intel/fce/9.1.036/lib /opt/cluster/Pathscale3.0/lib/2.9.99 /opt/cluster/Pathscale
3.
0
/lib
/2.9.99/32 /work/licsoft/compilers/pgi/linux86-64/6.2/lib /work/licsoft/compilers/pgi/linux86-64/6.2
/lib
so
"
sys_lib_dlsearch_path_spec
=
"/lib /usr/lib /usr/
lib/octave-2.9.9 /usr/lib/qt-
3.
3
/lib
/usr/lib/qt4
/lib "
# Fix the shell variable $srcfile for the compiler.
fix_srcfile_path
=
""
...
...
AMDiS/src/Operator.cc
View file @
a84838be
...
...
@@ -51,9 +51,21 @@ namespace AMDiS {
Operator
::
Operator
(
Flag
operatorType
,
const
FiniteElemSpace
*
row
,
const
FiniteElemSpace
*
col
)
{
FUNCNAME
(
"Operator::Operator()"
);
std
::
cout
<<
"
\n\n\n
============== ERROR MESSAGE ===============
\n
"
;
std
::
cout
<<
"You make use of the obsolete constructor Operator::Operator(Flag, FiniteElemSpace*, FiniteElemSpace*). Please
\n
"
;
std
::
cout
<<
"make use of the new constructor Operator::Operatpr(FiniteElemSpace*, FiniteElemSpace*). So you have just to
\n
"
;
std
::
cout
<<
"remove the MATRIX_OPERATOR/VECTOR_OPERATOR values from the constuctor call.
\n\n\n
"
;
exit
(
0
);
}
Operator
::
Operator
(
const
FiniteElemSpace
*
row
,
const
FiniteElemSpace
*
col
)
:
rowFeSpace
(
row
),
colFeSpace
(
col
?
col
:
row
),
type
(
operatorType
),
fillFlag
(
Mesh
::
CALL_LEAF_EL
|
Mesh
::
FILL_COORDS
|
Mesh
::
FILL_DET
|
Mesh
::
FILL_GRD_LAMBDA
),
needDualTraverse
(
false
),
...
...
AMDiS/src/Operator.h
View file @
a84838be
...
...
@@ -43,12 +43,6 @@ namespace AMDiS {
* and the right hand side. It consists of four OperatorTerm lists each storing
* Terms of a specific order and type. You can define your own Operator by
* creating an empty Operator and than adding OperatorTerms to it.
* An Operator can by of type MATRIX_OPERATOR, if it's used to assemble the
* system matrix on the left hand side, or it can be of type VECTOR_OPERATOR,
* if it's used to assemble the right hand side vector. If an Operator gives
* contributions to both sides of the system it is a MATRIX_OPERATOR and a
* VECTOR_OPERATOR in one instance. This allows to efficiently reuse element
* matrices once calculated.
* By calling \ref getElementMatrix() or \ref getElementVector() one can
* initiate the assembling procedure. Therefor each Operator has its own
* Assembler, especially created for this Operator, by the first call of
...
...
@@ -57,18 +51,16 @@ namespace AMDiS {
class
Operator
{
public:
/** \brief
* Constructs an empty Operator of type operatorType for the given
* FiniteElemSpace.
* The type is given by a Flag that can contain the values MATRIX_OPERATOR,
* VECTOR_OPERATOR, or MATRIX_OPERATOR | VECTOR_OPERATOR. This type specifies
* whether the Operator is used on the left hand side, the right hand side,
* or on both sides of the system.
*/
/// Obsolete consructor. Calling this constructor yields an error. Will be removed
/// in on of the next revisions.
Operator
(
Flag
operatorType
,
const
FiniteElemSpace
*
rowFeSpace
,
const
FiniteElemSpace
*
colFeSpace
=
NULL
);
/// Constructs an empty Operator of type operatorType for the given FiniteElemSpace.
Operator
(
const
FiniteElemSpace
*
rowFeSpace
,
const
FiniteElemSpace
*
colFeSpace
=
NULL
);
/// Destructor.
virtual
~
Operator
()
{}
...
...
@@ -163,18 +155,6 @@ namespace AMDiS {
/// Sets \ref assembler
void
setAssembler
(
int
rank
,
Assembler
*
ass
);
/// Returns whether this is a matrix operator.
inline
const
bool
isMatrixOperator
()
{
return
type
.
isSet
(
MATRIX_OPERATOR
);
}
/// Returns whether this is a vector operator
inline
const
bool
isVectorOperator
()
{
return
type
.
isSet
(
VECTOR_OPERATOR
);
}
/// Sets \ref fillFlag, the flag used for this Operator while mesh traversal.
inline
void
setFillFlag
(
Flag
f
)
{
...
...
@@ -359,10 +339,10 @@ namespace AMDiS {
}
public:
/// Constant type flag for matrix operators
/// Constant type flag for matrix operators
. Obsolete, will be removed!
static
const
Flag
MATRIX_OPERATOR
;
/// Constant type flag for vector operators
/// Constant type flag for vector operators
. Obsolete, will be removed!
static
const
Flag
VECTOR_OPERATOR
;
protected:
...
...
@@ -381,9 +361,6 @@ namespace AMDiS {
/// Number of columns in the element matrix
int
nCol
;
/// Type of this Operator.
Flag
type
;
/// Flag for mesh traversal
Flag
fillFlag
;
...
...
@@ -410,10 +387,8 @@ namespace AMDiS {
std
::
vector
<
std
::
vector
<
OperatorTerm
*>
>
zeroOrder
;
/** \brief
* Pointer to the solution of the last timestep. Can be used if the
* Operator is MATRIX_OPERATOR and VECTOR_OPERATOR for a more efficient
* assemblage of the element vector when the element matrix was already
* computed.
* Pointer to the solution of the last timestep. Can be used for a more efficient
* assemblage of the element vector when the element matrix was already computed.
*/
const
DOFVectorBase
<
double
>
*
uhOld
;
...
...
AMDiS/src/ProblemVec.cc
View file @
a84838be
...
...
@@ -1123,10 +1123,6 @@ namespace AMDiS {
break
;
}
}
OperatorPos
opPos
=
{
i
,
j
,
factor
,
estFactor
,
Operator
::
MATRIX_OPERATOR
};
operators
[
op
].
push_back
(
opPos
);
opFlags
[
op
].
setFlag
(
Operator
::
MATRIX_OPERATOR
);
}
...
...
@@ -1156,10 +1152,6 @@ namespace AMDiS {
break
;
}
}
OperatorPos
opPos
=
{
i
,
-
1
,
factor
,
estFactor
,
Operator
::
VECTOR_OPERATOR
};
operators
[
op
].
push_back
(
opPos
);
opFlags
[
op
].
setFlag
(
Operator
::
VECTOR_OPERATOR
);
}
...
...
AMDiS/src/ProblemVec.h
View file @
a84838be
...
...
@@ -38,13 +38,6 @@
namespace
AMDiS
{
struct
OperatorPos
{
int
row
,
col
;
double
*
factor
,
*
estFactor
;
Flag
operatorType
;
};
class
ProblemVec
:
public
ProblemStatBase
,
public
StandardProblemIteration
{
...
...
@@ -619,10 +612,6 @@ namespace AMDiS {
*/
bool
boundaryConditionSet
;
std
::
map
<
Operator
*
,
std
::
vector
<
OperatorPos
>
>
operators
;
std
::
map
<
Operator
*
,
Flag
>
opFlags
;
/// If true, AMDiS prints information about the assembling procedure to the screen.
bool
writeAsmInfo
;
};
...
...
AMDiS/src/RobinBC.cc
View file @
a84838be
...
...
@@ -25,7 +25,7 @@ namespace AMDiS {
coords
=
new
VectorOfFixVecs
<
DimVec
<
double
>
>*
[
dim
+
1
];
// for all element sides
for
(
int
i
=
0
;
i
<
dim
+
1
;
i
++
)
{
for
(
int
i
=
0
;
i
<
dim
+
1
;
i
++
)
{
coords
[
i
]
=
new
VectorOfFixVecs
<
DimVec
<
double
>
>
(
dim
,
dim
,
DEFAULT_VALUE
,
DimVec
<
double
>
(
dim
,
DEFAULT_VALUE
,
...
...
@@ -38,7 +38,7 @@ namespace AMDiS {
}
if
(
j
)
{
Operator
*
jOp
=
new
Operator
(
Operator
::
VECTOR_OPERATOR
,
rowFeSpace
);
Operator
*
jOp
=
new
Operator
(
rowFeSpace
);
jOp
->
addZeroOrderTerm
(
new
CoordsAtQP_ZOT
(
j
));
neumannOperators
=
new
DimVec
<
SurfaceOperator
*>
(
dim
,
NO_INIT
);
...
...
@@ -49,8 +49,7 @@ namespace AMDiS {
}
if
(
alpha
)
{
Operator
*
alphaOp
=
new
Operator
(
Operator
::
MATRIX_OPERATOR
,
rowFeSpace
,
colFeSpace
);
Operator
*
alphaOp
=
new
Operator
(
rowFeSpace
,
colFeSpace
);
alphaOp
->
addZeroOrderTerm
(
new
CoordsAtQP_ZOT
(
alpha
));
robinOperators
=
new
DimVec
<
SurfaceOperator
*>
(
dim
,
NO_INIT
);
...
...
@@ -92,19 +91,18 @@ namespace AMDiS {
}
if
(
j
)
{
Operator
*
jOp
=
new
Operator
(
Operator
::
VECTOR_OPERATOR
,
rowFeSpace
);
Operator
*
jOp
=
new
Operator
(
rowFeSpace
);
jOp
->
addZeroOrderTerm
(
new
VecAtQP_ZOT
(
j
,
NULL
));
neumannOperators
=
new
DimVec
<
SurfaceOperator
*>
(
dim
,
NO_INIT
);
for
(
int
i
=
0
;
i
<
dim
+
1
;
i
++
)
for
(
int
i
=
0
;
i
<
dim
+
1
;
i
++
)
(
*
neumannOperators
)[
i
]
=
new
SurfaceOperator
(
jOp
,
*
coords
[
i
]);
delete
jOp
;
}
if
(
alpha
)
{
Operator
*
alphaOp
=
new
Operator
(
Operator
::
MATRIX_OPERATOR
,
rowFeSpace
,
colFeSpace
);
Operator
*
alphaOp
=
new
Operator
(
rowFeSpace
,
colFeSpace
);
alphaOp
->
addZeroOrderTerm
(
new
VecAtQP_ZOT
(
alpha
,
NULL
));
robinOperators
=
new
DimVec
<
SurfaceOperator
*>
(
dim
,
NO_INIT
);
...
...
demo/src/ball.cc
View file @
a84838be
...
...
@@ -65,18 +65,16 @@ int main(int argc, char* argv[])
AdaptInfo
*
adaptInfo
=
new
AdaptInfo
(
"ball->adapt"
);
// === create adapt ===
AdaptStationary
*
adapt
=
new
AdaptStationary
(
"ball->adapt"
,
&
ball
,
adaptInfo
);
AdaptStationary
*
adapt
=
new
AdaptStationary
(
"ball->adapt"
,
&
ball
,
adaptInfo
);
// ===== create matrix operator =====
Operator
matrixOperator
(
Operator
::
MATRIX_OPERATOR
,
ball
.
getFeSpace
());
Operator
matrixOperator
(
ball
.
getFeSpace
());
matrixOperator
.
addSecondOrderTerm
(
new
Laplace_SOT
);
ball
.
addMatrixOperator
(
&
matrixOperator
);
// ===== create rhs operator =====
int
degree
=
ball
.
getFeSpace
()
->
getBasisFcts
()
->
getDegree
();
Operator
rhsOperator
(
Operator
::
VECTOR_OPERATOR
,
ball
.
getFeSpace
());
Operator
rhsOperator
(
ball
.
getFeSpace
());
rhsOperator
.
addZeroOrderTerm
(
new
CoordsAtQP_ZOT
(
new
F
(
degree
)));
ball
.
addVectorOperator
(
&
rhsOperator
);
...
...
demo/src/bunny.cc
View file @
a84838be
...
...
@@ -49,10 +49,7 @@ int main(int argc, char* argv[])
// ===== create projection =====
WorldVector
<
double
>
ballCenter
;
ballCenter
.
set
(
0.0
);
new
BallProject
(
1
,
VOLUME_PROJECTION
,
ballCenter
,
1.0
);
new
BallProject
(
1
,
VOLUME_PROJECTION
,
ballCenter
,
1.0
);
// ===== create and init the scalar problem =====
ProblemScal
bunny
(
"bunny"
);
...
...
@@ -62,19 +59,15 @@ int main(int argc, char* argv[])
AdaptInfo
*
adaptInfo
=
new
AdaptInfo
(
"bunny->adapt"
);
// === create adapt ===
AdaptStationary
*
adapt
=
new
AdaptStationary
(
"bunny->adapt"
,
&
bunny
,
adaptInfo
);
AdaptStationary
*
adapt
=
new
AdaptStationary
(
"bunny->adapt"
,
&
bunny
,
adaptInfo
);
// ===== create matrix operator =====
Operator
matrixOperator
(
Operator
::
MATRIX_OPERATOR
,
bunny
.
getFeSpace
());
Operator
matrixOperator
(
bunny
.
getFeSpace
());
matrixOperator
.
addSecondOrderTerm
(
new
Laplace_SOT
);
bunny
.
addMatrixOperator
(
&
matrixOperator
);
// ===== create rhs operator =====
Operator
rhsOperator
(
Operator
::
VECTOR_OPERATOR
,
bunny
.
getFeSpace
());
Operator
rhsOperator
(
bunny
.
getFeSpace
());
int
degree
=
bunny
.
getFeSpace
()
->
getBasisFcts
()
->
getDegree
();
...
...
demo/src/couple.cc
View file @
a84838be
...
...
@@ -142,21 +142,21 @@ int main(int argc, char* argv[])
adoptFlag
);
// ===== create operators for problem1 =====
Operator
matrixOperator1
(
Operator
::
MATRIX_OPERATOR
,
problem1
.
getFeSpace
());
Operator
matrixOperator1
(
problem1
.
getFeSpace
());
matrixOperator1
.
addSecondOrderTerm
(
new
Laplace_SOT
);
problem1
.
addMatrixOperator
(
&
matrixOperator1
);
int
degree
=
problem1
.
getFeSpace
()
->
getBasisFcts
()
->
getDegree
();
Operator
rhsOperator1
(
Operator
::
VECTOR_OPERATOR
,
problem1
.
getFeSpace
());
Operator
rhsOperator1
(
problem1
.
getFeSpace
());
rhsOperator1
.
addZeroOrderTerm
(
new
CoordsAtQP_ZOT
(
new
F
(
degree
)));
problem1
.
addVectorOperator
(
&
rhsOperator1
);
// ===== create operators for problem2 =====
Operator
matrixOperator2
(
Operator
::
MATRIX_OPERATOR
,
problem2
.
getFeSpace
());
Operator
matrixOperator2
(
problem2
.
getFeSpace
());
matrixOperator2
.
addZeroOrderTerm
(
new
Simple_ZOT
);
problem2
.
addMatrixOperator
(
&
matrixOperator2
);
Operator
rhsOperator2
(
Operator
::
VECTOR_OPERATOR
,
problem2
.
getFeSpace
());
Operator
rhsOperator2
(
problem2
.
getFeSpace
());
rhsOperator2
.
addZeroOrderTerm
(
new
VecAtQP_ZOT
(
problem1
.
getSolution
(),
new
Identity
(
degree
)));
problem2
.
addVectorOperator
(
&
rhsOperator2
);
...
...
demo/src/ellipt.cc
View file @
a84838be
...
...
@@ -66,14 +66,14 @@ int main(int argc, char* argv[])
// ===== create matrix operator =====
Operator
matrixOperator
(
Operator
::
MATRIX_OPERATOR
,
ellipt
.
getFeSpace
());
Operator
matrixOperator
(
ellipt
.
getFeSpace
());
matrixOperator
.
addSecondOrderTerm
(
new
Laplace_SOT
);
ellipt
.
addMatrixOperator
(
matrixOperator
);
// ===== create rhs operator =====
int
degree
=
ellipt
.
getFeSpace
()
->
getBasisFcts
()
->
getDegree
();
Operator
rhsOperator
(
Operator
::
VECTOR_OPERATOR
,
ellipt
.
getFeSpace
());
Operator
rhsOperator
(
ellipt
.
getFeSpace
());
rhsOperator
.
addZeroOrderTerm
(
new
CoordsAtQP_ZOT
(
new
F
(
degree
)));
ellipt
.
addVectorOperator
(
rhsOperator
);
...
...
demo/src/heat.cc
View file @
a84838be
...
...
@@ -204,8 +204,7 @@ int main(int argc, char** argv)
double
zero
=
0.0
;
// create laplace
Operator
A
(
Operator
::
MATRIX_OPERATOR
|
Operator
::
VECTOR_OPERATOR
,
heatSpace
.
getFeSpace
());
Operator
A
(
heatSpace
.
getFeSpace
());
A
.
addSecondOrderTerm
(
new
Laplace_SOT
);
A
.
setUhOld
(
heat
.
getOldSolution
());
if
(
*
(
heat
.
getThetaPtr
())
!=
0.0
)
...
...
@@ -214,15 +213,14 @@ int main(int argc, char** argv)
heatSpace
.
addVectorOperator
(
A
,
heat
.
getTheta1Ptr
(),
&
zero
);
// create zero order operator
Operator
C
(
Operator
::
MATRIX_OPERATOR
|
Operator
::
VECTOR_OPERATOR
,
heatSpace
.
getFeSpace
());
Operator
C
(
heatSpace
.
getFeSpace
());
C
.
addZeroOrderTerm
(
new
Simple_ZOT
);
C
.
setUhOld
(
heat
.
getOldSolution
());
heatSpace
.
addMatrixOperator
(
C
,
heat
.
getTau1Ptr
(),
heat
.
getTau1Ptr
());
heatSpace
.
addVectorOperator
(
C
,
heat
.
getTau1Ptr
(),
heat
.
getTau1Ptr
());
// create RHS operator
Operator
F
(
Operator
::
VECTOR_OPERATOR
,
heatSpace
.
getFeSpace
());
Operator
F
(
heatSpace
.
getFeSpace
());
F
.
addZeroOrderTerm
(
new
CoordsAtQP_ZOT
(
rhsFct
));
heatSpace
.
addVectorOperator
(
F
);
...
...
demo/src/neumann.cc
View file @
a84838be
...
...
@@ -63,13 +63,13 @@ int main(int argc, char* argv[])
adaptInfo
);
// ===== create matrix operator =====
Operator
matrixOperator
(
Operator
::
MATRIX_OPERATOR
,
neumann
.
getFeSpace
());
Operator
matrixOperator
(
neumann
.
getFeSpace
());
matrixOperator
.
addSecondOrderTerm
(
new
Laplace_SOT
);
neumann
.
addMatrixOperator
(
&
matrixOperator
);
// ===== create rhs operator =====
int
degree
=
neumann
.
getFeSpace
()
->
getBasisFcts
()
->
getDegree
();
Operator
rhsOperator
(
Operator
::
VECTOR_OPERATOR
,
neumann
.
getFeSpace
());
Operator
rhsOperator
(
neumann
.
getFeSpace
());
rhsOperator
.
addZeroOrderTerm
(
new
CoordsAtQP_ZOT
(
new
F
(
degree
)));
neumann
.
addVectorOperator
(
&
rhsOperator
);
...
...
demo/src/parallelellipt.cc
View file @
a84838be
...
...
@@ -72,13 +72,13 @@ int main(int argc, char* argv[])
adaptInfo
);
// ===== create matrix operator =====
Operator
matrixOperator
(
Operator
::
MATRIX_OPERATOR
,
ellipt
.
getFeSpace
());
Operator
matrixOperator
(
ellipt
.
getFeSpace
());
matrixOperator
.
addSecondOrderTerm
(
new
Laplace_SOT
);
ellipt
.
addMatrixOperator
(
&
matrixOperator
);
// ===== create rhs operator =====
int
degree
=
ellipt
.
getFeSpace
()
->
getBasisFcts
()
->
getDegree
();
Operator
rhsOperator
(
Operator
::
VECTOR_OPERATOR
,
ellipt
.
getFeSpace
());
Operator
rhsOperator
(
ellipt
.
getFeSpace
());
rhsOperator
.
addZeroOrderTerm
(
new
CoordsAtQP_ZOT
(
new
F
(
degree
)));
ellipt
.
addVectorOperator
(
&
rhsOperator
);
...
...
demo/src/parallelheat.cc
View file @
a84838be
...
...
@@ -184,34 +184,23 @@ int main(int argc, char** argv)
double
zero
=
0.0
;
// create laplace
Operator
*
A
=
new
Operator
(
Operator
::
MATRIX_OPERATOR
|
Operator
::
VECTOR_OPERATOR
,
heatSpace
->
getFeSpace
());
Operator
*
A
=
new
Operator
(
heatSpace
->
getFeSpace
());
A
->
addSecondOrderTerm
(
new
Laplace_SOT
);
A
->
setUhOld
(
heat
->
getOldSolution
());
heatSpace
->
addMatrixOperator
(
A
,
&
one
,
&
one
);