Bug #3126

Avoid rounding errors in GSkyMap operators for identical maps

Added by Knödlseder Jürgen about 5 years ago. Updated about 5 years ago.

Status:ClosedStart date:12/12/2019
Priority:NormalDue date:
Assigned To:Knödlseder Jürgen% Done:

100%

Category:-
Target version:1.7.0
Duration:

Description

The current sky map operators, such as GSkyMap::operator/=, lead to small rounding errors since they make use of the map value access operators that performs a bi-linear interpolation. This is not necessary in case that the maps are identical where the operation can be directly performed on pixel values.

The operators should thus implement two branches, one that work on identical maps (same projection, same number of pixels, same crval and crdelt), and one that works on differents maps.


Recurrence

No recurrence.

History

#1 Updated by Knödlseder Jürgen about 5 years ago

  • Status changed from New to Pull request
  • % Done changed from 0 to 100

Implemented a private is_same() method that checks whether two sky maps have identical definition, and use this method in the fundamental addition, subtraction, multiplication and division operators to work directly on pixels for identical maps.

#2 Updated by Knödlseder Jürgen about 5 years ago

  • Status changed from Pull request to Closed

Pushed into devel.

Also available in: Atom PDF