Peter Williams
aa4ed8f719
Merge pull request #94 from pkgw/fix-macosx-reporting
...
toasty/pyramid.py: avoid crash on macOS/Py3.7
2022-09-07 17:57:06 +00:00
Peter Williams
6e2ba04cc1
toasty/pyramid.py: avoid crash on macOS/Py3.7
...
Discovered in conda-forge build process. Apparently Queue.qsize() just
doesn't work!
2022-09-07 13:47:50 -04:00
Peter Williams
46a32c2d7f
Merge pull request #93 from pkgw/concept-doi
...
ci/zenodo.json5: fill in the Zenodo concept record ID
2022-09-07 01:39:47 +00:00
Peter Williams
aef1b52d25
ci/zenodo.json5: fill in the Zenodo concept record ID
...
This information will allow us to tie together the series of Toasty
releases in Zenodo's version-DOI scheme.
2022-09-06 16:53:22 -04:00
Peter Williams
9107ee90e7
Merge pull request #92 from pkgw/work-around-dnf
...
ci/azure-build-and-test.yml: turn off docs linkcheck so that builds can fully pass
2022-09-06 19:32:38 +00:00
Peter Williams
fe0ee22ed1
ci/azure-build-and-test.yml: turn off docs linkcheck so that builds can fully pass
2022-09-06 15:23:30 -04:00
Peter Williams
cc1b6f01f0
Merge pull request #90 from pkgw/pyramid-leaves
...
Add Pyramid.visit_leaves()
2022-09-06 15:18:09 +00:00
Peter Williams
9f2fb70eb2
toasty/pyramid.py: use makedirs=False in Pyramid.read_image()
...
For DECaPS2 pixel-counting, I/O throughput is becoming a big deal. We
shouldn't makedirs when reading from pyramids in general. Also add some
other performance notes -- making sure to specify the default PyramidIO
format is important for large pyramids.
2022-09-04 10:12:55 -04:00
Peter Williams
84110233fc
docs/api: update
2022-09-03 09:26:35 -04:00
Peter Williams
757ccda80f
toasty/toast.py: switch sampling to use Pyramid.visit_leaves()
2022-09-03 09:22:31 -04:00
Peter Williams
05a5089662
toasty/pyramid.py: add Pyramid.visit_leaves()
2022-09-03 09:06:36 -04:00
Peter Williams
c1d5d03a18
Merge pull request #89 from pkgw/pyramid
...
Add a new `Pyramid` class for dealing with pyramids more robustly
2022-09-03 12:29:05 +00:00
Peter Williams
f58ef474f0
toasty/merge.py: fix up docs here
2022-09-02 21:59:46 -04:00
Peter Williams
71113b3364
toasty/pyramid.py: add Pyramid.count_leaf_tiles()
2022-09-02 21:40:15 -04:00
Peter Williams
b88276a90b
toasty/pyramid.py: tidy the reduction iterator a little bit
2022-09-02 21:32:14 -04:00
Peter Williams
6a18814be1
toasty/pyramid.py: write up new docs
2022-09-02 21:30:05 -04:00
Peter Williams
f752b58e17
toasty/samplers.py: avoid Numpy warning
2022-09-02 20:24:15 -04:00
Peter Williams
5227f995d1
toasty/pyramid.py: short-circuit walk if nothing to do
2022-09-02 20:22:19 -04:00
Peter Williams
71abaa8485
Some tidying
2022-09-02 20:22:19 -04:00
Peter Williams
98cd82b6ad
toasty/merge.py: migrate to new Pyramid API
...
This file now becomes much shorter.
2022-09-02 20:22:19 -04:00
Peter Williams
3194f523a1
toast/pyramid.py: add new Pyramid object
...
This encapsulates the pyramid-walking needed by the `merge` module in a
more uniform and flexible interface. Documentation to be added after I
do more work to validate the implementation.
2022-09-02 20:22:19 -04:00
Peter Williams
323e792770
toasty/toast.py: apply filter to level-1 tiles
...
This is just more accurate, and I'm preeeety sure that the lat/lon
tile filter can handle the tile coordinates ...
2022-09-02 20:18:04 -04:00
Peter Williams
cd662ec2b6
Merge pull request #88 from pkgw/no-empty
...
Tweaks based on DECaPS2 processing
2022-09-03 00:17:12 +00:00
Peter Williams
d9bd2eb136
toasty/progress.py: write API docs
2022-09-02 20:04:50 -04:00
Peter Williams
f4e12fb881
toasty/progress.py: use TTY-style output if we're in Jupyter
2022-09-02 20:03:13 -04:00
Peter Williams
2ee4ff4f1d
Reformat various files with "black"
2022-09-02 19:45:53 -04:00
Peter Williams
029857c668
Port uses of tqdm to the progress_bar wrapper
2022-09-02 19:45:33 -04:00
Peter Williams
a66eb197c7
toasty/progress.py: add this
2022-09-02 19:31:33 -04:00
Peter Williams
214abd651b
Do not write completely masked images
2022-09-01 22:19:19 -04:00
Peter Williams
13ea3eaa65
Merge pull request #87 from pkgw/remote-view
...
Add tunneled "view" capability
2022-08-31 21:31:01 +00:00
Peter Williams
7b8e89b74a
toasty/cli.py: robustify tunneled view against funny filenames
2022-08-31 16:31:14 -04:00
Peter Williams
e1a61905e1
Update the docs for the "view" command
2022-08-31 16:25:27 -04:00
Peter Williams
feac7570f1
setup.py: slight tidying
2022-08-31 16:25:27 -04:00
Peter Williams
c1a801c0cd
Tunneled view functionality requires wwt_data_formats >=0.15
2022-08-31 16:25:27 -04:00
Peter Williams
bf47f50425
toasty/cli.py: checkpoint work on tunneled "view" functionality
2022-08-31 16:25:27 -04:00
Peter Williams
698787082c
toasty/cli.py: add --tile-only mode to "view"
2022-08-31 16:25:27 -04:00
Peter Williams
9c49c5c846
Merge pull request #86 from imbasimba/toast-from-array-wcs
...
WCS sampling & FITS to TOAST FITS
2022-08-31 20:23:34 +00:00
Peter Williams
e9a8774280
Cythonize the `latlon_tile_filter` function
...
In processing a FITS-to-TOAST dataset going down to level 14, with about
24 million tiles to process, I discovered that the tile filter function
was a non-trivial bottleneck -- it took about 10 minutes just to count
the tiles that needed to be processed! Some profiling showed that most
of the time was actually in the Numpy min/max functions. Here we
Cythonize the function and avoid the Numpy functions. My measurements
indicate a speedup of a factor of around 20.
2022-08-31 15:46:23 -04:00
Peter Williams
f5b85adae2
toasty/samplers.py: no longer need to rename function arguments
2022-08-31 15:46:23 -04:00
Peter Williams
8c07b23c6c
toasty/samplers.py: use some precomputed pi constants
2022-08-31 15:46:23 -04:00
Peter Williams
3a7781912a
toasty/merge.py: make tiles_to_process a set, not a list
...
The "initiate readiness state" algorithm repeatedly tests whether
positions are in the tiles_to_process set. If large numbers of tiles
(tens of millions) are being processed, the algorithm basically fails
because such tests have O(n) scaling with lists. With a set, things
become tractable.
There may well be further room for improvement here, but this one change
makes an enormous difference for big problems.
2022-08-31 15:46:23 -04:00
Peter Williams
0e6ceaced2
toasty/fits_tiler.py: wire in add_place_for_toast option
2022-08-29 17:26:31 -04:00
Peter Williams
19ef824067
toasty/collection.py: improve DASCH hack/fix
...
As noted in the comments, my DASCH sample file that crosses the pole has
WCS headers that seem to have another problem beyond their specification
of the TPV polynomial distortions. I need to set LONPOLE explicitly to
get the correct orientation on the sky.
2022-08-29 11:39:21 -04:00
Peter Williams
d0d18f44b4
toasty/fits_tiler.py: fix method autodetection logic
2022-08-29 11:33:46 -04:00
Henrik Norman
56d828b03b
Updated TOAST test with new out_dir rules
2022-08-25 14:16:10 +02:00
Henrik Norman
d3f950e586
Setting distinct out dir for TOAST and TAN tiled FITS - to not override the other if it exists
2022-08-25 09:31:51 +02:00
Henrik Norman
9fe718451f
tile_toast can now handle a collection of FITS files
2022-08-24 18:30:08 +02:00
Peter Williams
07832f7710
toasty/fits_tiler.py: check if hips_{pixel_cut,data_range} are present
...
In one test image I have, hipsgen produces a "BAD PIXEL CUT" warning and
doesn't emit this information. (I think it's because the file has an
integer data type.) Avoid the crash if this is the case.
2022-08-24 08:07:23 -04:00
Henrik Norman
8c45b1c45c
Fixed supposed typo in redifine_lon: max -> min for hi index
2022-08-24 11:38:52 +02:00
Henrik Norman
4b95075d9c
tile_toast now properly adheres to cli_progress parameter
2022-08-24 08:53:26 +02:00