-
Notifications
You must be signed in to change notification settings - Fork 11
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
Feat/poisson equation #267
base: stack/implicitOperators
Are you sure you want to change the base?
Conversation
* operatorMixin did not copy the coeffs * change API of lapacianOperatorFactory and update the operators * change API of divOperatorFactory and update the operators
Deployed test documentation to https://exasim-project.com/NeoFOAM/Build_PR_267 |
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.
some quick comments.
<< "key requested: " << key << "requested type " << demangle(typeid(T).name()) << "\n" | ||
<< "actual type " << demangle(data.at(key).type().name()) << "\n" | ||
<< e.what() << std::endl; |
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.
would https://en.cppreference.com/w/cpp/utility/format/format work? Could look like (not tested):
<< "key requested: " << key << "requested type " << demangle(typeid(T).name()) << "\n" | |
<< "actual type " << demangle(data.at(key).type().name()) << "\n" | |
<< e.what() << std::endl; | |
<< std::format("Caught a bad_any_cast exception: key requested: {}, requested type: {}, actual type: {}\n" , | |
key, | |
demangle(typeid(T).name()), | |
demangle(data.at(key).type().name())) |
@@ -145,9 +145,9 @@ Vector operator*(const scalar& sclr, Vector rhs) | |||
} | |||
|
|||
KOKKOS_INLINE_FUNCTION | |||
Vector operator&(const Vector& lhs, Vector rhs) | |||
scalar operator&(const Vector& lhs, Vector rhs) |
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.
Maybe it makes sense to have both? preferably i would say this should be implemented in a free function.
scalar operator&(const Vector& lhs, Vector rhs) | |
/* @brief dot product */ | |
scalar operator*(const Vector& lhs, Vector rhs) {return dotProduct(lhs, rhs)} | |
/* @brief inner product */ | |
Vector operator&(const Vector& lhs, Vector rhs) {return innerProduct(lhs, rhs)} |
@@ -0,0 +1,116 @@ | |||
// SPDX-License-Identifier: MIT | |||
// SPDX-FileCopyrightText: 2023 NeoFOAM authors |
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.
// SPDX-FileCopyrightText: 2023 NeoFOAM authors | |
// SPDX-FileCopyrightText: 2025 NeoFOAM authors |
@@ -0,0 +1,49 @@ | |||
// SPDX-License-Identifier: MIT | |||
// SPDX-FileCopyrightText: 2023 NeoFOAM authors |
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.
// SPDX-FileCopyrightText: 2023 NeoFOAM authors | |
// SPDX-FileCopyrightText: 2025 NeoFOAM authors |
@@ -0,0 +1,70 @@ | |||
// SPDX-License-Identifier: MIT | |||
// SPDX-FileCopyrightText: 2024 NeoFOAM authors |
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.
// SPDX-FileCopyrightText: 2024 NeoFOAM authors | |
// SPDX-FileCopyrightText: 2025 NeoFOAM authors |
TEST_CASE("uncorrected") | ||
{ | ||
const size_t nCells = 10; | ||
NeoFOAM::Executor exec = GENERATE(NeoFOAM::Executor(NeoFOAM::SerialExecutor {}) |
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.
NeoFOAM::Executor exec = GENERATE(NeoFOAM::Executor(NeoFOAM::SerialExecutor {}) | |
// FIXME: test with all executors | |
NeoFOAM::Executor exec = GENERATE(NeoFOAM::Executor(NeoFOAM::SerialExecutor {}) |
@@ -0,0 +1,229 @@ | |||
// SPDX-License-Identifier: MIT | |||
// SPDX-FileCopyrightText: 2023 NeoFOAM authors |
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.
// SPDX-FileCopyrightText: 2023 NeoFOAM authors | |
// SPDX-FileCopyrightText: 2025 NeoFOAM authors |
Motivation
Solve the pressure Equation with icoNeoFOAM