Skip to content

Commit

Permalink
Merge pull request #183 from stigrj/release/1.4
Browse files Browse the repository at this point in the history
Prepare v1.4.0
  • Loading branch information
stigrj authored Oct 13, 2021
2 parents 1aa9ef0 + a69527f commit 1a6d450
Show file tree
Hide file tree
Showing 3 changed files with 118 additions and 4 deletions.
114 changes: 114 additions & 0 deletions CHANGELOG.md
Original file line number Diff line number Diff line change
@@ -0,0 +1,114 @@
# Change log

## Version 1.4.0 2021-10-13

### Added

- New constructors for BoundingBox and MRA, accepting box=[-L,L] argument
- Add FunctionTree::evalf_precise() which evaluates both scaling and wavelet parts
- Possibility for empty tree skeletons without allocated coefficients
- Possibility to manually set location of MW filters at configure time

### Changed

- Eigen version 3.4.0
- Improvements under the hood of the Tree classes (non-API):
- remove GenNode and ProjectedNode
- simplified NodeAllocator class
- new improved OMP locking

### Fixed

- Get node center and (lower/upper) bounds


## Version 1.3.6 2020-10-27

### Fixed

- Put OpenMP and MPI in CMake INTERFACE
- Fix --arch-flags CMake option
- Fix kramdown security issue
- Document variuos packaging options

## Version 1.3.5 2020-10-05

### Fixed

- Remove final qualifier GaussFunc/GaussPoly (fixing pybind11 bindings)

## Version 1.3.4 2020-10-02

### Fixed

- Allow to remove arch-specific optimization flags
- Undo export of compiler flags with MRCPP CMake target
- Encapsulate OpenMP within MRCPP and export MRCPP_HAS_OMP flag
- Encapsulate MPI within MRCPP and export MRCPP_HAS_MPI flag
- Fix faulty OpenMP locks
- Minor inlining optimizations

## Version 1.3.3 2020-09-23

### Fixed

- Export compiler flags with MRCPP CMake target


## Version 1.3.2 2020-09-14

### Fixed

- Miscellaneous fixes for building on conda-forge


## Version 1.3.1 2020-09-02

### Fixed

- Uninitialized (max)norms used in space-varying precision algorithms


## Version 1.3.0 2020-08-28

### Added

- Function mapping functionality
- Possibility for faster operator application by space-varying precision


## Version 1.2.0 2020-04-13

### Added

- Projecton of vector function onto FunctionTreeVector (API)
- Construction of semi-periodic Gaussians (non-API)
- CircleCI test build config

### Changed

- New versioning scheme and branching model, documented in README
- Much improved API documentation
- Proper installation of MW filters
- FunctionTrees are now evaluated as zero outside the domain

### Fixed

- Faulty cube plot grid generation
- Pull Eigen from gitlab instead of deprecated github mirror
- Incompatible compiler flags between debug and release
- Failing periodic unit tests
- Plotting range verification


## Version 1.1.0 2019-10-30

### Added

- Option in the API for building trees using absolute MW precision.
- Functionality to estimate absolute node overlaps for screening purposes.

### Fixed

- Added missing b-spline derivative header to MWOperators include.
- Make sure that Eigen3 is found along MRCPP.
2 changes: 1 addition & 1 deletion VERSION
Original file line number Diff line number Diff line change
@@ -1 +1 @@
1.4.0-alpha
1.4.0
6 changes: 3 additions & 3 deletions src/treebuilders/AnalyticAdaptor.h
Original file line number Diff line number Diff line change
Expand Up @@ -43,9 +43,9 @@ template <int D> class AnalyticAdaptor final : public TreeAdaptor<D> {
int scale = node.getScale();
int nQuadPts = node.getKp1();
if (this->func->isVisibleAtScale(scale, nQuadPts)) return false;
double *ub = node.getUpperBounds().data();
double *lb = node.getLowerBounds().data();
if (this->func->isZeroOnInterval(lb, ub)) return false;
auto ub = node.getUpperBounds();
auto lb = node.getLowerBounds();
if (this->func->isZeroOnInterval(lb.data(), ub.data())) return false;
return true;
}
};
Expand Down

0 comments on commit 1a6d450

Please sign in to comment.