-
-
Notifications
You must be signed in to change notification settings - Fork 23
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Add the homogenised Laplace operator #86
Conversation
conversion pointer to vector
system matrix for gradient lines
the geometry is correct though
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
I like your Doxygen comments
Bembel/src/util/Sphericals.hpp
Outdated
#include <Eigen/Dense> | ||
|
||
#if !defined pi | ||
#define pi 3.1415926535897932385 |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
We have a macro BEMBEL_PI
define in "Bembel/src/util/Macros.hpp". Please exchange
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Done
Bembel/src/util/Sphericals.hpp
Outdated
double z1[2], z2[2], z3[2], z1_start[2]; | ||
double r, fac, rootTimesZ, root_2, root_3; | ||
|
||
assert(abs(x.norm() - 1) < 1e-14); |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Please use Constants::generic_tolerance instead of a hard coded tolerance.
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Done
examples/CMakeLists.txt
Outdated
@@ -17,6 +17,8 @@ set(CIFILES | |||
LaplaceSingleLayerH2 | |||
HelmholtzSingleLayerFull | |||
HelmholtzSingleLayerH2 | |||
HomogenisedLaplaceSingleLayerFull |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Please align with the other file names.
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Done
Bembel/src/util/Sphericals.hpp
Outdated
Eigen::Vector3d dr; | ||
double fac, rootTimesZ, root_2, root_3; | ||
|
||
assert(abs(x.norm() - 1) < 1e-14); |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Please use Constants::generic_tolerance instead of a hard coded tolerance.
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Done
// implementation of the kernel evaluation, which may be based on the | ||
// information available from the superSpace | ||
|
||
private: |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
(optional) private members are at the bottom of the class definition in Bembel.
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Done
#include <iostream> | ||
#include <functional> | ||
|
||
#include "./Test.hpp" |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
replace '.' with 'tests'
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Done
@@ -0,0 +1,25 @@ | |||
// This file is part of Bembel, the higher order C++ boundary element library. | |||
// It was written as part of a cooperation of J. Doelz, H. Harbrecht, S. Kurz, |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Replace with new header including the copy right.
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Done
#endif | ||
|
||
#ifndef PI | ||
#define PI M_PI |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Please use M_PI directly.
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Done
HomogenisedLaplaceSingleLayerOperator> { | ||
// implementation of the kernel evaluation, which may be based on the | ||
// information available from the superSpace | ||
private: |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Here are the same points as in the SingleLayerPotential.hpp
|
||
#include <iostream> | ||
|
||
#include "./Data.hpp" |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Same as in the other example
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Done
We should add one line in the examples/CMakeFile.txt to copy the geometry. |
Implements the homogenised Laplace operator with the help of solid spherical harmonics. The coefficients of the expansion are calculated with Eigen.