Skip to content

extended redshift range to 1.0 with new models - #447

Open
djones1040 wants to merge 25 commits into
mainfrom
djones-frankenblast
Open

extended redshift range to 1.0 with new models#447
djones1040 wants to merge 25 commits into
mainfrom
djones-frankenblast

Conversation

@djones1040

@djones1040 djones1040 commented Jul 9, 2026

Copy link
Copy Markdown
Collaborator

Fixes #426. New SBI++ model that extends the blast redshift range to z = 1. Updated S/N model, revised treatment of missing/noisy bands that better replaces out-of-distribution errors, finds better training sample 'neighbors' similar to the data, and treats uncertainties better. Currently can be somewhat noisy at high redshift, but will improve with LSST data and subsequent updates. Disables local SED model as global one works fine for everything.

Adds low-redshift model for z < 0.015 to replace hacky method of handling this previously. New SED files are here. Docs are updated.

Will need to add the new SBI++ model to the S3 bucket before deploy and then add the new files to app/entrypoints/blast-data.json. Because this changes how SED fits need to be plotted, code assumes this PR will be included in any version after 1.13.1, but this can be modified. Unfortunately, I also needed to add an additional trained model, which will add ~1 GB to the docker environment.

@djones1040
djones1040 marked this pull request as ready for review July 23, 2026 08:44
@manning-ncsa

Copy link
Copy Markdown
Collaborator

@djones1040 The initial data file system is described in this doc. You do not strictly need to use the python app/entrypoints/initialize_data.py manifest method; you can follow the manual steps below using mc stat as illustrated below.

Upload the replacement and new files:

mc cp sbipp/SBI_model.pt js-blast/blast-astro-data/init/data/sbipp/SBI_model.pt
mc cp sbi_training_sets/ js-blast/blast-astro-data/init/data/sbi_training_sets/hatp_x_y_midz.pkl
...

Look at each file and its previous versions, for example:

$ mc stat --versions js-blast/blast-astro-data/init/data/cutout_cdn/2010H/2MASS/2MASS_K.fits
Name      : 2MASS_K.fits
Date      : 2025-05-14 15:53:12 CDT 
Size      : 256 KiB 
ETag      : ff6b28e951156bb6aab58633585580a1 
VersionID : rIpbZq8byXi39znb3qiRToruJyTtosS 
Type      : file 
Metadata  :
  Content-Type: application/octet-stream 

Name      : 2MASS_K.fits
Date      : 2024-09-11 15:32:44 CDT 
Size      : 256 KiB 
ETag      : ff6b28e951156bb6aab58633585580a1 
VersionID : tx4CUO97A8-5Rt72LjJTYe3RbiKm..r 
Type      : file 
Metadata  :
  Content-Type: image/fits 

Update and extend the app/entrypoints/blast-data.json file with the ETag and VersionID of the desired versions.

@djones1040

Copy link
Copy Markdown
Collaborator Author

@djones1040 The initial data file system is described in this doc. You do not strictly need to use the python app/entrypoints/initialize_data.py manifest method; you can follow the manual steps below using mc stat as illustrated below.

Upload the replacement and new files:

mc cp sbipp/SBI_model.pt js-blast/blast-astro-data/init/data/sbipp/SBI_model.pt
mc cp sbi_training_sets/ js-blast/blast-astro-data/init/data/sbi_training_sets/hatp_x_y_midz.pkl
...

Look at each file and its previous versions, for example:

$ mc stat --versions js-blast/blast-astro-data/init/data/cutout_cdn/2010H/2MASS/2MASS_K.fits
Name      : 2MASS_K.fits
Date      : 2025-05-14 15:53:12 CDT 
Size      : 256 KiB 
ETag      : ff6b28e951156bb6aab58633585580a1 
VersionID : rIpbZq8byXi39znb3qiRToruJyTtosS 
Type      : file 
Metadata  :
  Content-Type: application/octet-stream 

Name      : 2MASS_K.fits
Date      : 2024-09-11 15:32:44 CDT 
Size      : 256 KiB 
ETag      : ff6b28e951156bb6aab58633585580a1 
VersionID : tx4CUO97A8-5Rt72LjJTYe3RbiKm..r 
Type      : file 
Metadata  :
  Content-Type: image/fits 

Update and extend the app/entrypoints/blast-data.json file with the ETag and VersionID of the desired versions.

This all worked, the files appear on full_dev up, and the blast-data.json file is now updated. However, seeing bash run/blastctl ci up fail with the following (old or new blast-data.json file, fails either way):

app-1           | 2026-07-24 03:54:53,567 [urllib3.connectionpool] WARNING  Retrying (Retry(total=3, connect=None, read=None, redirect=None, status=None)) after connection broken by 'NameResolutionError("HTTPConnection(host='object-store', port=9000): Failed to resolve 'object-store' ([Errno -3] Temporary failure in name resolution)")': /blast-astro-data
app-1           | 2026-07-24 03:54:54,371 [urllib3.connectionpool] WARNING  Retrying (Retry(total=2, connect=None, read=None, redirect=None, status=None)) after connection broken by 'NameResolutionError("HTTPConnection(host='object-store', port=9000): Failed to resolve 'object-store' ([Errno -3] Temporary failure in name resolution)")': /blast-astro-data
app-1           | 2026-07-24 03:54:55,975 [urllib3.connectionpool] WARNING  Retrying (Retry(total=1, connect=None, read=None, redirect=None, status=None)) after connection broken by 'NameResolutionError("HTTPConnection(host='object-store', port=9000): Failed to resolve 'object-store' ([Errno -3] Temporary failure in name resolution)")': /blast-astro-data
app-1           | 2026-07-24 03:54:59,179 [urllib3.connectionpool] WARNING  Retrying (Retry(total=0, connect=None, read=None, redirect=None, status=None)) after connection broken by 'NameResolutionError("HTTPConnection(host='object-store', port=9000): Failed to resolve 'object-store' ([Errno -3] Temporary failure in name resolution)")': /blast-astro-data
app-1           | Traceback (most recent call last):
app-1           |   File "/usr/local/lib/python3.11/site-packages/urllib3/connection.py", line 204, in _new_conn
app-1           |     sock = connection.create_connection(
app-1           |            ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
app-1           |   File "/usr/local/lib/python3.11/site-packages/urllib3/util/connection.py", line 60, in create_connection
app-1           |     for res in socket.getaddrinfo(host, port, family, socket.SOCK_STREAM):
app-1           |                ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
app-1           |   File "/usr/local/lib/python3.11/socket.py", line 974, in getaddrinfo
app-1           |     for res in _socket.getaddrinfo(host, port, family, type, proto, flags):
app-1           |                ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
app-1           | socket.gaierror: [Errno -3] Temporary failure in name resolution
app-1           |
app-1           | The above exception was the direct cause of the following exception:
app-1           |
app-1           | Traceback (most recent call last):
app-1           |   File "/usr/local/lib/python3.11/site-packages/urllib3/connectionpool.py", line 788, in urlopen
app-1           |     response = self._make_request(
app-1           |                ^^^^^^^^^^^^^^^^^^^
app-1           |   File "/usr/local/lib/python3.11/site-packages/urllib3/connectionpool.py", line 493, in _make_request
app-1           |     conn.request(
app-1           |   File "/usr/local/lib/python3.11/site-packages/urllib3/connection.py", line 500, in request
app-1           |     self.endheaders()
app-1           |   File "/usr/local/lib/python3.11/http/client.py", line 1298, in endheaders
app-1           |     self._send_output(message_body, encode_chunked=encode_chunked)
app-1           |   File "/usr/local/lib/python3.11/http/client.py", line 1058, in _send_output
app-1           |     self.send(msg)
app-1           |   File "/usr/local/lib/python3.11/http/client.py", line 996, in send
app-1           |     self.connect()
app-1           |   File "/usr/local/lib/python3.11/site-packages/urllib3/connection.py", line 331, in connect
app-1           |     self.sock = self._new_conn()
app-1           |                 ^^^^^^^^^^^^^^^^
app-1           |   File "/usr/local/lib/python3.11/site-packages/urllib3/connection.py", line 211, in _new_conn
app-1           |     raise NameResolutionError(self.host, self, e) from e
app-1           | urllib3.exceptions.NameResolutionError: HTTPConnection(host='object-store', port=9000): Failed to resolve 'object-store' ([Errno -3] Temporary failure in name resolution)
app-1           |
app-1           | The above exception was the direct cause of the following exception:
app-1           |
app-1           | Traceback (most recent call last):
app-1           |   File "/app/entrypoints/initialize_data.py", line 151, in <module>
app-1           |     verify_data_integrity(download=True)
app-1           |   File "/app/entrypoints/initialize_data.py", line 50, in verify_data_integrity
app-1           |     s3_data = ObjectStore()
app-1           |               ^^^^^^^^^^^^^
app-1           |   File "/app/host/object_store.py", line 54, in __init__
app-1           |     self.initialize_bucket()
app-1           |   File "/app/host/object_store.py", line 59, in initialize_bucket
app-1           |     found = self.client.bucket_exists(bucket_name)
app-1           |             ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
app-1           |   File "/usr/local/lib/python3.11/site-packages/minio/api.py", line 697, in bucket_exists
app-1           |     self._execute("HEAD", bucket_name)
app-1           |   File "/usr/local/lib/python3.11/site-packages/minio/api.py", line 441, in _execute
app-1           |     return self._url_open(
app-1           |            ^^^^^^^^^^^^^^^
app-1           |   File "/usr/local/lib/python3.11/site-packages/minio/api.py", line 303, in _url_open
app-1           |     response = self._http.urlopen(
app-1           |                ^^^^^^^^^^^^^^^^^^^
app-1           |   File "/usr/local/lib/python3.11/site-packages/urllib3/poolmanager.py", line 457, in urlopen
app-1           |     response = conn.urlopen(method, u.request_uri, **kw)
app-1           |                ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
app-1           |   File "/usr/local/lib/python3.11/site-packages/urllib3/connectionpool.py", line 872, in urlopen
app-1           |     return self.urlopen(
app-1           |            ^^^^^^^^^^^^^
app-1           |   File "/usr/local/lib/python3.11/site-packages/urllib3/connectionpool.py", line 872, in urlopen
app-1           |     return self.urlopen(
app-1           |            ^^^^^^^^^^^^^
app-1           |   File "/usr/local/lib/python3.11/site-packages/urllib3/connectionpool.py", line 872, in urlopen
app-1           |     return self.urlopen(
app-1           |            ^^^^^^^^^^^^^
app-1           |   [Previous line repeated 2 more times]
app-1           |   File "/usr/local/lib/python3.11/site-packages/urllib3/connectionpool.py", line 842, in urlopen
app-1           |     retries = retries.increment(
app-1           |               ^^^^^^^^^^^^^^^^^^
app-1           |   File "/usr/local/lib/python3.11/site-packages/urllib3/util/retry.py", line 543, in increment
app-1           |     raise MaxRetryError(_pool, url, reason) from reason  # type: ignore[arg-type]
app-1           |     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
app-1           | urllib3.exceptions.MaxRetryError: HTTPConnectionPool(host='object-store', port=9000): Max retries exceeded with url: /blast-astro-data (Caused by NameResolutionError("HTTPConnection(host='object-store', port=9000): Failed to resolve 'object-store' ([Errno -3] Temporary failure in name resolution)"))

@manning-ncsa

manning-ncsa commented Jul 24, 2026

Copy link
Copy Markdown
Collaborator

Your error looks like a problem with the local MinIO object store. Try running bash run/blastctl full_dev purge-db and docker ps --all to ensure all containers are removed and the application state is reset. This will still retain the data volume blast-dev_object-data that stores the bucket objects (view with docker volume ls | grep blast).

My test of commit 663aff5 is successful. After a full reset using the bash run/blastctl full_dev purge-all option, causing a fresh download of all initial data files, I deleted 2026dix via http://localhost:4000/api/transient/delete/2026dix/all and verified no file objects were present in the object store (alternatively I could have logged into http://localhost:9001 by browser):

$ docker exec -i blast-dev-object-store-1 bash -c 'mc alias set astro-data http://object-store:9000 minioadmin minioadmin'
$ docker exec -i blast-dev-object-store-1 bash -c 'mc ls -r astro-data/blast-astro-data/' | grep 2026dix

Then I used http://localhost:4000/add to import 2026dix from TNS to trigger the workflow. It completed in about 8 minutes on my laptop. The results are here for your comparison:

2026dix.663aff5.json
2026dix.original.json

@manning-ncsa

Copy link
Copy Markdown
Collaborator

In 7c773b9 I added a script to help us compare the transient data generated by different versions. I fully deleted and reprocessed 2026dix as an example transient on blast.scimma.org which is running v1.13.1 at the moment. I compared that data to the 2026dix.663aff5.json output shared earlier.

The logic of the comparison algorithm is tricky, so the resulting differences it output as shown below are slightly misleading, because in the v1.13.1 output, the global sedfittingresult is associated with the "2026dix_2MASS_H_global" aperture", while in the djones-frankenblast output, it is under "2026dix_PanSTARRS_i_global". Basically, these lines need to be improved so we can have a robust comparison script.

In any case, @djones1040 please examine the differences and ensure they are acceptable. Did you notice that the fit looks terrible on commit 663aff5?

image
2026-07-24 14:21:19,823 [__main__] WARNING  [transient] mismatch [processing_status]:
2026-07-24 14:21:19,823 [__main__] WARNING      val1: "blocked"
2026-07-24 14:21:19,823 [__main__] WARNING      val2: "completed"
2026-07-24 14:21:19,823 [__main__] WARNING  [sedfittingresults "2026dix_local"] mismatch over 2.0% [log_sfr_16]:
2026-07-24 14:21:19,823 [__main__] WARNING      val1: "-2.2746887078958347"
2026-07-24 14:21:19,823 [__main__] WARNING      val2: "-1.457242023112903"
2026-07-24 14:21:19,824 [__main__] WARNING  [sedfittingresults "2026dix_local"] mismatch over 2.0% [log_sfr_50]:
2026-07-24 14:21:19,824 [__main__] WARNING      val1: "-1.6589198800935243"
2026-07-24 14:21:19,824 [__main__] WARNING      val2: "-1.1784777951559224"
2026-07-24 14:21:19,824 [__main__] WARNING  [sedfittingresults "2026dix_local"] mismatch over 2.0% [log_sfr_84]:
2026-07-24 14:21:19,824 [__main__] WARNING      val1: "-1.1077148400510446"
2026-07-24 14:21:19,824 [__main__] WARNING      val2: "-0.9005156799744198"
2026-07-24 14:21:19,824 [__main__] WARNING  [sedfittingresults "2026dix_local"] mismatch over 2.0% [log_ssfr_16]:
2026-07-24 14:21:19,824 [__main__] WARNING      val1: "-11.299270493778584"
2026-07-24 14:21:19,824 [__main__] WARNING      val2: "-10.497899167421073"
2026-07-24 14:21:19,824 [__main__] WARNING  [sedfittingresults "2026dix_local"] mismatch over 2.0% [log_ssfr_50]:
2026-07-24 14:21:19,824 [__main__] WARNING      val1: "-10.62144542935478"
2026-07-24 14:21:19,824 [__main__] WARNING      val2: "-10.168376039698696"
2026-07-24 14:21:19,824 [__main__] WARNING  [sedfittingresults "2026dix_local"] mismatch over 2.0% [log_age_16]:
2026-07-24 14:21:19,824 [__main__] WARNING      val1: "6.612567629974807"
2026-07-24 14:21:19,824 [__main__] WARNING      val2: "6.153137399089564"
2026-07-24 14:21:19,824 [__main__] WARNING  [sedfittingresults "2026dix_local"] mismatch over 2.0% [log_age_50]:
2026-07-24 14:21:19,824 [__main__] WARNING      val1: "7.828955312381121"
2026-07-24 14:21:19,824 [__main__] WARNING      val2: "7.464612683754401"
2026-07-24 14:21:19,824 [__main__] WARNING  [sedfittingresults "2026dix_local"] mismatch over 2.0% [log_age_84]:
2026-07-24 14:21:19,824 [__main__] WARNING      val1: "9.355090773741068"
2026-07-24 14:21:19,824 [__main__] WARNING      val2: "8.521077398883556"
2026-07-24 14:21:19,824 [__main__] WARNING  [sedfittingresults "2026dix_local"] mismatch over 2.0% [age_16]:
2026-07-24 14:21:19,824 [__main__] WARNING      val1: "6.612567629974807"
2026-07-24 14:21:19,824 [__main__] WARNING      val2: "6.153137399089564"
2026-07-24 14:21:19,824 [__main__] WARNING  [sedfittingresults "2026dix_local"] mismatch over 2.0% [age_50]:
2026-07-24 14:21:19,824 [__main__] WARNING      val1: "7.828955312381121"
2026-07-24 14:21:19,824 [__main__] WARNING      val2: "7.464612683754401"
2026-07-24 14:21:19,824 [__main__] WARNING  [sedfittingresults "2026dix_local"] mismatch over 2.0% [age_84]:
2026-07-24 14:21:19,824 [__main__] WARNING      val1: "9.355090773741068"
2026-07-24 14:21:19,824 [__main__] WARNING      val2: "8.521077398883556"
2026-07-24 14:21:19,824 [__main__] WARNING  [sedfittingresults "2026dix_local"] mismatch over 2.0% [logzsol_16]:
2026-07-24 14:21:19,824 [__main__] WARNING      val1: "-1.2940835907459258"
2026-07-24 14:21:19,824 [__main__] WARNING      val2: "-1.4847067922353745"
2026-07-24 14:21:19,824 [__main__] WARNING  [sedfittingresults "2026dix_local"] mismatch over 2.0% [logzsol_50]:
2026-07-24 14:21:19,824 [__main__] WARNING      val1: "-0.9746027886867523"
2026-07-24 14:21:19,824 [__main__] WARNING      val2: "-1.0251578092575073"
2026-07-24 14:21:19,824 [__main__] WARNING  [sedfittingresults "2026dix_local"] mismatch over 2.0% [logzsol_84]:
2026-07-24 14:21:19,824 [__main__] WARNING      val1: "-0.7451287524104119"
2026-07-24 14:21:19,824 [__main__] WARNING      val2: "-0.680338612139225"
2026-07-24 14:21:19,824 [__main__] WARNING  [sedfittingresults "2026dix_local"] mismatch over 2.0% [dust2_16]:
2026-07-24 14:21:19,824 [__main__] WARNING      val1: "0.1344687881320715"
2026-07-24 14:21:19,824 [__main__] WARNING      val2: "0.2933255173265934"
2026-07-24 14:21:19,824 [__main__] WARNING  [sedfittingresults "2026dix_local"] mismatch over 2.0% [dust2_50]:
2026-07-24 14:21:19,824 [__main__] WARNING      val1: "0.2443925440311432"
2026-07-24 14:21:19,824 [__main__] WARNING      val2: "0.44899722933769226"
2026-07-24 14:21:19,824 [__main__] WARNING  [sedfittingresults "2026dix_local"] mismatch over 2.0% [dust2_84]:
2026-07-24 14:21:19,824 [__main__] WARNING      val1: "0.3595423224568367"
2026-07-24 14:21:19,824 [__main__] WARNING      val2: "0.6240355521440506"
2026-07-24 14:21:19,824 [__main__] WARNING  [sedfittingresults "2026dix_local"] mismatch over 2.0% [dust_index_16]:
2026-07-24 14:21:19,824 [__main__] WARNING      val1: "-0.8997257097363472"
2026-07-24 14:21:19,824 [__main__] WARNING      val2: "-0.7644846296906471"
2026-07-24 14:21:19,824 [__main__] WARNING  [sedfittingresults "2026dix_local"] mismatch over 2.0% [dust_index_50]:
2026-07-24 14:21:19,824 [__main__] WARNING      val1: "-0.6657446324825287"
2026-07-24 14:21:19,824 [__main__] WARNING      val2: "-0.4856848865747452"
2026-07-24 14:21:19,824 [__main__] WARNING  [sedfittingresults "2026dix_local"] mismatch over 2.0% [dust_index_84]:
2026-07-24 14:21:19,824 [__main__] WARNING      val1: "-0.27127901324629783"
2026-07-24 14:21:19,824 [__main__] WARNING      val2: "-0.12782161945104598"
2026-07-24 14:21:19,824 [__main__] WARNING  [sedfittingresults "2026dix_local"] mismatch over 2.0% [dust1_fraction_16]:
2026-07-24 14:21:19,824 [__main__] WARNING      val1: "0.6631974717378616"
2026-07-24 14:21:19,824 [__main__] WARNING      val2: "0.7230591516494751"
2026-07-24 14:21:19,824 [__main__] WARNING  [sedfittingresults "2026dix_local"] mismatch over 2.0% [dust1_fraction_84]:
2026-07-24 14:21:19,824 [__main__] WARNING      val1: "1.332735973238945"
2026-07-24 14:21:19,824 [__main__] WARNING      val2: "1.2837423835992814"
2026-07-24 14:21:19,824 [__main__] WARNING  [sedfittingresults "2026dix_local"] mismatch over 2.0% [log_fagn_16]:
2026-07-24 14:21:19,824 [__main__] WARNING      val1: "-4.322264983654022"
2026-07-24 14:21:19,824 [__main__] WARNING      val2: "-4.6117349510192875"
2026-07-24 14:21:19,824 [__main__] WARNING  [sedfittingresults "2026dix_local"] mismatch over 2.0% [log_fagn_50]:
2026-07-24 14:21:19,824 [__main__] WARNING      val1: "-3.2765026092529297"
2026-07-24 14:21:19,824 [__main__] WARNING      val2: "-3.8417311906814575"
2026-07-24 14:21:19,824 [__main__] WARNING  [sedfittingresults "2026dix_local"] mismatch over 2.0% [log_fagn_84]:
2026-07-24 14:21:19,824 [__main__] WARNING      val1: "-2.1866637253761287"
2026-07-24 14:21:19,824 [__main__] WARNING      val2: "-2.8473728477954863"
2026-07-24 14:21:19,824 [__main__] WARNING  [sedfittingresults "2026dix_local"] mismatch over 2.0% [log_agn_tau_16]:
2026-07-24 14:21:19,824 [__main__] WARNING      val1: "0.9582256193757057"
2026-07-24 14:21:19,824 [__main__] WARNING      val2: "0.9997380805015564"
2026-07-24 14:21:19,824 [__main__] WARNING  [sedfittingresults "2026dix_local"] mismatch over 2.0% [log_agn_tau_50]:
2026-07-24 14:21:19,824 [__main__] WARNING      val1: "1.4185168147087097"
2026-07-24 14:21:19,825 [__main__] WARNING      val2: "1.5207202434539795"
2026-07-24 14:21:19,825 [__main__] WARNING  [sedfittingresults "2026dix_local"] mismatch over 2.0% [log_agn_tau_84]:
2026-07-24 14:21:19,825 [__main__] WARNING      val1: "1.8965214616060257"
2026-07-24 14:21:19,825 [__main__] WARNING      val2: "1.93555368411541"
2026-07-24 14:21:19,825 [__main__] WARNING  [sedfittingresults "2026dix_local"] mismatch over 2.0% [gas_logz_16]:
2026-07-24 14:21:19,825 [__main__] WARNING      val1: "-1.3263686009645461"
2026-07-24 14:21:19,825 [__main__] WARNING      val2: "-1.3946776512861252"
2026-07-24 14:21:19,825 [__main__] WARNING  [sedfittingresults "2026dix_local"] mismatch over 2.0% [gas_logz_50]:
2026-07-24 14:21:19,825 [__main__] WARNING      val1: "0.03934575989842415"
2026-07-24 14:21:19,825 [__main__] WARNING      val2: "-0.15791374444961548"
2026-07-24 14:21:19,825 [__main__] WARNING  [sedfittingresults "2026dix_local"] mismatch over 2.0% [gas_logz_84]:
2026-07-24 14:21:19,825 [__main__] WARNING      val1: "0.3278570003807545"
2026-07-24 14:21:19,825 [__main__] WARNING      val2: "0.23648935976624494"
2026-07-24 14:21:19,825 [__main__] WARNING  [sedfittingresults "2026dix_local"] mismatch over 2.0% [duste_qpah_16]:
2026-07-24 14:21:19,825 [__main__] WARNING      val1: "0.43461142730712893"
2026-07-24 14:21:19,825 [__main__] WARNING      val2: "0.16306086838245393"
2026-07-24 14:21:19,825 [__main__] WARNING  [sedfittingresults "2026dix_local"] mismatch over 2.0% [duste_qpah_50]:
2026-07-24 14:21:19,825 [__main__] WARNING      val1: "1.3769997358322144"
2026-07-24 14:21:19,825 [__main__] WARNING      val2: "0.4483972489833832"
2026-07-24 14:21:19,825 [__main__] WARNING  [sedfittingresults "2026dix_local"] mismatch over 2.0% [duste_qpah_84]:
2026-07-24 14:21:19,825 [__main__] WARNING      val1: "3.6396543166637425"
2026-07-24 14:21:19,825 [__main__] WARNING      val2: "0.9251351523399354"
2026-07-24 14:21:19,825 [__main__] WARNING  [sedfittingresults "2026dix_local"] mismatch over 2.0% [duste_umin_16]:
2026-07-24 14:21:19,825 [__main__] WARNING      val1: "2.7079327540397644"
2026-07-24 14:21:19,825 [__main__] WARNING      val2: "2.12784987616539"
2026-07-24 14:21:19,825 [__main__] WARNING  [sedfittingresults "2026dix_local"] mismatch over 2.0% [duste_umin_50]:
2026-07-24 14:21:19,825 [__main__] WARNING      val1: "7.798216819763184"
2026-07-24 14:21:19,825 [__main__] WARNING      val2: "6.75572395324707"
2026-07-24 14:21:19,825 [__main__] WARNING  [sedfittingresults "2026dix_local"] mismatch over 2.0% [duste_umin_84]:
2026-07-24 14:21:19,825 [__main__] WARNING      val1: "14.525367720603944"
2026-07-24 14:21:19,825 [__main__] WARNING      val2: "13.299043699264526"
2026-07-24 14:21:19,825 [__main__] WARNING  [sedfittingresults "2026dix_local"] mismatch over 2.0% [log_duste_gamma_16]:
2026-07-24 14:21:19,825 [__main__] WARNING      val1: "-3.2349925346374513"
2026-07-24 14:21:19,825 [__main__] WARNING      val2: "-2.0962800023555754"
2026-07-24 14:21:19,825 [__main__] WARNING  [sedfittingresults "2026dix_local"] mismatch over 2.0% [log_duste_gamma_50]:
2026-07-24 14:21:19,825 [__main__] WARNING      val1: "-2.5873217582702637"
2026-07-24 14:21:19,825 [__main__] WARNING      val2: "-1.5716749429702759"
2026-07-24 14:21:19,825 [__main__] WARNING  [sedfittingresults "2026dix_local"] mismatch over 2.0% [log_duste_gamma_84]:
2026-07-24 14:21:19,825 [__main__] WARNING      val1: "-1.6189065253734585"
2026-07-24 14:21:19,825 [__main__] WARNING      val2: "-0.9774574675559994"
2026-07-24 14:21:19,825 [__main__] WARNING  [sfh_result idx 424127] mismatch over 2.0% [logsfr_16]:
2026-07-24 14:21:19,825 [__main__] WARNING      val1: "-2.1314160394469504"
2026-07-24 14:21:19,825 [__main__] WARNING      val2: "-1.3007098156856025"
2026-07-24 14:21:19,825 [__main__] WARNING  [sfh_result idx 424127] mismatch over 2.0% [logsfr_50]:
2026-07-24 14:21:19,825 [__main__] WARNING      val1: "-1.655079199632395"
2026-07-24 14:21:19,825 [__main__] WARNING      val2: "-1.0624224503625894"
2026-07-24 14:21:19,825 [__main__] WARNING  [sfh_result idx 424127] mismatch over 2.0% [logsfr_84]:
2026-07-24 14:21:19,825 [__main__] WARNING      val1: "-1.3942210344610961"
2026-07-24 14:21:19,825 [__main__] WARNING      val2: "-0.8625773851714801"
2026-07-24 14:21:19,825 [__main__] WARNING  [sfh_result idx 424128] mismatch over 2.0% [logsfr_16]:
2026-07-24 14:21:19,825 [__main__] WARNING      val1: "-2.5809272848426668"
2026-07-24 14:21:19,825 [__main__] WARNING      val2: "-1.6963506826270462"
2026-07-24 14:21:19,825 [__main__] WARNING  [sfh_result idx 424128] mismatch over 2.0% [logsfr_50]:
2026-07-24 14:21:19,825 [__main__] WARNING      val1: "-1.683814698370777"
2026-07-24 14:21:19,825 [__main__] WARNING      val2: "-1.245303272048736"
2026-07-24 14:21:19,825 [__main__] WARNING  [sfh_result idx 424128] mismatch over 2.0% [logsfr_84]:
2026-07-24 14:21:19,825 [__main__] WARNING      val1: "-1.0115872395826453"
2026-07-24 14:21:19,825 [__main__] WARNING      val2: "-0.8896954616446007"
2026-07-24 14:21:19,825 [__main__] WARNING  [sfh_result idx 424129] mismatch over 2.0% [logsfr_16]:
2026-07-24 14:21:19,825 [__main__] WARNING      val1: "-2.530197617274662"
2026-07-24 14:21:19,825 [__main__] WARNING      val2: "-1.7968481439377848"
2026-07-24 14:21:19,825 [__main__] WARNING  [sfh_result idx 424129] mismatch over 2.0% [logsfr_50]:
2026-07-24 14:21:19,825 [__main__] WARNING      val1: "-1.5728110079899162"
2026-07-24 14:21:19,825 [__main__] WARNING      val2: "-1.2951923042672766"
2026-07-24 14:21:19,825 [__main__] WARNING  [sfh_result idx 424129] mismatch over 2.0% [logsfr_84]:
2026-07-24 14:21:19,825 [__main__] WARNING      val1: "-1.0222623517712868"
2026-07-24 14:21:19,825 [__main__] WARNING      val2: "-0.934991760125532"
2026-07-24 14:21:19,825 [__main__] WARNING  [sfh_result idx 424130] mismatch over 2.0% [logsfr_16]:
2026-07-24 14:21:19,825 [__main__] WARNING      val1: "-2.316533707310523"
2026-07-24 14:21:19,825 [__main__] WARNING      val2: "-1.6991678272892645"
2026-07-24 14:21:19,825 [__main__] WARNING  [sfh_result idx 424130] mismatch over 2.0% [logsfr_50]:
2026-07-24 14:21:19,825 [__main__] WARNING      val1: "-1.4855839301932343"
2026-07-24 14:21:19,825 [__main__] WARNING      val2: "-1.1963962741464857"
2026-07-24 14:21:19,825 [__main__] WARNING  [sfh_result idx 424130] mismatch over 2.0% [logsfr_84]:
2026-07-24 14:21:19,826 [__main__] WARNING      val1: "-1.096069912632298"
2026-07-24 14:21:19,826 [__main__] WARNING      val2: "-0.8597499628319613"
2026-07-24 14:21:19,826 [__main__] WARNING  [sfh_result idx 424131] mismatch over 2.0% [logsfr_16]:
2026-07-24 14:21:19,826 [__main__] WARNING      val1: "-1.9201049971357116"
2026-07-24 14:21:19,826 [__main__] WARNING      val2: "-1.4653647377371"
2026-07-24 14:21:19,826 [__main__] WARNING  [sfh_result idx 424131] mismatch over 2.0% [logsfr_50]:
2026-07-24 14:21:19,826 [__main__] WARNING      val1: "-1.149593864361496"
2026-07-24 14:21:19,826 [__main__] WARNING      val2: "-1.0909623508622177"
2026-07-24 14:21:19,826 [__main__] WARNING  [sfh_result idx 424131] mismatch over 2.0% [logsfr_84]:
2026-07-24 14:21:19,826 [__main__] WARNING      val1: "-0.8784024593566768"
2026-07-24 14:21:19,826 [__main__] WARNING      val2: "-0.8589609547747994"
2026-07-24 14:21:19,826 [__main__] WARNING  [sfh_result idx 424132] mismatch over 2.0% [logsfr_16]:
2026-07-24 14:21:19,826 [__main__] WARNING      val1: "-1.194024630490063"
2026-07-24 14:21:19,826 [__main__] WARNING      val2: "-1.160344550281608"
2026-07-24 14:21:19,826 [__main__] WARNING  [sfh_result idx 424132] mismatch over 2.0% [logsfr_84]:
2026-07-24 14:21:19,826 [__main__] WARNING      val1: "-0.7621711343534134"
2026-07-24 14:21:19,826 [__main__] WARNING      val2: "-0.7357518286044218"
2026-07-24 14:21:19,826 [__main__] WARNING  [sfh_result idx 424133] mismatch over 2.0% [logsfr_16]:
2026-07-24 14:21:19,826 [__main__] WARNING      val1: "-1.258331809956537"
2026-07-24 14:21:19,826 [__main__] WARNING      val2: "-1.4480560537948057"
2026-07-24 14:21:19,826 [__main__] WARNING  [sfh_result idx 424133] mismatch over 2.0% [logsfr_50]:
2026-07-24 14:21:19,826 [__main__] WARNING      val1: "-0.7661807669240044"
2026-07-24 14:21:19,826 [__main__] WARNING      val2: "-0.924376952648843"
2026-07-24 14:21:19,826 [__main__] WARNING  [sfh_result idx 424133] mismatch over 2.0% [logsfr_84]:
2026-07-24 14:21:19,826 [__main__] WARNING      val1: "-0.2412867608123597"
2026-07-24 14:21:19,826 [__main__] WARNING      val2: "-0.488033994308847"
2026-07-24 14:21:19,826 [__main__] WARNING  [sedfittingresults "2026dix_2MASS_H_global"] mismatch for sedfittingresults[0]
2026-07-24 14:21:19,826 [__main__] WARNING  [aperturephotometry "DES_Y"] mismatch [is_validated]:
2026-07-24 14:21:19,826 [__main__] WARNING      val1: "false"
2026-07-24 14:21:19,826 [__main__] WARNING      val2: "true"
2026-07-24 14:21:19,826 [__main__] WARNING  [aperturephotometry "DES_Y"] mismatch [is_validated]:
2026-07-24 14:21:19,826 [__main__] WARNING      val1: "true"
2026-07-24 14:21:19,826 [__main__] WARNING      val2: "false"
2026-07-24 14:21:19,827 [__main__] WARNING  [aperturephotometry "DES_Y"] mismatch [is_validated]:
2026-07-24 14:21:19,827 [__main__] WARNING      val1: "true"
2026-07-24 14:21:19,827 [__main__] WARNING      val2: "false"

download_file_from_s3(sed_results_tmp_filepath, sed_results_object_key)
download_file_from_s3(sed_modeldata_tmp_filepath, sed_modeldata_object_key)
if sed_obj[0].software_version is None or Version(sed_obj[0].software_version) <= Version('1.13.1'):
offset_sed_model = True

Copy link
Copy Markdown
Collaborator Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

@manning-ncsa this is the reason for the terrible looking plots -- I removed the offset_sed_model thing for the current version and later but I haven't updated the version number yet, meaning that the tests will look bad visually until we update. There was probably a more sensible way to do this.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

2 participants