-
Notifications
You must be signed in to change notification settings - Fork 3
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
Updated the Cube force routine [WIP] #51
Merged
Conversation
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Nothing in |
New stuff in the last round of commits:
Tests:
|
… or '3d'; 1d triggered by: 'planes', 'axes', '1d'. 1d is the default.
…cBC for flexibility
…t was causing an Eigen::Matrix copy to fail. Added a signature header for the Euler rotation matrix routines to simplify maintenance moving forward.
…ns of CMake - Flipped the default for SLURM from TRUE to FALSE, breaking CTest on Unity
Done for now. |
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.
This suggestion is invalid because no changes were made to the code.
Suggestions cannot be applied while the pull request is closed.
Suggestions cannot be applied while viewing a subset of changes.
Only one suggestion per line can be applied in a batch.
Add this suggestion to a batch that can be applied as a single commit.
Applying suggestions on deleted lines is not supported.
You must change the existing code in this line in order to create a valid suggestion.
Outdated suggestions cannot be applied.
This suggestion has been applied or marked resolved.
Suggestions cannot be applied from pending reviews.
Suggestions cannot be applied on multi-line comments.
Suggestions cannot be applied while the pull request is queued to merge.
Suggestion cannot be applied right now. Please check back later.
Main new features:
Cube
is updated to useEigen::Tensor
coefficients rather than flat coefficients with a proper biorthonormal basisCube
. There was no coefficient dump capability earlier, so ICube
has no native binary coefficient format, only HDF5.UserPeriodic
has been promoted to a first-rankExternalForce
type calledPeriodicBC
. The parameters are the same as the olderUserPeriodic
. The thermal boundary condition has been removed but is still available inUserPeriodic
, if needed.BiorthCube
basis class inexputils
that implements the basis used inCube
. This is needed for pyEXP coefficient construction andFieldGenerator
visualization.Coefs
interface is changed to incorporate coefficient sets with arbitrary dimensionality. This is implemented with Eigen3 maps. The base class maintains a simple array that stores the flattened coefficient set and uses Eigen maps and tensor maps to provide views of that array.Coefs
base interface changed, most of pyEXP interface is unchanged. E.g. the coefficient manipulators forSphCoefs
andCylCoefs
for setting coefficients are still calledsetMatrix
. ForCubeCoefs
, its
setTensor. One can still use the
()operator to get the native type for the specific instance (e.g. matrices for
SphCoefand
CylCoefsand a tensor for
CubeCoefs`).Test so far:
Sphere
andCylinder
use the view mechanism for accessing coefficients. That is good, so the changes to the base classes have not broken the n-body code.