sparclclient 1.2.1.dev7__py2.py3-none-any.whl → 1.2.2__py2.py3-none-any.whl
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- sparcl/Results.py +11 -2
- sparcl/__init__.py +4 -11
- sparcl/client.py +162 -32
- sparcl/exceptions.py +10 -2
- sparcl/fields.py +1 -0
- sparcl/gather_2d.py +2 -1
- sparcl/notebooks/sparcl-examples.ipynb +1321 -789
- sparcl/utils.py +13 -0
- {sparclclient-1.2.1.dev7.dist-info → sparclclient-1.2.2.dist-info}/METADATA +2 -2
- sparclclient-1.2.2.dist-info/RECORD +19 -0
- sparclclient-1.2.1.dev7.dist-info/RECORD +0 -19
- {sparclclient-1.2.1.dev7.dist-info → sparclclient-1.2.2.dist-info}/LICENSE +0 -0
- {sparclclient-1.2.1.dev7.dist-info → sparclclient-1.2.2.dist-info}/WHEEL +0 -0
|
@@ -6,7 +6,7 @@
|
|
|
6
6
|
"tags": []
|
|
7
7
|
},
|
|
8
8
|
"source": [
|
|
9
|
-
"# SPARCLCLIENT"
|
|
9
|
+
"# SPARCLCLIENT Example Usage"
|
|
10
10
|
]
|
|
11
11
|
},
|
|
12
12
|
{
|
|
@@ -18,23 +18,10 @@
|
|
|
18
18
|
"outputs": [],
|
|
19
19
|
"source": [
|
|
20
20
|
"__author__ = 'Steve Pothier <steve.pothier@noirlab.edu>'\n",
|
|
21
|
-
"__version__ = '
|
|
21
|
+
"__version__ = '20240306' # yyyymmdd; \n",
|
|
22
22
|
"__keywords__ = ['HowTo', 'astronomy', 'tutorial', 'client', 'sparcl', 'NOIRlab']"
|
|
23
23
|
]
|
|
24
24
|
},
|
|
25
|
-
{
|
|
26
|
-
"cell_type": "markdown",
|
|
27
|
-
"metadata": {
|
|
28
|
-
"editable": true,
|
|
29
|
-
"slideshow": {
|
|
30
|
-
"slide_type": ""
|
|
31
|
-
},
|
|
32
|
-
"tags": []
|
|
33
|
-
},
|
|
34
|
-
"source": [
|
|
35
|
-
"This notebook demonstrates using the `sparclclient` package to get metadata and spectra data from the ...."
|
|
36
|
-
]
|
|
37
|
-
},
|
|
38
25
|
{
|
|
39
26
|
"cell_type": "markdown",
|
|
40
27
|
"metadata": {
|
|
@@ -42,14 +29,12 @@
|
|
|
42
29
|
},
|
|
43
30
|
"source": [
|
|
44
31
|
"## Table of contents\n",
|
|
45
|
-
"* [Goals & Summary](#
|
|
32
|
+
"* [Goals & Summary](#goals)\n",
|
|
46
33
|
"* [Imports and setup](#imports)\n",
|
|
47
|
-
"* [
|
|
48
|
-
"* [
|
|
49
|
-
"* [Get
|
|
50
|
-
"* [
|
|
51
|
-
"* [Find all Messier objects](#messier)\n",
|
|
52
|
-
"* [Save Messier snapshots](#save_album)"
|
|
34
|
+
"* [Install SPARCLCLIENT](#install)\n",
|
|
35
|
+
"* [Prepare to use sparcl](#prepare)\n",
|
|
36
|
+
"* [Get general info from SPARCL](#info)\n",
|
|
37
|
+
"* [Get Metadata and Spectra](#get)"
|
|
53
38
|
]
|
|
54
39
|
},
|
|
55
40
|
{
|
|
@@ -60,13 +45,9 @@
|
|
|
60
45
|
"source": [
|
|
61
46
|
"<a class=\"anchor\" id=\"goals\"></a>\n",
|
|
62
47
|
"## Goals & Summary \n",
|
|
63
|
-
"Demonstrate the use of the `
|
|
48
|
+
"Demonstrate the use of the `sparclclient` package to get metadata and spectra data from the [NOIRLab SPARCL Server](https://astrosparcl.datalab.noirlab.edu/). Show how to get non-public data if you have authorized credentials.\n",
|
|
64
49
|
"- Discovery: Search for matching metadata and return metadata records.\n",
|
|
65
|
-
"-
|
|
66
|
-
"- Retrieve images\n",
|
|
67
|
-
" + Full FITS file\n",
|
|
68
|
-
" + Single HDU of FITS file\n",
|
|
69
|
-
" + Cutout of rectangular region of one HDU of a FITS file (as a new FITS file)\n"
|
|
50
|
+
"- Retrieve spectra"
|
|
70
51
|
]
|
|
71
52
|
},
|
|
72
53
|
{
|
|
@@ -82,39 +63,42 @@
|
|
|
82
63
|
{
|
|
83
64
|
"cell_type": "code",
|
|
84
65
|
"execution_count": 2,
|
|
85
|
-
"metadata": {
|
|
66
|
+
"metadata": {
|
|
67
|
+
"tags": []
|
|
68
|
+
},
|
|
86
69
|
"outputs": [],
|
|
87
70
|
"source": [
|
|
88
71
|
"from pprint import pformat as pf\n",
|
|
72
|
+
"from pprint import pp\n",
|
|
89
73
|
"import os.path\n",
|
|
90
74
|
"from importlib import reload\n",
|
|
91
75
|
"from collections import defaultdict\n",
|
|
92
76
|
"from datetime import datetime\n",
|
|
93
77
|
"import warnings\n",
|
|
78
|
+
"from getpass import getpass\n",
|
|
94
79
|
"\n",
|
|
95
80
|
"import matplotlib.pyplot as plt\n",
|
|
96
|
-
"from astropy.io import fits\n",
|
|
97
|
-
"from astropy.coordinates import SkyCoord\n",
|
|
98
|
-
"from astropy import units as u\n",
|
|
99
|
-
"from astropy.wcs import WCS\n",
|
|
100
81
|
"import numpy as np\n",
|
|
101
82
|
"import pandas as pd\n",
|
|
83
|
+
"from IPython.display import display, Markdown, Latex\n",
|
|
102
84
|
"\n",
|
|
103
85
|
"class StopExecution(Exception):\n",
|
|
104
86
|
" def _render_traceback_(self):\n",
|
|
105
87
|
" pass\n",
|
|
106
88
|
"\n",
|
|
107
|
-
"# Suppress astropy warnings such as:\n",
|
|
108
|
-
"# WARNING: The following header keyword is invalid or follows an unrecognized ...\n",
|
|
109
|
-
"from astropy.utils.exceptions import AstropyWarning\n",
|
|
110
|
-
"warnings.simplefilter('ignore', category=AstropyWarning)\n",
|
|
111
|
-
"\n",
|
|
112
89
|
"# %matplotlib inline\n",
|
|
113
90
|
"# requires installing ipympl\n",
|
|
114
91
|
"%matplotlib widget\n",
|
|
115
92
|
"plt.rcParams['font.size'] = 14"
|
|
116
93
|
]
|
|
117
94
|
},
|
|
95
|
+
{
|
|
96
|
+
"cell_type": "raw",
|
|
97
|
+
"metadata": {},
|
|
98
|
+
"source": [
|
|
99
|
+
"### "
|
|
100
|
+
]
|
|
101
|
+
},
|
|
118
102
|
{
|
|
119
103
|
"cell_type": "markdown",
|
|
120
104
|
"metadata": {
|
|
@@ -122,49 +106,59 @@
|
|
|
122
106
|
},
|
|
123
107
|
"source": [
|
|
124
108
|
"<a class=\"anchor\" id=\"install\"></a>\n",
|
|
125
|
-
"## Install
|
|
109
|
+
"## Install most recent version of the SPARCLCLIENT\n",
|
|
126
110
|
"*NOTE: After installing the most recent version, please restart your kernel.*"
|
|
127
111
|
]
|
|
128
112
|
},
|
|
129
113
|
{
|
|
130
114
|
"cell_type": "code",
|
|
131
115
|
"execution_count": 3,
|
|
132
|
-
"metadata": {
|
|
116
|
+
"metadata": {
|
|
117
|
+
"tags": []
|
|
118
|
+
},
|
|
133
119
|
"outputs": [
|
|
134
120
|
{
|
|
135
121
|
"name": "stdout",
|
|
136
122
|
"output_type": "stream",
|
|
137
123
|
"text": [
|
|
138
|
-
"
|
|
139
|
-
"
|
|
140
|
-
"
|
|
141
|
-
"
|
|
142
|
-
"
|
|
143
|
-
"
|
|
144
|
-
"
|
|
145
|
-
"
|
|
124
|
+
"Processing /home/pothiers/sandbox/sparclclient\n",
|
|
125
|
+
" Installing build dependencies ... \u001b[?25ldone\n",
|
|
126
|
+
"\u001b[?25h Getting requirements to build wheel ... \u001b[?25ldone\n",
|
|
127
|
+
"\u001b[?25h Preparing metadata (pyproject.toml) ... \u001b[?25ldone\n",
|
|
128
|
+
"\u001b[?25hBuilding wheels for collected packages: sparclclient\n",
|
|
129
|
+
" Building wheel for sparclclient (pyproject.toml) ... \u001b[?25ldone\n",
|
|
130
|
+
"\u001b[?25h Created wheel for sparclclient: filename=sparclclient-1.2.2b8-py2.py3-none-any.whl size=3533665 sha256=fc035800e3269eccc70d3658f293c93d2fe7f07850a17cbdb47c9b2ce0de36ad\n",
|
|
131
|
+
" Stored in directory: /tmp/pip-ephem-wheel-cache-lko1mvqq/wheels/9b/de/a2/3f7a82cf4ca7c9e775a1ed1daeea35010570464a1aaa8c370c\n",
|
|
132
|
+
"Successfully built sparclclient\n",
|
|
133
|
+
"Installing collected packages: sparclclient\n",
|
|
134
|
+
" Attempting uninstall: sparclclient\n",
|
|
135
|
+
" Found existing installation: sparclclient 1.2.2b8\n",
|
|
136
|
+
" Uninstalling sparclclient-1.2.2b8:\n",
|
|
137
|
+
" Successfully uninstalled sparclclient-1.2.2b8\n",
|
|
138
|
+
"Successfully installed sparclclient-1.2.2b8\n"
|
|
146
139
|
]
|
|
147
140
|
}
|
|
148
141
|
],
|
|
149
142
|
"source": [
|
|
150
|
-
"!
|
|
151
|
-
"
|
|
152
|
-
"#!pip install --pre -upgrade sparclclient # Lastest pre-released version\n",
|
|
143
|
+
"# !pip install --upgrade sparclclient # Latest released version\n",
|
|
144
|
+
"# !pip install --pre --upgrade sparclclient # Lastest pre-released version\n",
|
|
153
145
|
"\n",
|
|
154
|
-
"# Uncomment next line to load
|
|
155
|
-
"
|
|
146
|
+
"# Uncomment next line to load SPARCLCLIENT from local current version of software.\n",
|
|
147
|
+
"!pip install --pre --upgrade ../.."
|
|
156
148
|
]
|
|
157
149
|
},
|
|
158
150
|
{
|
|
159
151
|
"cell_type": "code",
|
|
160
152
|
"execution_count": 4,
|
|
161
|
-
"metadata": {
|
|
153
|
+
"metadata": {
|
|
154
|
+
"tags": []
|
|
155
|
+
},
|
|
162
156
|
"outputs": [
|
|
163
157
|
{
|
|
164
158
|
"name": "stdout",
|
|
165
159
|
"output_type": "stream",
|
|
166
160
|
"text": [
|
|
167
|
-
"Run started:
|
|
161
|
+
"Run started: 2024-05-02 10:22:12.795845\n"
|
|
168
162
|
]
|
|
169
163
|
}
|
|
170
164
|
],
|
|
@@ -184,322 +178,68 @@
|
|
|
184
178
|
},
|
|
185
179
|
"source": [
|
|
186
180
|
"<a class=\"anchor\" id=\"prepare\"></a>\n",
|
|
187
|
-
"#
|
|
181
|
+
"# Configure SPARCLCLIENT"
|
|
188
182
|
]
|
|
189
183
|
},
|
|
190
184
|
{
|
|
191
185
|
"cell_type": "code",
|
|
192
186
|
"execution_count": 5,
|
|
193
|
-
"metadata": {
|
|
187
|
+
"metadata": {
|
|
188
|
+
"scrolled": true,
|
|
189
|
+
"tags": []
|
|
190
|
+
},
|
|
194
191
|
"outputs": [
|
|
195
192
|
{
|
|
196
|
-
"name": "
|
|
193
|
+
"name": "stdin",
|
|
197
194
|
"output_type": "stream",
|
|
198
195
|
"text": [
|
|
199
|
-
"
|
|
200
|
-
"\n",
|
|
201
|
-
"class SparclClient(builtins.object)\n",
|
|
202
|
-
" | SparclClient(*, email=None, password=None, url='https://astrosparcl.datalab.noirlab.edu', verbose=False, show_curl=False, connect_timeout=1.1, read_timeout=5400)\n",
|
|
203
|
-
" | \n",
|
|
204
|
-
" | Provides interface to SPARCL Server.\n",
|
|
205
|
-
" | When using this to report a bug, set verbose to True. Also print\n",
|
|
206
|
-
" | your instance of this. The results will include important info\n",
|
|
207
|
-
" | about the Client and Server that is usefule to Developers.\n",
|
|
208
|
-
" | \n",
|
|
209
|
-
" | Args:\n",
|
|
210
|
-
" | url (:obj:`str`, optional): Base URL of SPARC Server. Defaults\n",
|
|
211
|
-
" | to 'https://astrosparcl.datalab.noirlab.edu'.\n",
|
|
212
|
-
" | \n",
|
|
213
|
-
" | verbose (:obj:`bool`, optional): Default verbosity is set to\n",
|
|
214
|
-
" | False for all client methods.\n",
|
|
215
|
-
" | \n",
|
|
216
|
-
" | connect_timeout (:obj:`float`, optional): Number of seconds to\n",
|
|
217
|
-
" | wait to establish connection with server. Defaults to\n",
|
|
218
|
-
" | 1.1.\n",
|
|
219
|
-
" | \n",
|
|
220
|
-
" | read_timeout (:obj:`float`, optional): Number of seconds to\n",
|
|
221
|
-
" | wait for server to send a response. Generally time to\n",
|
|
222
|
-
" | wait for first byte. Defaults to 5400.\n",
|
|
223
|
-
" | \n",
|
|
224
|
-
" | Example:\n",
|
|
225
|
-
" | >>> client = SparclClient()\n",
|
|
226
|
-
" | \n",
|
|
227
|
-
" | Raises:\n",
|
|
228
|
-
" | Exception: Object creation compares the version from the\n",
|
|
229
|
-
" | Server against the one expected by the Client. Throws an\n",
|
|
230
|
-
" | error if the Client is a major version or more behind.\n",
|
|
231
|
-
" | \n",
|
|
232
|
-
" | Methods defined here:\n",
|
|
233
|
-
" | \n",
|
|
234
|
-
" | __init__(self, *, email=None, password=None, url='https://astrosparcl.datalab.noirlab.edu', verbose=False, show_curl=False, connect_timeout=1.1, read_timeout=5400)\n",
|
|
235
|
-
" | Create client instance.\n",
|
|
236
|
-
" | \n",
|
|
237
|
-
" | __repr__(self)\n",
|
|
238
|
-
" | Return repr(self).\n",
|
|
239
|
-
" | \n",
|
|
240
|
-
" | find(self, outfields=None, *, constraints={}, limit=500, sort=None, verbose=None)\n",
|
|
241
|
-
" | Find records in the SPARC database.\n",
|
|
242
|
-
" | \n",
|
|
243
|
-
" | Args:\n",
|
|
244
|
-
" | outfields (:obj:`list`, optional): List of fields to return.\n",
|
|
245
|
-
" | Only CORE fields may be passed to this parameter.\n",
|
|
246
|
-
" | Defaults to None, which will return only the sparcl_id\n",
|
|
247
|
-
" | and _dr fields.\n",
|
|
248
|
-
" | \n",
|
|
249
|
-
" | constraints (:obj:`dict`, optional): Key-Value pairs of\n",
|
|
250
|
-
" | constraints to place on the record selection. The Key\n",
|
|
251
|
-
" | part of the Key-Value pair is the field name and the\n",
|
|
252
|
-
" | Value part of the Key-Value pair is a list of values.\n",
|
|
253
|
-
" | Defaults to no constraints. This will return all records in the\n",
|
|
254
|
-
" | database subject to restrictions imposed by the ``limit``\n",
|
|
255
|
-
" | parameter.\n",
|
|
256
|
-
" | \n",
|
|
257
|
-
" | limit (:obj:`int`, optional): Maximum number of records to\n",
|
|
258
|
-
" | return. Defaults to 500.\n",
|
|
259
|
-
" | \n",
|
|
260
|
-
" | sort (:obj:`list`, optional): Comma separated list of fields\n",
|
|
261
|
-
" | to sort by. Defaults to None. (no sorting)\n",
|
|
262
|
-
" | \n",
|
|
263
|
-
" | verbose (:obj:`bool`, optional): Set to True for in-depth return\n",
|
|
264
|
-
" | statement. Defaults to False.\n",
|
|
265
|
-
" | \n",
|
|
266
|
-
" | Returns:\n",
|
|
267
|
-
" | :class:`~sparcl.Results.Found`: Contains header and records.\n",
|
|
268
|
-
" | \n",
|
|
269
|
-
" | Example:\n",
|
|
270
|
-
" | >>> client = SparclClient()\n",
|
|
271
|
-
" | >>> outs = ['sparcl_id', 'ra', 'dec']\n",
|
|
272
|
-
" | >>> cons = {'spectype': ['GALAXY'], 'redshift': [0.5, 0.9]}\n",
|
|
273
|
-
" | >>> found = client.find(outfields=outs, constraints=cons)\n",
|
|
274
|
-
" | >>> sorted(list(found.records[0].keys()))\n",
|
|
275
|
-
" | ['_dr', 'dec', 'ra', 'sparcl_id']\n",
|
|
276
|
-
" | \n",
|
|
277
|
-
" | get_all_fields(self, *, dataset_list=None)\n",
|
|
278
|
-
" | Get fields tagged as 'all' that are in DATASET_LIST.\n",
|
|
279
|
-
" | These are the fields used for the ALL value of the include parameter\n",
|
|
280
|
-
" | of client.retrieve().\n",
|
|
281
|
-
" | \n",
|
|
282
|
-
" | Args:\n",
|
|
283
|
-
" | dataset_list (:obj:`list`, optional): List of data sets from\n",
|
|
284
|
-
" | which to get all fields. Defaults to None, which\n",
|
|
285
|
-
" | will return the intersection of all fields in all\n",
|
|
286
|
-
" | data sets hosted on the SPARC database.\n",
|
|
287
|
-
" | \n",
|
|
288
|
-
" | Returns:\n",
|
|
289
|
-
" | List of fields tagged as 'all' from DATASET_LIST.\n",
|
|
290
|
-
" | \n",
|
|
291
|
-
" | Example:\n",
|
|
292
|
-
" | >>> client = SparclClient()\n",
|
|
293
|
-
" | >>> client.get_all_fields()\n",
|
|
294
|
-
" | ['data_release', 'datasetgroup', 'dateobs', 'dateobs_center', 'dec', 'exptime', 'flux', 'instrument', 'ivar', 'mask', 'model', 'ra', 'redshift', 'redshift_err', 'redshift_warning', 'site', 'sparcl_id', 'specid', 'specprimary', 'spectype', 'survey', 'targetid', 'telescope', 'wave_sigma', 'wavelength', 'wavemax', 'wavemin']\n",
|
|
295
|
-
" | \n",
|
|
296
|
-
" | get_available_fields(self, *, dataset_list=None)\n",
|
|
297
|
-
" | Get subset of fields that are in all (or selected) DATASET_LIST.\n",
|
|
298
|
-
" | This may be a bigger list than will be used with the ALL keyword to\n",
|
|
299
|
-
" | client.retreive().\n",
|
|
300
|
-
" | \n",
|
|
301
|
-
" | Args:\n",
|
|
302
|
-
" | dataset_list (:obj:`list`, optional): List of data sets from\n",
|
|
303
|
-
" | which to get available fields. Defaults to None, which\n",
|
|
304
|
-
" | will return the intersection of all available fields in\n",
|
|
305
|
-
" | all data sets hosted on the SPARC database.\n",
|
|
306
|
-
" | \n",
|
|
307
|
-
" | Returns:\n",
|
|
308
|
-
" | Set of fields available from data sets in DATASET_LIST.\n",
|
|
309
|
-
" | \n",
|
|
310
|
-
" | Example:\n",
|
|
311
|
-
" | >>> client = SparclClient()\n",
|
|
312
|
-
" | >>> sorted(client.get_available_fields())\n",
|
|
313
|
-
" | ['data_release', 'datasetgroup', 'dateobs', 'dateobs_center', 'dec', 'dirpath', 'exptime', 'extra_files', 'filename', 'filesize', 'flux', 'instrument', 'ivar', 'mask', 'model', 'ra', 'redshift', 'redshift_err', 'redshift_warning', 'site', 'sparcl_id', 'specid', 'specprimary', 'spectype', 'survey', 'targetid', 'telescope', 'updated', 'wave_sigma', 'wavelength', 'wavemax', 'wavemin']\n",
|
|
314
|
-
" | \n",
|
|
315
|
-
" | get_default_fields(self, *, dataset_list=None)\n",
|
|
316
|
-
" | Get fields tagged as 'default' that are in DATASET_LIST.\n",
|
|
317
|
-
" | These are the fields used for the DEFAULT value of the include\n",
|
|
318
|
-
" | parameter of client.retrieve().\n",
|
|
319
|
-
" | \n",
|
|
320
|
-
" | Args:\n",
|
|
321
|
-
" | dataset_list (:obj:`list`, optional): List of data sets from\n",
|
|
322
|
-
" | which to get the default fields. Defaults to None, which\n",
|
|
323
|
-
" | will return the intersection of default fields in all\n",
|
|
324
|
-
" | data sets hosted on the SPARC database.\n",
|
|
325
|
-
" | \n",
|
|
326
|
-
" | Returns:\n",
|
|
327
|
-
" | List of fields tagged as 'default' from DATASET_LIST.\n",
|
|
328
|
-
" | \n",
|
|
329
|
-
" | Example:\n",
|
|
330
|
-
" | >>> client = SparclClient()\n",
|
|
331
|
-
" | >>> client.get_default_fields()\n",
|
|
332
|
-
" | ['dec', 'flux', 'ra', 'sparcl_id', 'specid', 'wavelength']\n",
|
|
333
|
-
" | \n",
|
|
334
|
-
" | missing(self, uuid_list, *, dataset_list=None, countOnly=False, verbose=False)\n",
|
|
335
|
-
" | Return the subset of sparcl_ids in the given uuid_list that are\n",
|
|
336
|
-
" | NOT stored in the SPARC database.\n",
|
|
337
|
-
" | \n",
|
|
338
|
-
" | Args:\n",
|
|
339
|
-
" | uuid_list (:obj:`list`): List of sparcl_ids.\n",
|
|
340
|
-
" | \n",
|
|
341
|
-
" | dataset_list (:obj:`list`, optional): List of data sets from\n",
|
|
342
|
-
" | which to find missing sparcl_ids. Defaults to None, meaning\n",
|
|
343
|
-
" | all data sets hosted on the SPARC database.\n",
|
|
344
|
-
" | \n",
|
|
345
|
-
" | countOnly (:obj:`bool`, optional): Set to True to return only\n",
|
|
346
|
-
" | a count of the missing sparcl_ids from the uuid_list.\n",
|
|
347
|
-
" | Defaults to False.\n",
|
|
348
|
-
" | \n",
|
|
349
|
-
" | verbose (:obj:`bool`, optional): Set to True for in-depth return\n",
|
|
350
|
-
" | statement. Defaults to False.\n",
|
|
351
|
-
" | \n",
|
|
352
|
-
" | Returns:\n",
|
|
353
|
-
" | A list of the subset of sparcl_ids in the given uuid_list that\n",
|
|
354
|
-
" | are NOT stored in the SPARC database.\n",
|
|
355
|
-
" | \n",
|
|
356
|
-
" | Example:\n",
|
|
357
|
-
" | >>> client = SparclClient()\n",
|
|
358
|
-
" | >>> ids = ['ddbb57ee-8e90-4a0d-823b-0f5d97028076',]\n",
|
|
359
|
-
" | >>> client.missing(ids)\n",
|
|
360
|
-
" | ['ddbb57ee-8e90-4a0d-823b-0f5d97028076']\n",
|
|
361
|
-
" | \n",
|
|
362
|
-
" | missing_specids(self, specid_list, *, dataset_list=None, countOnly=False, verbose=False)\n",
|
|
363
|
-
" | Return the subset of specids in the given specid_list that are\n",
|
|
364
|
-
" | NOT stored in the SPARC database.\n",
|
|
365
|
-
" | \n",
|
|
366
|
-
" | Args:\n",
|
|
367
|
-
" | specid_list (:obj:`list`): List of specids.\n",
|
|
368
|
-
" | \n",
|
|
369
|
-
" | dataset_list (:obj:`list`, optional): List of data sets from\n",
|
|
370
|
-
" | which to find missing specids. Defaults to None, meaning\n",
|
|
371
|
-
" | all data sets hosted on the SPARC database.\n",
|
|
372
|
-
" | \n",
|
|
373
|
-
" | countOnly (:obj:`bool`, optional): Set to True to return only\n",
|
|
374
|
-
" | a count of the missing specids from the specid_list.\n",
|
|
375
|
-
" | Defaults to False.\n",
|
|
376
|
-
" | \n",
|
|
377
|
-
" | verbose (:obj:`bool`, optional): Set to True for in-depth return\n",
|
|
378
|
-
" | statement. Defaults to False.\n",
|
|
379
|
-
" | \n",
|
|
380
|
-
" | Returns:\n",
|
|
381
|
-
" | A list of the subset of specids in the given specid_list that\n",
|
|
382
|
-
" | are NOT stored in the SPARC database.\n",
|
|
383
|
-
" | \n",
|
|
384
|
-
" | Example:\n",
|
|
385
|
-
" | >>> client = SparclClient(url=_PAT)\n",
|
|
386
|
-
" | >>> specids = ['7972592460248666112', '3663710814482833408']\n",
|
|
387
|
-
" | >>> client.missing_specids(specids + ['bad_id'])\n",
|
|
388
|
-
" | ['bad_id']\n",
|
|
389
|
-
" | \n",
|
|
390
|
-
" | retrieve(self, uuid_list, *, include='DEFAULT', dataset_list=None, limit=500, verbose=None)\n",
|
|
391
|
-
" | Retrieve spectra records from the SPARC database by list of\n",
|
|
392
|
-
" | sparcl_ids.\n",
|
|
393
|
-
" | \n",
|
|
394
|
-
" | Args:\n",
|
|
395
|
-
" | uuid_list (:obj:`list`): List of sparcl_ids.\n",
|
|
396
|
-
" | \n",
|
|
397
|
-
" | include (:obj:`list`, optional): List of field names to include\n",
|
|
398
|
-
" | in each record. Defaults to 'DEFAULT', which will return\n",
|
|
399
|
-
" | the fields tagged as 'default'.\n",
|
|
400
|
-
" | \n",
|
|
401
|
-
" | dataset_list (:obj:`list`, optional): List of data sets from\n",
|
|
402
|
-
" | which to retrieve spectra data. Defaults to None, meaning all\n",
|
|
403
|
-
" | data sets hosted on the SPARC database.\n",
|
|
404
|
-
" | \n",
|
|
405
|
-
" | limit (:obj:`int`, optional): Maximum number of records to\n",
|
|
406
|
-
" | return. Defaults to 500. Maximum allowed is 24,000.\n",
|
|
407
|
-
" | \n",
|
|
408
|
-
" | verbose (:obj:`bool`, optional): Set to True for in-depth return\n",
|
|
409
|
-
" | statement. Defaults to False.\n",
|
|
410
|
-
" | \n",
|
|
411
|
-
" | Returns:\n",
|
|
412
|
-
" | :class:`~sparcl.Results.Retrieved`: Contains header and records.\n",
|
|
413
|
-
" | \n",
|
|
414
|
-
" | Example:\n",
|
|
415
|
-
" | >>> client = SparclClient()\n",
|
|
416
|
-
" | >>> ids = ['00000f0b-07db-4234-892a-6e347db79c89',]\n",
|
|
417
|
-
" | >>> inc = ['sparcl_id', 'flux', 'wavelength', 'model']\n",
|
|
418
|
-
" | >>> ret = client.retrieve(uuid_list=ids, include=inc)\n",
|
|
419
|
-
" | >>> type(ret.records[0].wavelength)\n",
|
|
420
|
-
" | <class 'numpy.ndarray'>\n",
|
|
421
|
-
" | \n",
|
|
422
|
-
" | retrieve_by_specid(self, specid_list, *, svc='spectras', format='pkl', include='DEFAULT', dataset_list=None, limit=500, verbose=False)\n",
|
|
423
|
-
" | Retrieve spectra records from the SPARC database by list of specids.\n",
|
|
424
|
-
" | \n",
|
|
425
|
-
" | Args:\n",
|
|
426
|
-
" | specid_list (:obj:`list`): List of specids.\n",
|
|
427
|
-
" | \n",
|
|
428
|
-
" | include (:obj:`list`, optional): List of field names to include\n",
|
|
429
|
-
" | in each record. Defaults to 'DEFAULT', which will return\n",
|
|
430
|
-
" | the fields tagged as 'default'.\n",
|
|
431
|
-
" | \n",
|
|
432
|
-
" | dataset_list (:obj:`list`, optional): List of data sets from\n",
|
|
433
|
-
" | which to retrieve spectra data. Defaults to None, meaning all\n",
|
|
434
|
-
" | data sets hosted on the SPARC database.\n",
|
|
435
|
-
" | \n",
|
|
436
|
-
" | limit (:obj:`int`, optional): Maximum number of records to\n",
|
|
437
|
-
" | return. Defaults to 500. Maximum allowed is 24,000.\n",
|
|
438
|
-
" | \n",
|
|
439
|
-
" | verbose (:obj:`bool`, optional): Set to True for in-depth return\n",
|
|
440
|
-
" | statement. Defaults to False.\n",
|
|
441
|
-
" | \n",
|
|
442
|
-
" | Returns:\n",
|
|
443
|
-
" | :class:`~sparcl.Results.Retrieved`: Contains header and records.\n",
|
|
444
|
-
" | \n",
|
|
445
|
-
" | Example:\n",
|
|
446
|
-
" | >>> client = SparclClient()\n",
|
|
447
|
-
" | >>> sids = [5840097619402313728, -8985592895187431424]\n",
|
|
448
|
-
" | >>> inc = ['specid', 'flux', 'wavelength', 'model']\n",
|
|
449
|
-
" | >>> ret = client.retrieve_by_specid(specid_list=sids, include=inc)\n",
|
|
450
|
-
" | >>> len(ret.records[0].wavelength)\n",
|
|
451
|
-
" | 4617\n",
|
|
452
|
-
" | \n",
|
|
453
|
-
" | ----------------------------------------------------------------------\n",
|
|
454
|
-
" | Readonly properties defined here:\n",
|
|
455
|
-
" | \n",
|
|
456
|
-
" | all_datasets\n",
|
|
457
|
-
" | \n",
|
|
458
|
-
" | version\n",
|
|
459
|
-
" | Return version of Server Rest API used by this client.\n",
|
|
460
|
-
" | If the Rest API changes such that the Major version increases,\n",
|
|
461
|
-
" | a new version of this module will likely need to be used.\n",
|
|
462
|
-
" | \n",
|
|
463
|
-
" | Returns:\n",
|
|
464
|
-
" | API version (:obj:`float`).\n",
|
|
465
|
-
" | \n",
|
|
466
|
-
" | Example:\n",
|
|
467
|
-
" | >>> client = SparclClient()\n",
|
|
468
|
-
" | >>> client.version\n",
|
|
469
|
-
" | 9.0\n",
|
|
470
|
-
" | \n",
|
|
471
|
-
" | ----------------------------------------------------------------------\n",
|
|
472
|
-
" | Data descriptors defined here:\n",
|
|
473
|
-
" | \n",
|
|
474
|
-
" | __dict__\n",
|
|
475
|
-
" | dictionary for instance variables (if defined)\n",
|
|
476
|
-
" | \n",
|
|
477
|
-
" | __weakref__\n",
|
|
478
|
-
" | list of weak references to the object (if defined)\n",
|
|
479
|
-
" | \n",
|
|
480
|
-
" | ----------------------------------------------------------------------\n",
|
|
481
|
-
" | Data and other attributes defined here:\n",
|
|
482
|
-
" | \n",
|
|
483
|
-
" | KNOWN_GOOD_API_VERSION = 11.0\n",
|
|
484
|
-
"\n"
|
|
196
|
+
" ········\n"
|
|
485
197
|
]
|
|
486
|
-
}
|
|
198
|
+
}
|
|
199
|
+
],
|
|
200
|
+
"source": [
|
|
201
|
+
"# How much output to we want to show?\n",
|
|
202
|
+
"show_help = False # HELP for client functions\n",
|
|
203
|
+
"show_curl = True # Show the underlying SPARCL Server API call\n",
|
|
204
|
+
"verbose = True\n",
|
|
205
|
+
"\n",
|
|
206
|
+
"server = 'https://astrosparcl.datalab.noirlab.edu' # Public Server\n",
|
|
207
|
+
"server = 'https://sparc1.datalab.noirlab.edu' # internal TEST Server\n",
|
|
208
|
+
"server = 'http://localhost:8050' # internal DEV Server\n",
|
|
209
|
+
"\n",
|
|
210
|
+
"priv_dr = 'SDSS-DR17-test'\n",
|
|
211
|
+
"pub_dr = 'BOSS-DR16'\n",
|
|
212
|
+
"\n",
|
|
213
|
+
"# Authenticated Users that are never authorized for anything important.\n",
|
|
214
|
+
"# These are authenticated on both Public and Test SSO servers.\n",
|
|
215
|
+
"auth_user = 'test_user_1@noirlab.edu'\n",
|
|
216
|
+
"unauth_user = 'test_user_2@noirlab.edu'\n",
|
|
217
|
+
"non_user = 'test_user_3@noirlab.edu'\n",
|
|
218
|
+
"usrpw = getpass()"
|
|
219
|
+
]
|
|
220
|
+
},
|
|
221
|
+
{
|
|
222
|
+
"cell_type": "code",
|
|
223
|
+
"execution_count": 6,
|
|
224
|
+
"metadata": {
|
|
225
|
+
"scrolled": true,
|
|
226
|
+
"tags": []
|
|
227
|
+
},
|
|
228
|
+
"outputs": [
|
|
487
229
|
{
|
|
488
|
-
"
|
|
489
|
-
|
|
490
|
-
|
|
491
|
-
|
|
492
|
-
|
|
493
|
-
|
|
494
|
-
"metadata": {},
|
|
495
|
-
"output_type": "execute_result"
|
|
230
|
+
"name": "stdout",
|
|
231
|
+
"output_type": "stream",
|
|
232
|
+
"text": [
|
|
233
|
+
"apiurl=http://localhost:8050/sparc\n",
|
|
234
|
+
"client=(sparclclient:1.2.2b8, api:11.0, http://localhost:8050/sparc, client_hash=f7bd410278bee26a425387c598dd47e80a8fcdcb, verbose=True, connect_timeout=1.1, read_timeout=5400.0)\n"
|
|
235
|
+
]
|
|
496
236
|
}
|
|
497
237
|
],
|
|
498
238
|
"source": [
|
|
499
|
-
"
|
|
500
|
-
"help(sparcl.client.SparclClient)\n",
|
|
501
|
-
"client = sparcl.client.SparclClient(url=server, show_curl=
|
|
502
|
-
"client"
|
|
239
|
+
"if show_help:\n",
|
|
240
|
+
" help(sparcl.client.SparclClient)\n",
|
|
241
|
+
"client = sparcl.client.SparclClient(url=server, show_curl=show_curl, verbose=verbose)\n",
|
|
242
|
+
"print(f'{client=}')"
|
|
503
243
|
]
|
|
504
244
|
},
|
|
505
245
|
{
|
|
@@ -507,7 +247,7 @@
|
|
|
507
247
|
"metadata": {},
|
|
508
248
|
"source": [
|
|
509
249
|
"<a class=\"anchor\" id=\"info\"></a>\n",
|
|
510
|
-
"# Info"
|
|
250
|
+
"# General Info from SPARCL"
|
|
511
251
|
]
|
|
512
252
|
},
|
|
513
253
|
{
|
|
@@ -515,22 +255,24 @@
|
|
|
515
255
|
"metadata": {},
|
|
516
256
|
"source": [
|
|
517
257
|
"<a class=\"anchor\" id=\"datasets\"></a>\n",
|
|
518
|
-
"## Data sets available
|
|
258
|
+
"## Data sets available\n",
|
|
519
259
|
"List all currently available data sets from the server/url associated with client"
|
|
520
260
|
]
|
|
521
261
|
},
|
|
522
262
|
{
|
|
523
263
|
"cell_type": "code",
|
|
524
|
-
"execution_count":
|
|
525
|
-
"metadata": {
|
|
264
|
+
"execution_count": 7,
|
|
265
|
+
"metadata": {
|
|
266
|
+
"tags": []
|
|
267
|
+
},
|
|
526
268
|
"outputs": [
|
|
527
269
|
{
|
|
528
270
|
"data": {
|
|
529
271
|
"text/plain": [
|
|
530
|
-
"{'BOSS-DR16', 'DESI-EDR', 'SDSS-DR16', 'SDSS-DR17'}"
|
|
272
|
+
"{'BOSS-DR16', 'DESI-EDR', 'SDSS-DR16', 'SDSS-DR17-test'}"
|
|
531
273
|
]
|
|
532
274
|
},
|
|
533
|
-
"execution_count":
|
|
275
|
+
"execution_count": 7,
|
|
534
276
|
"metadata": {},
|
|
535
277
|
"output_type": "execute_result"
|
|
536
278
|
}
|
|
@@ -544,53 +286,29 @@
|
|
|
544
286
|
"metadata": {},
|
|
545
287
|
"source": [
|
|
546
288
|
"<a class=\"anchor\" id=\"defaultfieldnames\"></a>\n",
|
|
547
|
-
"##
|
|
289
|
+
"## Default field names\n",
|
|
548
290
|
"Gets fields tagged as 'default' that are common to all data sets in the `dataset_list` passed to the function. If `dataset_list` is None (the default), the function returns the intersection of 'default' fields across all datasets currently available in the SPARC database. The following example of this function produces the same output as it would with no `dataset_list` argument because we currently only have SDSS-DR16 and BOSS-DR16 records in the SPARC database."
|
|
549
291
|
]
|
|
550
292
|
},
|
|
551
293
|
{
|
|
552
294
|
"cell_type": "code",
|
|
553
|
-
"execution_count":
|
|
554
|
-
"metadata": {
|
|
555
|
-
|
|
556
|
-
|
|
557
|
-
|
|
558
|
-
|
|
559
|
-
"\u001b[0;31mSignature:\u001b[0m \u001b[0mclient\u001b[0m\u001b[0;34m.\u001b[0m\u001b[0mget_default_fields\u001b[0m\u001b[0;34m(\u001b[0m\u001b[0;34m*\u001b[0m\u001b[0;34m,\u001b[0m \u001b[0mdataset_list\u001b[0m\u001b[0;34m=\u001b[0m\u001b[0;32mNone\u001b[0m\u001b[0;34m)\u001b[0m\u001b[0;34m\u001b[0m\u001b[0;34m\u001b[0m\u001b[0m\n",
|
|
560
|
-
"\u001b[0;31mDocstring:\u001b[0m\n",
|
|
561
|
-
"Get fields tagged as 'default' that are in DATASET_LIST.\n",
|
|
562
|
-
"These are the fields used for the DEFAULT value of the include\n",
|
|
563
|
-
"parameter of client.retrieve().\n",
|
|
564
|
-
"\n",
|
|
565
|
-
"Args:\n",
|
|
566
|
-
" dataset_list (:obj:`list`, optional): List of data sets from\n",
|
|
567
|
-
" which to get the default fields. Defaults to None, which\n",
|
|
568
|
-
" will return the intersection of default fields in all\n",
|
|
569
|
-
" data sets hosted on the SPARC database.\n",
|
|
570
|
-
"\n",
|
|
571
|
-
"Returns:\n",
|
|
572
|
-
" List of fields tagged as 'default' from DATASET_LIST.\n",
|
|
573
|
-
"\n",
|
|
574
|
-
"Example:\n",
|
|
575
|
-
" >>> client = SparclClient()\n",
|
|
576
|
-
" >>> client.get_default_fields()\n",
|
|
577
|
-
" ['dec', 'flux', 'ra', 'sparcl_id', 'specid', 'wavelength']\n",
|
|
578
|
-
"\u001b[0;31mFile:\u001b[0m ~/sandbox/sparclclient/venv/lib/python3.10/site-packages/sparcl/client.py\n",
|
|
579
|
-
"\u001b[0;31mType:\u001b[0m method"
|
|
580
|
-
]
|
|
581
|
-
},
|
|
582
|
-
"metadata": {},
|
|
583
|
-
"output_type": "display_data"
|
|
584
|
-
}
|
|
585
|
-
],
|
|
295
|
+
"execution_count": 8,
|
|
296
|
+
"metadata": {
|
|
297
|
+
"scrolled": true,
|
|
298
|
+
"tags": []
|
|
299
|
+
},
|
|
300
|
+
"outputs": [],
|
|
586
301
|
"source": [
|
|
587
|
-
"
|
|
302
|
+
"if show_help:\n",
|
|
303
|
+
" client.get_default_fields?"
|
|
588
304
|
]
|
|
589
305
|
},
|
|
590
306
|
{
|
|
591
307
|
"cell_type": "code",
|
|
592
|
-
"execution_count":
|
|
593
|
-
"metadata": {
|
|
308
|
+
"execution_count": 9,
|
|
309
|
+
"metadata": {
|
|
310
|
+
"tags": []
|
|
311
|
+
},
|
|
594
312
|
"outputs": [
|
|
595
313
|
{
|
|
596
314
|
"data": {
|
|
@@ -598,7 +316,7 @@
|
|
|
598
316
|
"['dec', 'flux', 'ra', 'sparcl_id', 'specid', 'wavelength']"
|
|
599
317
|
]
|
|
600
318
|
},
|
|
601
|
-
"execution_count":
|
|
319
|
+
"execution_count": 9,
|
|
602
320
|
"metadata": {},
|
|
603
321
|
"output_type": "execute_result"
|
|
604
322
|
}
|
|
@@ -612,14 +330,16 @@
|
|
|
612
330
|
"metadata": {},
|
|
613
331
|
"source": [
|
|
614
332
|
"<a class=\"anchor\" id=\"allfieldnames\"></a>\n",
|
|
615
|
-
"##
|
|
333
|
+
"## All field names\n",
|
|
616
334
|
"Gets fields tagged as 'all' that are common to all data sets in the `dataset_list` passed to the function. If `dataset_list` is None (the default), the function returns the intersection of 'all' fields across all datasets currently available in the SPARC database. The following example of this function produces the same output as it would with no `dataset_list` argument because we currently only have SDSS-DR16 and BOSS-DR16 records in the SPARC database."
|
|
617
335
|
]
|
|
618
336
|
},
|
|
619
337
|
{
|
|
620
338
|
"cell_type": "code",
|
|
621
|
-
"execution_count":
|
|
622
|
-
"metadata": {
|
|
339
|
+
"execution_count": 10,
|
|
340
|
+
"metadata": {
|
|
341
|
+
"tags": []
|
|
342
|
+
},
|
|
623
343
|
"outputs": [
|
|
624
344
|
{
|
|
625
345
|
"data": {
|
|
@@ -634,7 +354,7 @@
|
|
|
634
354
|
" dataset_list (:obj:`list`, optional): List of data sets from\n",
|
|
635
355
|
" which to get all fields. Defaults to None, which\n",
|
|
636
356
|
" will return the intersection of all fields in all\n",
|
|
637
|
-
" data sets hosted on the
|
|
357
|
+
" data sets hosted on the SPARCL database.\n",
|
|
638
358
|
"\n",
|
|
639
359
|
"Returns:\n",
|
|
640
360
|
" List of fields tagged as 'all' from DATASET_LIST.\n",
|
|
@@ -657,8 +377,10 @@
|
|
|
657
377
|
},
|
|
658
378
|
{
|
|
659
379
|
"cell_type": "code",
|
|
660
|
-
"execution_count":
|
|
661
|
-
"metadata": {
|
|
380
|
+
"execution_count": 11,
|
|
381
|
+
"metadata": {
|
|
382
|
+
"tags": []
|
|
383
|
+
},
|
|
662
384
|
"outputs": [
|
|
663
385
|
{
|
|
664
386
|
"name": "stdout",
|
|
@@ -676,13 +398,16 @@
|
|
|
676
398
|
"cell_type": "markdown",
|
|
677
399
|
"metadata": {},
|
|
678
400
|
"source": [
|
|
679
|
-
"## Version of Server API used by this client"
|
|
401
|
+
"## Version of Server API used by this client\n",
|
|
402
|
+
"The SPARCL Client you use must match the version of the SPARCL Server you use. The server is specified with the client.SparclClient `url` parameter. If Server and Client are incompatible, when you excecute SparclClient() you will instructed to upgrade your client."
|
|
680
403
|
]
|
|
681
404
|
},
|
|
682
405
|
{
|
|
683
406
|
"cell_type": "code",
|
|
684
|
-
"execution_count":
|
|
685
|
-
"metadata": {
|
|
407
|
+
"execution_count": 12,
|
|
408
|
+
"metadata": {
|
|
409
|
+
"tags": []
|
|
410
|
+
},
|
|
686
411
|
"outputs": [
|
|
687
412
|
{
|
|
688
413
|
"data": {
|
|
@@ -690,7 +415,7 @@
|
|
|
690
415
|
"11.0"
|
|
691
416
|
]
|
|
692
417
|
},
|
|
693
|
-
"execution_count":
|
|
418
|
+
"execution_count": 12,
|
|
694
419
|
"metadata": {},
|
|
695
420
|
"output_type": "execute_result"
|
|
696
421
|
}
|
|
@@ -748,89 +473,35 @@
|
|
|
748
473
|
},
|
|
749
474
|
{
|
|
750
475
|
"cell_type": "code",
|
|
751
|
-
"execution_count":
|
|
476
|
+
"execution_count": 13,
|
|
752
477
|
"metadata": {
|
|
753
478
|
"editable": true,
|
|
754
|
-
"
|
|
755
|
-
"source_hidden": true
|
|
756
|
-
},
|
|
479
|
+
"scrolled": true,
|
|
757
480
|
"slideshow": {
|
|
758
481
|
"slide_type": ""
|
|
759
482
|
},
|
|
760
483
|
"tags": []
|
|
761
484
|
},
|
|
762
|
-
"outputs": [
|
|
763
|
-
{
|
|
764
|
-
"data": {
|
|
765
|
-
"text/plain": [
|
|
766
|
-
"\u001b[0;31mSignature:\u001b[0m\n",
|
|
767
|
-
"\u001b[0mclient\u001b[0m\u001b[0;34m.\u001b[0m\u001b[0mfind\u001b[0m\u001b[0;34m(\u001b[0m\u001b[0;34m\u001b[0m\n",
|
|
768
|
-
"\u001b[0;34m\u001b[0m \u001b[0moutfields\u001b[0m\u001b[0;34m=\u001b[0m\u001b[0;32mNone\u001b[0m\u001b[0;34m,\u001b[0m\u001b[0;34m\u001b[0m\n",
|
|
769
|
-
"\u001b[0;34m\u001b[0m \u001b[0;34m*\u001b[0m\u001b[0;34m,\u001b[0m\u001b[0;34m\u001b[0m\n",
|
|
770
|
-
"\u001b[0;34m\u001b[0m \u001b[0mconstraints\u001b[0m\u001b[0;34m=\u001b[0m\u001b[0;34m{\u001b[0m\u001b[0;34m}\u001b[0m\u001b[0;34m,\u001b[0m\u001b[0;34m\u001b[0m\n",
|
|
771
|
-
"\u001b[0;34m\u001b[0m \u001b[0mlimit\u001b[0m\u001b[0;34m=\u001b[0m\u001b[0;36m500\u001b[0m\u001b[0;34m,\u001b[0m\u001b[0;34m\u001b[0m\n",
|
|
772
|
-
"\u001b[0;34m\u001b[0m \u001b[0msort\u001b[0m\u001b[0;34m=\u001b[0m\u001b[0;32mNone\u001b[0m\u001b[0;34m,\u001b[0m\u001b[0;34m\u001b[0m\n",
|
|
773
|
-
"\u001b[0;34m\u001b[0m \u001b[0mverbose\u001b[0m\u001b[0;34m=\u001b[0m\u001b[0;32mNone\u001b[0m\u001b[0;34m,\u001b[0m\u001b[0;34m\u001b[0m\n",
|
|
774
|
-
"\u001b[0;34m\u001b[0m\u001b[0;34m)\u001b[0m\u001b[0;34m\u001b[0m\u001b[0;34m\u001b[0m\u001b[0m\n",
|
|
775
|
-
"\u001b[0;31mDocstring:\u001b[0m\n",
|
|
776
|
-
"Find records in the SPARC database.\n",
|
|
777
|
-
"\n",
|
|
778
|
-
"Args:\n",
|
|
779
|
-
" outfields (:obj:`list`, optional): List of fields to return.\n",
|
|
780
|
-
" Only CORE fields may be passed to this parameter.\n",
|
|
781
|
-
" Defaults to None, which will return only the sparcl_id\n",
|
|
782
|
-
" and _dr fields.\n",
|
|
783
|
-
"\n",
|
|
784
|
-
" constraints (:obj:`dict`, optional): Key-Value pairs of\n",
|
|
785
|
-
" constraints to place on the record selection. The Key\n",
|
|
786
|
-
" part of the Key-Value pair is the field name and the\n",
|
|
787
|
-
" Value part of the Key-Value pair is a list of values.\n",
|
|
788
|
-
" Defaults to no constraints. This will return all records in the\n",
|
|
789
|
-
" database subject to restrictions imposed by the ``limit``\n",
|
|
790
|
-
" parameter.\n",
|
|
791
|
-
"\n",
|
|
792
|
-
" limit (:obj:`int`, optional): Maximum number of records to\n",
|
|
793
|
-
" return. Defaults to 500.\n",
|
|
794
|
-
"\n",
|
|
795
|
-
" sort (:obj:`list`, optional): Comma separated list of fields\n",
|
|
796
|
-
" to sort by. Defaults to None. (no sorting)\n",
|
|
797
|
-
"\n",
|
|
798
|
-
" verbose (:obj:`bool`, optional): Set to True for in-depth return\n",
|
|
799
|
-
" statement. Defaults to False.\n",
|
|
800
|
-
"\n",
|
|
801
|
-
"Returns:\n",
|
|
802
|
-
" :class:`~sparcl.Results.Found`: Contains header and records.\n",
|
|
803
|
-
"\n",
|
|
804
|
-
"Example:\n",
|
|
805
|
-
" >>> client = SparclClient()\n",
|
|
806
|
-
" >>> outs = ['sparcl_id', 'ra', 'dec']\n",
|
|
807
|
-
" >>> cons = {'spectype': ['GALAXY'], 'redshift': [0.5, 0.9]}\n",
|
|
808
|
-
" >>> found = client.find(outfields=outs, constraints=cons)\n",
|
|
809
|
-
" >>> sorted(list(found.records[0].keys()))\n",
|
|
810
|
-
" ['_dr', 'dec', 'ra', 'sparcl_id']\n",
|
|
811
|
-
"\u001b[0;31mFile:\u001b[0m ~/sandbox/sparclclient/venv/lib/python3.10/site-packages/sparcl/client.py\n",
|
|
812
|
-
"\u001b[0;31mType:\u001b[0m method"
|
|
813
|
-
]
|
|
814
|
-
},
|
|
815
|
-
"metadata": {},
|
|
816
|
-
"output_type": "display_data"
|
|
817
|
-
}
|
|
818
|
-
],
|
|
485
|
+
"outputs": [],
|
|
819
486
|
"source": [
|
|
820
|
-
"
|
|
487
|
+
"if show_help:\n",
|
|
488
|
+
" client.find?"
|
|
821
489
|
]
|
|
822
490
|
},
|
|
823
491
|
{
|
|
824
492
|
"cell_type": "markdown",
|
|
825
493
|
"metadata": {},
|
|
826
494
|
"source": [
|
|
827
|
-
"#### Define
|
|
495
|
+
"#### Define fields and constraints for metadata FIND\n",
|
|
496
|
+
"Define the fields we want returned (`outfields`) and the constraints (`constraints`)"
|
|
828
497
|
]
|
|
829
498
|
},
|
|
830
499
|
{
|
|
831
500
|
"cell_type": "code",
|
|
832
|
-
"execution_count":
|
|
833
|
-
"metadata": {
|
|
501
|
+
"execution_count": 14,
|
|
502
|
+
"metadata": {
|
|
503
|
+
"tags": []
|
|
504
|
+
},
|
|
834
505
|
"outputs": [],
|
|
835
506
|
"source": [
|
|
836
507
|
"out = ['sparcl_id','specid', 'ra', 'dec', 'redshift', 'spectype', 'data_release', 'redshift_err']\n",
|
|
@@ -843,22 +514,26 @@
|
|
|
843
514
|
"cell_type": "markdown",
|
|
844
515
|
"metadata": {},
|
|
845
516
|
"source": [
|
|
846
|
-
"#### Execute
|
|
517
|
+
"#### Execute FIND\n",
|
|
518
|
+
"Execute the `client.find()` method with our parameters.\n",
|
|
847
519
|
"The `limit` argument here is being used for demonstration purposes only, and simply returns only the first 20 results here."
|
|
848
520
|
]
|
|
849
521
|
},
|
|
850
522
|
{
|
|
851
523
|
"cell_type": "code",
|
|
852
|
-
"execution_count":
|
|
524
|
+
"execution_count": 15,
|
|
853
525
|
"metadata": {
|
|
854
|
-
"scrolled": true
|
|
526
|
+
"scrolled": true,
|
|
527
|
+
"tags": []
|
|
855
528
|
},
|
|
856
529
|
"outputs": [
|
|
857
530
|
{
|
|
858
531
|
"name": "stdout",
|
|
859
532
|
"output_type": "stream",
|
|
860
533
|
"text": [
|
|
861
|
-
"
|
|
534
|
+
"url=http://localhost:8050/sparc/find/?limit=20 sspec={'outfields': ['sparcl_id', 'specid', 'ra', 'dec', 'redshift', 'spectype', 'data_release', 'redshift_err'], 'search': [['spectype', 'GALAXY'], ['redshift', 0.5, 0.9], ['data_release', 'BOSS-DR16', 'SDSS-DR16']]}\n",
|
|
535
|
+
"curl -X 'POST' -H 'Content-Type: application/json' -d '{\"outfields\": [\"sparcl_id\", \"specid\", \"ra\", \"dec\", \"redshift\", \"spectype\", \"data_release\", \"redshift_err\"], \"search\": [[\"spectype\", \"GALAXY\"], [\"redshift\", 0.5, 0.9], [\"data_release\", \"BOSS-DR16\", \"SDSS-DR16\"]]}' 'http://localhost:8050/sparc/find/?limit=20' | python3 -m json.tool\n",
|
|
536
|
+
"Record key counts: {'spectype': 20, 'redshift': 20, 'sparcl_id': 20, 'ra': 20, 'dec': 20, 'specid': 20, '_dr': 20, 'data_release': 20, 'redshift_err': 20}\n"
|
|
862
537
|
]
|
|
863
538
|
}
|
|
864
539
|
],
|
|
@@ -868,8 +543,19 @@
|
|
|
868
543
|
},
|
|
869
544
|
{
|
|
870
545
|
"cell_type": "code",
|
|
871
|
-
"execution_count":
|
|
872
|
-
"metadata": {
|
|
546
|
+
"execution_count": null,
|
|
547
|
+
"metadata": {
|
|
548
|
+
"scrolled": true
|
|
549
|
+
},
|
|
550
|
+
"outputs": [],
|
|
551
|
+
"source": []
|
|
552
|
+
},
|
|
553
|
+
{
|
|
554
|
+
"cell_type": "code",
|
|
555
|
+
"execution_count": 16,
|
|
556
|
+
"metadata": {
|
|
557
|
+
"tags": []
|
|
558
|
+
},
|
|
873
559
|
"outputs": [
|
|
874
560
|
{
|
|
875
561
|
"data": {
|
|
@@ -892,256 +578,256 @@
|
|
|
892
578
|
" <thead>\n",
|
|
893
579
|
" <tr style=\"text-align: right;\">\n",
|
|
894
580
|
" <th></th>\n",
|
|
895
|
-
" <th>redshift_err</th>\n",
|
|
896
|
-
" <th>sparcl_id</th>\n",
|
|
897
|
-
" <th>data_release</th>\n",
|
|
898
581
|
" <th>redshift</th>\n",
|
|
899
|
-
" <th>
|
|
582
|
+
" <th>ra</th>\n",
|
|
900
583
|
" <th>dec</th>\n",
|
|
584
|
+
" <th>data_release</th>\n",
|
|
585
|
+
" <th>specid</th>\n",
|
|
586
|
+
" <th>redshift_err</th>\n",
|
|
901
587
|
" <th>spectype</th>\n",
|
|
902
|
-
" <th>
|
|
588
|
+
" <th>sparcl_id</th>\n",
|
|
903
589
|
" <th>_dr</th>\n",
|
|
904
590
|
" </tr>\n",
|
|
905
591
|
" </thead>\n",
|
|
906
592
|
" <tbody>\n",
|
|
907
593
|
" <tr>\n",
|
|
908
594
|
" <th>0</th>\n",
|
|
909
|
-
" <td>0.
|
|
910
|
-
" <td>
|
|
911
|
-
" <td>
|
|
912
|
-
" <td>
|
|
913
|
-
" <td
|
|
914
|
-
" <td>
|
|
595
|
+
" <td>0.545929</td>\n",
|
|
596
|
+
" <td>246.74298</td>\n",
|
|
597
|
+
" <td>35.985258</td>\n",
|
|
598
|
+
" <td>SDSS-DR16</td>\n",
|
|
599
|
+
" <td>1506516519029336064</td>\n",
|
|
600
|
+
" <td>0.000422</td>\n",
|
|
915
601
|
" <td>GALAXY</td>\n",
|
|
916
|
-
" <td>
|
|
917
|
-
" <td>
|
|
602
|
+
" <td>2c6c82dc-fe87-11ee-838b-08002725f1ef</td>\n",
|
|
603
|
+
" <td>SDSS-DR16</td>\n",
|
|
918
604
|
" </tr>\n",
|
|
919
605
|
" <tr>\n",
|
|
920
606
|
" <th>1</th>\n",
|
|
921
|
-
" <td>0.
|
|
922
|
-
" <td>
|
|
923
|
-
" <td>
|
|
924
|
-
" <td>
|
|
925
|
-
" <td
|
|
926
|
-
" <td>
|
|
607
|
+
" <td>0.667431</td>\n",
|
|
608
|
+
" <td>245.40676</td>\n",
|
|
609
|
+
" <td>36.438884</td>\n",
|
|
610
|
+
" <td>SDSS-DR16</td>\n",
|
|
611
|
+
" <td>1506548404866541568</td>\n",
|
|
612
|
+
" <td>0.000026</td>\n",
|
|
927
613
|
" <td>GALAXY</td>\n",
|
|
928
|
-
" <td>
|
|
929
|
-
" <td>
|
|
614
|
+
" <td>3063feb6-fe87-11ee-8aa0-08002725f1ef</td>\n",
|
|
615
|
+
" <td>SDSS-DR16</td>\n",
|
|
930
616
|
" </tr>\n",
|
|
931
617
|
" <tr>\n",
|
|
932
618
|
" <th>2</th>\n",
|
|
933
|
-
" <td>0.
|
|
934
|
-
" <td>
|
|
935
|
-
" <td>
|
|
936
|
-
" <td>
|
|
937
|
-
" <td
|
|
938
|
-
" <td>
|
|
619
|
+
" <td>0.502511</td>\n",
|
|
620
|
+
" <td>246.45702</td>\n",
|
|
621
|
+
" <td>36.657405</td>\n",
|
|
622
|
+
" <td>SDSS-DR16</td>\n",
|
|
623
|
+
" <td>1506572869000259584</td>\n",
|
|
624
|
+
" <td>0.000172</td>\n",
|
|
939
625
|
" <td>GALAXY</td>\n",
|
|
940
|
-
" <td>
|
|
941
|
-
" <td>
|
|
626
|
+
" <td>336d71cf-fe87-11ee-9390-08002725f1ef</td>\n",
|
|
627
|
+
" <td>SDSS-DR16</td>\n",
|
|
942
628
|
" </tr>\n",
|
|
943
629
|
" <tr>\n",
|
|
944
630
|
" <th>3</th>\n",
|
|
945
|
-
" <td>0.
|
|
946
|
-
" <td>
|
|
947
|
-
" <td>
|
|
948
|
-
" <td>
|
|
949
|
-
" <td
|
|
950
|
-
" <td>
|
|
631
|
+
" <td>0.724874</td>\n",
|
|
632
|
+
" <td>246.89323</td>\n",
|
|
633
|
+
" <td>37.209662</td>\n",
|
|
634
|
+
" <td>SDSS-DR16</td>\n",
|
|
635
|
+
" <td>1506578916314212352</td>\n",
|
|
636
|
+
" <td>11.831918</td>\n",
|
|
951
637
|
" <td>GALAXY</td>\n",
|
|
952
|
-
" <td>
|
|
953
|
-
" <td>
|
|
638
|
+
" <td>342e5eaa-fe87-11ee-9047-08002725f1ef</td>\n",
|
|
639
|
+
" <td>SDSS-DR16</td>\n",
|
|
954
640
|
" </tr>\n",
|
|
955
641
|
" <tr>\n",
|
|
956
642
|
" <th>4</th>\n",
|
|
957
|
-
" <td>0.
|
|
958
|
-
" <td>
|
|
959
|
-
" <td>
|
|
960
|
-
" <td>
|
|
961
|
-
" <td
|
|
962
|
-
" <td>
|
|
643
|
+
" <td>0.741196</td>\n",
|
|
644
|
+
" <td>247.40873</td>\n",
|
|
645
|
+
" <td>36.381456</td>\n",
|
|
646
|
+
" <td>SDSS-DR16</td>\n",
|
|
647
|
+
" <td>1506596508500256768</td>\n",
|
|
648
|
+
" <td>0.614932</td>\n",
|
|
963
649
|
" <td>GALAXY</td>\n",
|
|
964
|
-
" <td>
|
|
965
|
-
" <td>
|
|
650
|
+
" <td>36565b1b-fe87-11ee-b857-08002725f1ef</td>\n",
|
|
651
|
+
" <td>SDSS-DR16</td>\n",
|
|
966
652
|
" </tr>\n",
|
|
967
653
|
" <tr>\n",
|
|
968
654
|
" <th>5</th>\n",
|
|
969
|
-
" <td>0.
|
|
970
|
-
" <td>
|
|
655
|
+
" <td>0.675723</td>\n",
|
|
656
|
+
" <td>134.10755</td>\n",
|
|
657
|
+
" <td>28.038851</td>\n",
|
|
971
658
|
" <td>BOSS-DR16</td>\n",
|
|
972
|
-
" <td
|
|
973
|
-
" <td
|
|
974
|
-
" <td>28.450988</td>\n",
|
|
659
|
+
" <td>-6444647351317147648</td>\n",
|
|
660
|
+
" <td>0.000241</td>\n",
|
|
975
661
|
" <td>GALAXY</td>\n",
|
|
976
|
-
" <td>
|
|
662
|
+
" <td>5182df54-fe87-11ee-a660-08002725f1ef</td>\n",
|
|
977
663
|
" <td>BOSS-DR16</td>\n",
|
|
978
664
|
" </tr>\n",
|
|
979
665
|
" <tr>\n",
|
|
980
666
|
" <th>6</th>\n",
|
|
981
|
-
" <td>0.
|
|
982
|
-
" <td>
|
|
667
|
+
" <td>0.782685</td>\n",
|
|
668
|
+
" <td>134.23727</td>\n",
|
|
669
|
+
" <td>28.084685</td>\n",
|
|
983
670
|
" <td>BOSS-DR16</td>\n",
|
|
984
|
-
" <td
|
|
985
|
-
" <td
|
|
986
|
-
" <td>27.305313</td>\n",
|
|
671
|
+
" <td>-6444646251805519872</td>\n",
|
|
672
|
+
" <td>0.000242</td>\n",
|
|
987
673
|
" <td>GALAXY</td>\n",
|
|
988
|
-
" <td>
|
|
674
|
+
" <td>51ad9b94-fe87-11ee-af3e-08002725f1ef</td>\n",
|
|
989
675
|
" <td>BOSS-DR16</td>\n",
|
|
990
676
|
" </tr>\n",
|
|
991
677
|
" <tr>\n",
|
|
992
678
|
" <th>7</th>\n",
|
|
993
|
-
" <td>0.
|
|
994
|
-
" <td>
|
|
679
|
+
" <td>0.797439</td>\n",
|
|
680
|
+
" <td>133.98095</td>\n",
|
|
681
|
+
" <td>28.226386</td>\n",
|
|
995
682
|
" <td>BOSS-DR16</td>\n",
|
|
996
|
-
" <td
|
|
997
|
-
" <td
|
|
998
|
-
" <td>27.381025</td>\n",
|
|
683
|
+
" <td>-6444643503026450432</td>\n",
|
|
684
|
+
" <td>0.000424</td>\n",
|
|
999
685
|
" <td>GALAXY</td>\n",
|
|
1000
|
-
" <td>
|
|
686
|
+
" <td>521321c8-fe87-11ee-946d-08002725f1ef</td>\n",
|
|
1001
687
|
" <td>BOSS-DR16</td>\n",
|
|
1002
688
|
" </tr>\n",
|
|
1003
689
|
" <tr>\n",
|
|
1004
690
|
" <th>8</th>\n",
|
|
1005
|
-
" <td>0.
|
|
1006
|
-
" <td>
|
|
691
|
+
" <td>0.647712</td>\n",
|
|
692
|
+
" <td>134.54531</td>\n",
|
|
693
|
+
" <td>28.429551</td>\n",
|
|
1007
694
|
" <td>BOSS-DR16</td>\n",
|
|
1008
|
-
" <td
|
|
1009
|
-
" <td
|
|
1010
|
-
" <td>
|
|
1011
|
-
" <td>
|
|
1012
|
-
" <td>133.95189</td>\n",
|
|
695
|
+
" <td>-6444641304003194880</td>\n",
|
|
696
|
+
" <td>0.000238</td>\n",
|
|
697
|
+
" <td>GALAXY</td>\n",
|
|
698
|
+
" <td>52643970-fe87-11ee-abb3-08002725f1ef</td>\n",
|
|
1013
699
|
" <td>BOSS-DR16</td>\n",
|
|
1014
700
|
" </tr>\n",
|
|
1015
701
|
" <tr>\n",
|
|
1016
702
|
" <th>9</th>\n",
|
|
1017
|
-
" <td>0.
|
|
1018
|
-
" <td>
|
|
703
|
+
" <td>0.886086</td>\n",
|
|
704
|
+
" <td>134.46525</td>\n",
|
|
705
|
+
" <td>28.452505</td>\n",
|
|
1019
706
|
" <td>BOSS-DR16</td>\n",
|
|
1020
|
-
" <td
|
|
1021
|
-
" <td
|
|
1022
|
-
" <td>27.571681</td>\n",
|
|
707
|
+
" <td>-6444640754247380992</td>\n",
|
|
708
|
+
" <td>0.000274</td>\n",
|
|
1023
709
|
" <td>GALAXY</td>\n",
|
|
1024
|
-
" <td>
|
|
710
|
+
" <td>5278859e-fe87-11ee-8427-08002725f1ef</td>\n",
|
|
1025
711
|
" <td>BOSS-DR16</td>\n",
|
|
1026
712
|
" </tr>\n",
|
|
1027
713
|
" <tr>\n",
|
|
1028
714
|
" <th>10</th>\n",
|
|
1029
|
-
" <td>0.
|
|
1030
|
-
" <td>
|
|
715
|
+
" <td>0.898559</td>\n",
|
|
716
|
+
" <td>134.43695</td>\n",
|
|
717
|
+
" <td>28.450988</td>\n",
|
|
1031
718
|
" <td>BOSS-DR16</td>\n",
|
|
1032
|
-
" <td
|
|
1033
|
-
" <td
|
|
1034
|
-
" <td>27.491442</td>\n",
|
|
719
|
+
" <td>-6444640204491567104</td>\n",
|
|
720
|
+
" <td>0.000311</td>\n",
|
|
1035
721
|
" <td>GALAXY</td>\n",
|
|
1036
|
-
" <td>
|
|
722
|
+
" <td>52913c34-fe87-11ee-844b-08002725f1ef</td>\n",
|
|
1037
723
|
" <td>BOSS-DR16</td>\n",
|
|
1038
724
|
" </tr>\n",
|
|
1039
725
|
" <tr>\n",
|
|
1040
726
|
" <th>11</th>\n",
|
|
1041
|
-
" <td>0.
|
|
1042
|
-
" <td>
|
|
727
|
+
" <td>0.566015</td>\n",
|
|
728
|
+
" <td>133.95386</td>\n",
|
|
729
|
+
" <td>27.305313</td>\n",
|
|
1043
730
|
" <td>BOSS-DR16</td>\n",
|
|
1044
|
-
" <td
|
|
1045
|
-
" <td
|
|
1046
|
-
" <td>27.657880</td>\n",
|
|
731
|
+
" <td>-6444639654735753216</td>\n",
|
|
732
|
+
" <td>0.000315</td>\n",
|
|
1047
733
|
" <td>GALAXY</td>\n",
|
|
1048
|
-
" <td>
|
|
734
|
+
" <td>52a796f0-fe87-11ee-b337-08002725f1ef</td>\n",
|
|
1049
735
|
" <td>BOSS-DR16</td>\n",
|
|
1050
736
|
" </tr>\n",
|
|
1051
737
|
" <tr>\n",
|
|
1052
738
|
" <th>12</th>\n",
|
|
1053
|
-
" <td>0.
|
|
1054
|
-
" <td>
|
|
739
|
+
" <td>0.599517</td>\n",
|
|
740
|
+
" <td>134.05133</td>\n",
|
|
741
|
+
" <td>27.381025</td>\n",
|
|
1055
742
|
" <td>BOSS-DR16</td>\n",
|
|
1056
|
-
" <td
|
|
1057
|
-
" <td
|
|
1058
|
-
" <td>28.080178</td>\n",
|
|
743
|
+
" <td>-6444639104979939328</td>\n",
|
|
744
|
+
" <td>0.000412</td>\n",
|
|
1059
745
|
" <td>GALAXY</td>\n",
|
|
1060
|
-
" <td>
|
|
746
|
+
" <td>52bbb47f-fe87-11ee-b8d7-08002725f1ef</td>\n",
|
|
1061
747
|
" <td>BOSS-DR16</td>\n",
|
|
1062
748
|
" </tr>\n",
|
|
1063
749
|
" <tr>\n",
|
|
1064
750
|
" <th>13</th>\n",
|
|
1065
|
-
" <td>0.
|
|
1066
|
-
" <td>
|
|
751
|
+
" <td>0.812179</td>\n",
|
|
752
|
+
" <td>133.95189</td>\n",
|
|
753
|
+
" <td>27.333753</td>\n",
|
|
1067
754
|
" <td>BOSS-DR16</td>\n",
|
|
1068
|
-
" <td
|
|
1069
|
-
" <td
|
|
1070
|
-
" <td>27.907149</td>\n",
|
|
755
|
+
" <td>-6444638555224125440</td>\n",
|
|
756
|
+
" <td>0.000338</td>\n",
|
|
1071
757
|
" <td>GALAXY</td>\n",
|
|
1072
|
-
" <td>
|
|
758
|
+
" <td>52cfb971-fe87-11ee-be51-08002725f1ef</td>\n",
|
|
1073
759
|
" <td>BOSS-DR16</td>\n",
|
|
1074
760
|
" </tr>\n",
|
|
1075
761
|
" <tr>\n",
|
|
1076
762
|
" <th>14</th>\n",
|
|
1077
|
-
" <td>0.
|
|
1078
|
-
" <td>
|
|
763
|
+
" <td>0.795586</td>\n",
|
|
764
|
+
" <td>134.21014</td>\n",
|
|
765
|
+
" <td>27.571681</td>\n",
|
|
1079
766
|
" <td>BOSS-DR16</td>\n",
|
|
1080
|
-
" <td
|
|
1081
|
-
" <td
|
|
1082
|
-
" <td>28.192423</td>\n",
|
|
767
|
+
" <td>-6444638005468311552</td>\n",
|
|
768
|
+
" <td>0.000337</td>\n",
|
|
1083
769
|
" <td>GALAXY</td>\n",
|
|
1084
|
-
" <td>
|
|
770
|
+
" <td>52e3cf35-fe87-11ee-b89c-08002725f1ef</td>\n",
|
|
1085
771
|
" <td>BOSS-DR16</td>\n",
|
|
1086
772
|
" </tr>\n",
|
|
1087
773
|
" <tr>\n",
|
|
1088
774
|
" <th>15</th>\n",
|
|
1089
|
-
" <td>0.
|
|
1090
|
-
" <td>
|
|
775
|
+
" <td>0.554642</td>\n",
|
|
776
|
+
" <td>134.11568</td>\n",
|
|
777
|
+
" <td>27.491442</td>\n",
|
|
1091
778
|
" <td>BOSS-DR16</td>\n",
|
|
1092
|
-
" <td
|
|
1093
|
-
" <td
|
|
1094
|
-
" <td>28.359336</td>\n",
|
|
779
|
+
" <td>-6444636356200869888</td>\n",
|
|
780
|
+
" <td>0.000287</td>\n",
|
|
1095
781
|
" <td>GALAXY</td>\n",
|
|
1096
|
-
" <td>
|
|
782
|
+
" <td>53203e47-fe87-11ee-b26f-08002725f1ef</td>\n",
|
|
1097
783
|
" <td>BOSS-DR16</td>\n",
|
|
1098
784
|
" </tr>\n",
|
|
1099
785
|
" <tr>\n",
|
|
1100
786
|
" <th>16</th>\n",
|
|
1101
|
-
" <td>0.
|
|
1102
|
-
" <td>
|
|
787
|
+
" <td>0.688878</td>\n",
|
|
788
|
+
" <td>134.19652</td>\n",
|
|
789
|
+
" <td>27.657880</td>\n",
|
|
1103
790
|
" <td>BOSS-DR16</td>\n",
|
|
1104
|
-
" <td
|
|
1105
|
-
" <td
|
|
1106
|
-
" <td>27.463273</td>\n",
|
|
791
|
+
" <td>-6444635256689242112</td>\n",
|
|
792
|
+
" <td>0.000177</td>\n",
|
|
1107
793
|
" <td>GALAXY</td>\n",
|
|
1108
|
-
" <td>
|
|
794
|
+
" <td>534af931-fe87-11ee-8467-08002725f1ef</td>\n",
|
|
1109
795
|
" <td>BOSS-DR16</td>\n",
|
|
1110
796
|
" </tr>\n",
|
|
1111
797
|
" <tr>\n",
|
|
1112
798
|
" <th>17</th>\n",
|
|
1113
|
-
" <td>0.
|
|
1114
|
-
" <td>
|
|
799
|
+
" <td>0.638226</td>\n",
|
|
800
|
+
" <td>133.85629</td>\n",
|
|
801
|
+
" <td>28.080178</td>\n",
|
|
1115
802
|
" <td>BOSS-DR16</td>\n",
|
|
1116
|
-
" <td
|
|
1117
|
-
" <td
|
|
1118
|
-
" <td>27.582793</td>\n",
|
|
803
|
+
" <td>-6444633057665986560</td>\n",
|
|
804
|
+
" <td>0.000194</td>\n",
|
|
1119
805
|
" <td>GALAXY</td>\n",
|
|
1120
|
-
" <td>
|
|
806
|
+
" <td>539b0add-fe87-11ee-b991-08002725f1ef</td>\n",
|
|
1121
807
|
" <td>BOSS-DR16</td>\n",
|
|
1122
808
|
" </tr>\n",
|
|
1123
809
|
" <tr>\n",
|
|
1124
810
|
" <th>18</th>\n",
|
|
1125
|
-
" <td>0.
|
|
1126
|
-
" <td>
|
|
811
|
+
" <td>0.614235</td>\n",
|
|
812
|
+
" <td>133.79296</td>\n",
|
|
813
|
+
" <td>27.907149</td>\n",
|
|
1127
814
|
" <td>BOSS-DR16</td>\n",
|
|
1128
|
-
" <td
|
|
1129
|
-
" <td
|
|
1130
|
-
" <td>27.730007</td>\n",
|
|
815
|
+
" <td>-6444632233032265728</td>\n",
|
|
816
|
+
" <td>0.000294</td>\n",
|
|
1131
817
|
" <td>GALAXY</td>\n",
|
|
1132
|
-
" <td>
|
|
818
|
+
" <td>53b9cd41-fe87-11ee-8132-08002725f1ef</td>\n",
|
|
1133
819
|
" <td>BOSS-DR16</td>\n",
|
|
1134
820
|
" </tr>\n",
|
|
1135
821
|
" <tr>\n",
|
|
1136
822
|
" <th>19</th>\n",
|
|
1137
|
-
" <td>0.
|
|
1138
|
-
" <td>
|
|
823
|
+
" <td>0.804484</td>\n",
|
|
824
|
+
" <td>133.87033</td>\n",
|
|
825
|
+
" <td>28.192423</td>\n",
|
|
1139
826
|
" <td>BOSS-DR16</td>\n",
|
|
1140
|
-
" <td
|
|
1141
|
-
" <td
|
|
1142
|
-
" <td>27.833640</td>\n",
|
|
827
|
+
" <td>-6444631408398544896</td>\n",
|
|
828
|
+
" <td>0.000317</td>\n",
|
|
1143
829
|
" <td>GALAXY</td>\n",
|
|
1144
|
-
" <td>
|
|
830
|
+
" <td>53d853da-fe87-11ee-9f77-08002725f1ef</td>\n",
|
|
1145
831
|
" <td>BOSS-DR16</td>\n",
|
|
1146
832
|
" </tr>\n",
|
|
1147
833
|
" </tbody>\n",
|
|
@@ -1149,52 +835,52 @@
|
|
|
1149
835
|
"</div>"
|
|
1150
836
|
],
|
|
1151
837
|
"text/plain": [
|
|
1152
|
-
"
|
|
1153
|
-
"0
|
|
1154
|
-
"1
|
|
1155
|
-
"2
|
|
1156
|
-
"3
|
|
1157
|
-
"4
|
|
1158
|
-
"5
|
|
1159
|
-
"6
|
|
1160
|
-
"7
|
|
1161
|
-
"8
|
|
1162
|
-
"9
|
|
1163
|
-
"10
|
|
1164
|
-
"11
|
|
1165
|
-
"12
|
|
1166
|
-
"13
|
|
1167
|
-
"14
|
|
1168
|
-
"15
|
|
1169
|
-
"16
|
|
1170
|
-
"17
|
|
1171
|
-
"18
|
|
1172
|
-
"19
|
|
838
|
+
" redshift ra dec data_release specid \\\n",
|
|
839
|
+
"0 0.545929 246.74298 35.985258 SDSS-DR16 1506516519029336064 \n",
|
|
840
|
+
"1 0.667431 245.40676 36.438884 SDSS-DR16 1506548404866541568 \n",
|
|
841
|
+
"2 0.502511 246.45702 36.657405 SDSS-DR16 1506572869000259584 \n",
|
|
842
|
+
"3 0.724874 246.89323 37.209662 SDSS-DR16 1506578916314212352 \n",
|
|
843
|
+
"4 0.741196 247.40873 36.381456 SDSS-DR16 1506596508500256768 \n",
|
|
844
|
+
"5 0.675723 134.10755 28.038851 BOSS-DR16 -6444647351317147648 \n",
|
|
845
|
+
"6 0.782685 134.23727 28.084685 BOSS-DR16 -6444646251805519872 \n",
|
|
846
|
+
"7 0.797439 133.98095 28.226386 BOSS-DR16 -6444643503026450432 \n",
|
|
847
|
+
"8 0.647712 134.54531 28.429551 BOSS-DR16 -6444641304003194880 \n",
|
|
848
|
+
"9 0.886086 134.46525 28.452505 BOSS-DR16 -6444640754247380992 \n",
|
|
849
|
+
"10 0.898559 134.43695 28.450988 BOSS-DR16 -6444640204491567104 \n",
|
|
850
|
+
"11 0.566015 133.95386 27.305313 BOSS-DR16 -6444639654735753216 \n",
|
|
851
|
+
"12 0.599517 134.05133 27.381025 BOSS-DR16 -6444639104979939328 \n",
|
|
852
|
+
"13 0.812179 133.95189 27.333753 BOSS-DR16 -6444638555224125440 \n",
|
|
853
|
+
"14 0.795586 134.21014 27.571681 BOSS-DR16 -6444638005468311552 \n",
|
|
854
|
+
"15 0.554642 134.11568 27.491442 BOSS-DR16 -6444636356200869888 \n",
|
|
855
|
+
"16 0.688878 134.19652 27.657880 BOSS-DR16 -6444635256689242112 \n",
|
|
856
|
+
"17 0.638226 133.85629 28.080178 BOSS-DR16 -6444633057665986560 \n",
|
|
857
|
+
"18 0.614235 133.79296 27.907149 BOSS-DR16 -6444632233032265728 \n",
|
|
858
|
+
"19 0.804484 133.87033 28.192423 BOSS-DR16 -6444631408398544896 \n",
|
|
1173
859
|
"\n",
|
|
1174
|
-
"
|
|
1175
|
-
"0
|
|
1176
|
-
"1
|
|
1177
|
-
"2
|
|
1178
|
-
"3
|
|
1179
|
-
"4
|
|
1180
|
-
"5
|
|
1181
|
-
"6
|
|
1182
|
-
"7
|
|
1183
|
-
"8
|
|
1184
|
-
"9
|
|
1185
|
-
"10
|
|
1186
|
-
"11
|
|
1187
|
-
"12
|
|
1188
|
-
"13
|
|
1189
|
-
"14
|
|
1190
|
-
"15
|
|
1191
|
-
"16
|
|
1192
|
-
"17
|
|
1193
|
-
"18
|
|
1194
|
-
"19
|
|
860
|
+
" redshift_err spectype sparcl_id _dr \n",
|
|
861
|
+
"0 0.000422 GALAXY 2c6c82dc-fe87-11ee-838b-08002725f1ef SDSS-DR16 \n",
|
|
862
|
+
"1 0.000026 GALAXY 3063feb6-fe87-11ee-8aa0-08002725f1ef SDSS-DR16 \n",
|
|
863
|
+
"2 0.000172 GALAXY 336d71cf-fe87-11ee-9390-08002725f1ef SDSS-DR16 \n",
|
|
864
|
+
"3 11.831918 GALAXY 342e5eaa-fe87-11ee-9047-08002725f1ef SDSS-DR16 \n",
|
|
865
|
+
"4 0.614932 GALAXY 36565b1b-fe87-11ee-b857-08002725f1ef SDSS-DR16 \n",
|
|
866
|
+
"5 0.000241 GALAXY 5182df54-fe87-11ee-a660-08002725f1ef BOSS-DR16 \n",
|
|
867
|
+
"6 0.000242 GALAXY 51ad9b94-fe87-11ee-af3e-08002725f1ef BOSS-DR16 \n",
|
|
868
|
+
"7 0.000424 GALAXY 521321c8-fe87-11ee-946d-08002725f1ef BOSS-DR16 \n",
|
|
869
|
+
"8 0.000238 GALAXY 52643970-fe87-11ee-abb3-08002725f1ef BOSS-DR16 \n",
|
|
870
|
+
"9 0.000274 GALAXY 5278859e-fe87-11ee-8427-08002725f1ef BOSS-DR16 \n",
|
|
871
|
+
"10 0.000311 GALAXY 52913c34-fe87-11ee-844b-08002725f1ef BOSS-DR16 \n",
|
|
872
|
+
"11 0.000315 GALAXY 52a796f0-fe87-11ee-b337-08002725f1ef BOSS-DR16 \n",
|
|
873
|
+
"12 0.000412 GALAXY 52bbb47f-fe87-11ee-b8d7-08002725f1ef BOSS-DR16 \n",
|
|
874
|
+
"13 0.000338 GALAXY 52cfb971-fe87-11ee-be51-08002725f1ef BOSS-DR16 \n",
|
|
875
|
+
"14 0.000337 GALAXY 52e3cf35-fe87-11ee-b89c-08002725f1ef BOSS-DR16 \n",
|
|
876
|
+
"15 0.000287 GALAXY 53203e47-fe87-11ee-b26f-08002725f1ef BOSS-DR16 \n",
|
|
877
|
+
"16 0.000177 GALAXY 534af931-fe87-11ee-8467-08002725f1ef BOSS-DR16 \n",
|
|
878
|
+
"17 0.000194 GALAXY 539b0add-fe87-11ee-b991-08002725f1ef BOSS-DR16 \n",
|
|
879
|
+
"18 0.000294 GALAXY 53b9cd41-fe87-11ee-8132-08002725f1ef BOSS-DR16 \n",
|
|
880
|
+
"19 0.000317 GALAXY 53d853da-fe87-11ee-9f77-08002725f1ef BOSS-DR16 "
|
|
1195
881
|
]
|
|
1196
882
|
},
|
|
1197
|
-
"execution_count":
|
|
883
|
+
"execution_count": 16,
|
|
1198
884
|
"metadata": {},
|
|
1199
885
|
"output_type": "execute_result"
|
|
1200
886
|
}
|
|
@@ -1227,78 +913,33 @@
|
|
|
1227
913
|
},
|
|
1228
914
|
{
|
|
1229
915
|
"cell_type": "code",
|
|
1230
|
-
"execution_count":
|
|
916
|
+
"execution_count": 17,
|
|
1231
917
|
"metadata": {
|
|
1232
|
-
"scrolled": true
|
|
918
|
+
"scrolled": true,
|
|
919
|
+
"tags": []
|
|
1233
920
|
},
|
|
1234
|
-
"outputs": [
|
|
1235
|
-
{
|
|
1236
|
-
"data": {
|
|
1237
|
-
"text/plain": [
|
|
1238
|
-
"\u001b[0;31mSignature:\u001b[0m\n",
|
|
1239
|
-
"\u001b[0mclient\u001b[0m\u001b[0;34m.\u001b[0m\u001b[0mretrieve\u001b[0m\u001b[0;34m(\u001b[0m\u001b[0;34m\u001b[0m\n",
|
|
1240
|
-
"\u001b[0;34m\u001b[0m \u001b[0muuid_list\u001b[0m\u001b[0;34m,\u001b[0m\u001b[0;34m\u001b[0m\n",
|
|
1241
|
-
"\u001b[0;34m\u001b[0m \u001b[0;34m*\u001b[0m\u001b[0;34m,\u001b[0m\u001b[0;34m\u001b[0m\n",
|
|
1242
|
-
"\u001b[0;34m\u001b[0m \u001b[0minclude\u001b[0m\u001b[0;34m=\u001b[0m\u001b[0;34m'DEFAULT'\u001b[0m\u001b[0;34m,\u001b[0m\u001b[0;34m\u001b[0m\n",
|
|
1243
|
-
"\u001b[0;34m\u001b[0m \u001b[0mdataset_list\u001b[0m\u001b[0;34m=\u001b[0m\u001b[0;32mNone\u001b[0m\u001b[0;34m,\u001b[0m\u001b[0;34m\u001b[0m\n",
|
|
1244
|
-
"\u001b[0;34m\u001b[0m \u001b[0mlimit\u001b[0m\u001b[0;34m=\u001b[0m\u001b[0;36m500\u001b[0m\u001b[0;34m,\u001b[0m\u001b[0;34m\u001b[0m\n",
|
|
1245
|
-
"\u001b[0;34m\u001b[0m \u001b[0mverbose\u001b[0m\u001b[0;34m=\u001b[0m\u001b[0;32mNone\u001b[0m\u001b[0;34m,\u001b[0m\u001b[0;34m\u001b[0m\n",
|
|
1246
|
-
"\u001b[0;34m\u001b[0m\u001b[0;34m)\u001b[0m\u001b[0;34m\u001b[0m\u001b[0;34m\u001b[0m\u001b[0m\n",
|
|
1247
|
-
"\u001b[0;31mDocstring:\u001b[0m\n",
|
|
1248
|
-
"Retrieve spectra records from the SPARC database by list of\n",
|
|
1249
|
-
"sparcl_ids.\n",
|
|
1250
|
-
"\n",
|
|
1251
|
-
"Args:\n",
|
|
1252
|
-
" uuid_list (:obj:`list`): List of sparcl_ids.\n",
|
|
1253
|
-
"\n",
|
|
1254
|
-
" include (:obj:`list`, optional): List of field names to include\n",
|
|
1255
|
-
" in each record. Defaults to 'DEFAULT', which will return\n",
|
|
1256
|
-
" the fields tagged as 'default'.\n",
|
|
1257
|
-
"\n",
|
|
1258
|
-
" dataset_list (:obj:`list`, optional): List of data sets from\n",
|
|
1259
|
-
" which to retrieve spectra data. Defaults to None, meaning all\n",
|
|
1260
|
-
" data sets hosted on the SPARC database.\n",
|
|
1261
|
-
"\n",
|
|
1262
|
-
" limit (:obj:`int`, optional): Maximum number of records to\n",
|
|
1263
|
-
" return. Defaults to 500. Maximum allowed is 24,000.\n",
|
|
1264
|
-
"\n",
|
|
1265
|
-
" verbose (:obj:`bool`, optional): Set to True for in-depth return\n",
|
|
1266
|
-
" statement. Defaults to False.\n",
|
|
1267
|
-
"\n",
|
|
1268
|
-
"Returns:\n",
|
|
1269
|
-
" :class:`~sparcl.Results.Retrieved`: Contains header and records.\n",
|
|
1270
|
-
"\n",
|
|
1271
|
-
"Example:\n",
|
|
1272
|
-
" >>> client = SparclClient()\n",
|
|
1273
|
-
" >>> ids = ['00000f0b-07db-4234-892a-6e347db79c89',]\n",
|
|
1274
|
-
" >>> inc = ['sparcl_id', 'flux', 'wavelength', 'model']\n",
|
|
1275
|
-
" >>> ret = client.retrieve(uuid_list=ids, include=inc)\n",
|
|
1276
|
-
" >>> type(ret.records[0].wavelength)\n",
|
|
1277
|
-
" <class 'numpy.ndarray'>\n",
|
|
1278
|
-
"\u001b[0;31mFile:\u001b[0m ~/sandbox/sparclclient/venv/lib/python3.10/site-packages/sparcl/client.py\n",
|
|
1279
|
-
"\u001b[0;31mType:\u001b[0m method"
|
|
1280
|
-
]
|
|
1281
|
-
},
|
|
1282
|
-
"metadata": {},
|
|
1283
|
-
"output_type": "display_data"
|
|
1284
|
-
}
|
|
1285
|
-
],
|
|
921
|
+
"outputs": [],
|
|
1286
922
|
"source": [
|
|
1287
|
-
"
|
|
923
|
+
"if show_help:\n",
|
|
924
|
+
" client.retrieve?"
|
|
1288
925
|
]
|
|
1289
926
|
},
|
|
1290
927
|
{
|
|
1291
928
|
"cell_type": "markdown",
|
|
1292
929
|
"metadata": {},
|
|
1293
930
|
"source": [
|
|
1294
|
-
"#### Use
|
|
931
|
+
"#### Use IDs from FIND to RETRIEVE records\n",
|
|
932
|
+
"Use the IDs from the output of using `client.find()` to retrieve records from SPARCL. \n",
|
|
933
|
+
"\n",
|
|
1295
934
|
"Note that `ids` in `found_I.ids` is a property name of the Found class. It is a list of records from all records, not a field name of a record."
|
|
1296
935
|
]
|
|
1297
936
|
},
|
|
1298
937
|
{
|
|
1299
938
|
"cell_type": "code",
|
|
1300
|
-
"execution_count":
|
|
1301
|
-
"metadata": {
|
|
939
|
+
"execution_count": 18,
|
|
940
|
+
"metadata": {
|
|
941
|
+
"tags": []
|
|
942
|
+
},
|
|
1302
943
|
"outputs": [],
|
|
1303
944
|
"source": [
|
|
1304
945
|
"# Define the fields to include in the retrieve function\n",
|
|
@@ -1307,16 +948,22 @@
|
|
|
1307
948
|
},
|
|
1308
949
|
{
|
|
1309
950
|
"cell_type": "code",
|
|
1310
|
-
"execution_count":
|
|
1311
|
-
"metadata": {
|
|
951
|
+
"execution_count": 19,
|
|
952
|
+
"metadata": {
|
|
953
|
+
"tags": []
|
|
954
|
+
},
|
|
1312
955
|
"outputs": [
|
|
1313
956
|
{
|
|
1314
957
|
"name": "stdout",
|
|
1315
958
|
"output_type": "stream",
|
|
1316
959
|
"text": [
|
|
1317
|
-
"
|
|
1318
|
-
"
|
|
1319
|
-
"
|
|
960
|
+
"Using url=\"http://localhost:8050/sparc/spectras/?include=mask%2Cspectype%2Cmodel%2Credshift%2Cwavelength%2Cspecid%2Civar%2Cdata_release%2Cflux&format=pkl&dataset_list=SDSS-DR16%2CBOSS-DR16\"\n",
|
|
961
|
+
"curl -X 'POST' -H 'Content-Type: application/json' -d '[\"2c6c82dc-fe87-11ee-838b-08002725f1ef\", \"3063feb6-fe87-11ee-8aa0-08002725f1ef\", \"336d71cf-fe87-11ee-9390-08002725f1ef\", \"342e5eaa-fe87-11ee-9047-08002725f1ef\", \"36565b1b-fe87-11ee-b857-08002725f1ef\", \"5182df54-fe87-11ee-a660-08002725f1ef\", \"51ad9b94-fe87-11ee-af3e-08002725f1ef\", \"521321c8-fe87-11ee-946d-08002725f1ef\", \"52643970-fe87-11ee-abb3-08002725f1ef\", \"5278859e-fe87-11ee-8427-08002725f1ef\", \"52913c34-fe87-11ee-844b-08002725f1ef\", \"52a796f0-fe87-11ee-b337-08002725f1ef\", \"52bbb47f-fe87-11ee-b8d7-08002725f1ef\", \"52cfb971-fe87-11ee-be51-08002725f1ef\", \"52e3cf35-fe87-11ee-b89c-08002725f1ef\", \"53203e47-fe87-11ee-b26f-08002725f1ef\", \"534af931-fe87-11ee-8467-08002725f1ef\", \"539b0add-fe87-11ee-b991-08002725f1ef\", \"53b9cd41-fe87-11ee-8132-08002725f1ef\", \"53d853da-fe87-11ee-9f77-08002725f1ef\"]' 'http://localhost:8050/sparc/spectras/?include=mask%2Cspectype%2Cmodel%2Credshift%2Cwavelength%2Cspecid%2Civar%2Cdata_release%2Cflux&format=pkl&dataset_list=SDSS-DR16%2CBOSS-DR16' | python3 -m json.tool\n",
|
|
962
|
+
"Got response to post in 0.264625997049734 seconds\n",
|
|
963
|
+
"Got 20 spectra in 0.26 seconds (76 spectra/sec)\n",
|
|
964
|
+
"{'success': True, 'info': [\"Successfully found 20 records in dr_list=['SDSS-DR16', 'BOSS-DR16']\"], 'warnings': []}\n",
|
|
965
|
+
"CPU times: user 7.69 ms, sys: 10 ms, total: 17.7 ms\n",
|
|
966
|
+
"Wall time: 269 ms\n"
|
|
1320
967
|
]
|
|
1321
968
|
},
|
|
1322
969
|
{
|
|
@@ -1327,7 +974,7 @@
|
|
|
1327
974
|
" 'warnings': []}}"
|
|
1328
975
|
]
|
|
1329
976
|
},
|
|
1330
|
-
"execution_count":
|
|
977
|
+
"execution_count": 19,
|
|
1331
978
|
"metadata": {},
|
|
1332
979
|
"output_type": "execute_result"
|
|
1333
980
|
}
|
|
@@ -1342,28 +989,30 @@
|
|
|
1342
989
|
},
|
|
1343
990
|
{
|
|
1344
991
|
"cell_type": "code",
|
|
1345
|
-
"execution_count":
|
|
1346
|
-
"metadata": {
|
|
992
|
+
"execution_count": 20,
|
|
993
|
+
"metadata": {
|
|
994
|
+
"tags": []
|
|
995
|
+
},
|
|
1347
996
|
"outputs": [
|
|
1348
997
|
{
|
|
1349
998
|
"data": {
|
|
1350
999
|
"text/plain": [
|
|
1351
|
-
"{'
|
|
1352
|
-
" '
|
|
1000
|
+
"{'redshift': 0.5459291338920593,\n",
|
|
1001
|
+
" 'specid': 1506516519029336064,\n",
|
|
1353
1002
|
" 'spectype': 'GALAXY',\n",
|
|
1354
|
-
" '
|
|
1003
|
+
" 'data_release': 'SDSS-DR16',\n",
|
|
1004
|
+
" '_dr': 'SDSS-DR16',\n",
|
|
1355
1005
|
" 'ivar': array([0., 0., 0., ..., 0., 0., 0.]),\n",
|
|
1356
|
-
" '
|
|
1357
|
-
"
|
|
1358
|
-
"
|
|
1359
|
-
"
|
|
1360
|
-
"
|
|
1361
|
-
" 'model': array([0.
|
|
1362
|
-
"
|
|
1363
|
-
" '_dr': 'BOSS-DR16'}"
|
|
1006
|
+
" 'mask': array([16777216, 16777216, 16777216, ..., 16777216, 16777216, 16777216]),\n",
|
|
1007
|
+
" 'flux': array([1.23176956, 1.23148859, 1.23120809, ..., 4.00684404, 4.00690508,\n",
|
|
1008
|
+
" 4.00696611]),\n",
|
|
1009
|
+
" 'wavelength': array([3794.89706208, 3795.77097003, 3796.64507922, ..., 9217.22098659,\n",
|
|
1010
|
+
" 9219.34357452, 9221.46665124]),\n",
|
|
1011
|
+
" 'model': array([0.34971759, 0.35207507, 0.35443148, ..., 2.31373858, 2.30945611,\n",
|
|
1012
|
+
" 2.30356026])}"
|
|
1364
1013
|
]
|
|
1365
1014
|
},
|
|
1366
|
-
"execution_count":
|
|
1015
|
+
"execution_count": 20,
|
|
1367
1016
|
"metadata": {},
|
|
1368
1017
|
"output_type": "execute_result"
|
|
1369
1018
|
}
|
|
@@ -1373,35 +1022,44 @@
|
|
|
1373
1022
|
]
|
|
1374
1023
|
},
|
|
1375
1024
|
{
|
|
1376
|
-
"cell_type": "
|
|
1377
|
-
"execution_count": 20,
|
|
1025
|
+
"cell_type": "markdown",
|
|
1378
1026
|
"metadata": {},
|
|
1027
|
+
"source": [
|
|
1028
|
+
"## Plot spectra"
|
|
1029
|
+
]
|
|
1030
|
+
},
|
|
1031
|
+
{
|
|
1032
|
+
"cell_type": "code",
|
|
1033
|
+
"execution_count": 21,
|
|
1034
|
+
"metadata": {
|
|
1035
|
+
"tags": []
|
|
1036
|
+
},
|
|
1379
1037
|
"outputs": [
|
|
1380
1038
|
{
|
|
1381
1039
|
"data": {
|
|
1382
1040
|
"text/plain": [
|
|
1383
|
-
"<matplotlib.legend.Legend at
|
|
1041
|
+
"<matplotlib.legend.Legend at 0x7fd1f96db7c0>"
|
|
1384
1042
|
]
|
|
1385
1043
|
},
|
|
1386
|
-
"execution_count":
|
|
1044
|
+
"execution_count": 21,
|
|
1387
1045
|
"metadata": {},
|
|
1388
1046
|
"output_type": "execute_result"
|
|
1389
1047
|
},
|
|
1390
1048
|
{
|
|
1391
1049
|
"data": {
|
|
1392
1050
|
"application/vnd.jupyter.widget-view+json": {
|
|
1393
|
-
"model_id": "
|
|
1051
|
+
"model_id": "84c674d2919c4a9f804a778cb667076f",
|
|
1394
1052
|
"version_major": 2,
|
|
1395
1053
|
"version_minor": 0
|
|
1396
1054
|
},
|
|
1397
|
-
"image/png": "iVBORw0KGgoAAAANSUhEUgAAAyAAAAGQCAYAAABWJQQ0AAAAOXRFWHRTb2Z0d2FyZQBNYXRwbG90bGliIHZlcnNpb24zLjguMSwgaHR0cHM6Ly9tYXRwbG90bGliLm9yZy/SrBM8AAAACXBIWXMAAA9hAAAPYQGoP6dpAAB5MUlEQVR4nO3dd3wT5R8H8M9dVveggxYolD3L3qNQkKUIDhRREVBwIIriAvQnoCJuwb0FERAVJyJ7b2TvvaFld48k9/z+SJMmTdKmbZp0fN6+eNneXS5Pc8nlvvc8z/crCSEEiIiIiIiIPED2dgOIiIiIiKjyYABCREREREQewwCEiIiIiIg8hgEIERERERF5DAMQIiIiIiLyGAYgRERERETkMQxAiIiIiIjIYxiAEBERERGRxzAAISIiIiIij2EAQkREREREHsMAhIiIiIiIPIYBCBEREREReQwDECIiIiIi8hgGIERERERE5DEMQIiIiIiIyGMYgBARERERkccwACEiIiIiIo9hAEJERERERB7DAISIiIiIiDyGAQgREREREXkMAxAiIiIiIvIYBiBEREREROQxDECIiIiIiMhjGIAQEREREZHHMAAhIiIiIiKPYQBCREREREQewwCEiIiIiIg8hgEIERERERF5DAMQIiIiIiLyGAYgRERERETkMQxAiIiIiIjIYxiAEBERERGRxzAAISIiIiIij2EAQkREREREHsMAhIiIiIiIPIYBCBEREREReQwDECIiIiIi8hgGIERERERE5DEMQIiIiIiIyGMYgBARERERkccwACEiIiIiIo9hAEJERERERB7DAISIiIiIiDyGAQgREREREXkMAxAiIiIiIvIYBiBEREREROQxam83gPIoioKLFy8iMDAQkiR5uzlERERElI8QAqmpqahWrRpkmffyi4MBSBly8eJFxMTEeLsZRERERFSIc+fOoUaNGt5uRrnEAKQMCQwMBGB6QwcFBXm5NURERESUX0pKCmJiYizXbVR0DEDKEPOwq6CgIAYgRERERGUYh8sXHweuERERERGRxzAAISIiIiIij2EAQkREREREHsMAhIiIiIiIPIYBCBEREREReQwDECIiIiIi8hgGIERERERE5DEMQIiIiIiIyGMYgBARERERkccwACEAgKIIbzeBiIiIiCoBBiCEH7ecQavXl2Pf+WRvN4WIiIiI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iLxCcFJHpcQApJLj/A4iIiIi8iQGIFQo3pwgIiKi0lDUIVhUMTAAISIiIqJygfFKxcAApJJj7wYREREReRIDECIiIiIqF3jjtGJgAEJEREREXsERVZUTAxAqFO82EBERUVnAOSAVAyuhV1JGReDbDSex8tBlbzeFiIiIiCoRBiCVlEqWMHvTGVy4mentphARERFRJcIApBIb2SUWRkXg9LUMzN921ul2HeuGebBVRERERFSRcQ5IJTaqWx081r0u2tQKdbrNrXFRCNAxTiUiIiLvkzhtvUJgAEIFfpS1Kr5FiIiIqHRwUnnlxKtLIiIiIiLyGAYgRERERETkMQxAqEAS+0aJiIiIyI0YgBDHXxIRERGRxzAAISIiIiKv4D3QyokBCBEREREReQwDECoQ70wQERFRWcFh4xUDAxDih5mIiIiIPIYBCBEREREReQwDEILEgVZERERUDvCKpWJQe7sB5H0JDSMhSUCbmqH2K/lJJyIiolJS1HpjopTaQZ7FAIQQ7KfBodf6QatihxgRERERlS4GIAQA8NGovN0EIiIiIqoEeMubiIiIiMoFjgyvGBiAEBERERGRxzAAoQIxQxYRERERuRMDECIiIiIi8hgGIERERETkFUUeZ1HEtL1UNjEAoQLxc05ERERE7sQAhIiIiIjKB8FShBUBAxAiIiIiIvIYBiBERERE5B1FHerNseEVAgMQIiIiIvIKmQFFpcQAhArE0wIRERG52wt9GyI62AfjezfwdlPIC9TebgARERERVS5PJtTDmB51IbEHpFJiDwgREREReVxxgg+GKxUDAxAiIiIiIvIYBiBEREREROQxDECoQByaSURERETuxACEiIiIiIg8hgEIERERERF5DNPwUoEk5psgchu9Xg+j0ejtZpCHqFQqaDQabzeDiKjMYQBCRFTKUlJScPXqVWRnZ3u7KeRhOp0O4eHhCAoK8nZTiIjKDAYgRESlKCUlBRcuXEBAQADCw8Oh0WhYeKsSEEJAr9cjOTkZFy5cAAAGIURuwNNnxcAAhIioFF29ehUBAQGoUaMGA49KxtfXF4GBgTh//jyuXr3KAISIKBcnoRMRlRK9Xo/s7GwEBwcz+KikJElCcHAwsrOzodfrvd0cIqIygQEIFYjXTETFZ55wzonIlZv5+DMBARGRCQOQXLt378akSZPQt29fREREQJIk9OjRo9DHzZ07F+3bt4e/vz9CQ0MxYMAA7Ny5s/QbTETlBns/KjcefyIiWwxAcv3xxx+YPn061qxZg6ioKJceM23aNDz44IO4fPkyHn/8cdxzzz1Yt24dOnfujI0bN5Zyi4mIiIiIyh9OQs91zz33YODAgYiLi8O1a9cQHR1d4PbHjh3DlClT0KBBA2zbtg3BwcEAgDFjxqBjx44YPXo09u/fD1lmjEdEREREZMar41xNmzZF69atXR6r/f3338NgMODll1+2BB8A0LJlSwwdOhSHDh3Chg0bSqu5RETlgl6vx5QpU1C/fn3odDpIkoQZM2ZAkiSMGDHC280jIiIvYABSTGvWrAEA9OnTx25d3759AQBr1671ZJNKBYcuE1FJvP/++5g6dSqqVauG559/HpMnT0a/fv283SwiKqd4WVIxcAhWMR07dgwBAQEO54vUr1/fsk1BsrOzbSojp6SkuLeRRERetmjRIgQEBGD58uXQarUAgNOnT3u3UURE5FXsASmm5ORkm6FX1szFppKTkwvcx/Tp0xEcHGz5FxMT4/Z2EhF508WLFxEWFmYJPoiIiCpUD8hzzz1n06NQmHHjxll6K7xh4sSJGD9+vOX3lJQUBiFEVCFMmTIFU6dOtfxuTkVbq1YtyxDW/GJjYwE47iHp0aMH1q5dCyEEAODatWto0aIFkpOTsWvXLtSrV8+ybUHriIjI+ypUAPLll18iPT3d5e0HDx5c7AAkODjYaQ+HeSiVsx4SM51OB51OV6znL21P9ayH+dvO4ule3gvQiKj8MtdRmjFjBgDgmWeeAQCEhIS4Zf9hYWH44Ycf0Lt3b9x///3YuHGjJYnII488ggsXLmDWrFkMPogqGNbVqRgqVACSlpbmseeqX78+Nm/ejMTERLt5IOa5H97sXSmp5/o0xPjeDfhBJyoFQghk6st+VWxfjarY54AePXqgR48emDVrFgBTj4iZu+aA9OzZEy+++CLeeustvPLKK3j77bfx2Wef4c8//8TQoUMxfPhwtzwPEZUd5l5QKt8qVADiSd27d8fmzZuxbNkyPPTQQzbrli5datmmPGPwQVQ6MvVGNHl1qbebUaiDr/WFn7Zsf0289tprWLlyJd577z3UqFEDL730EmJjY/HFF194u2lEROQEJ6EX08iRI6FWqzFt2jSboVi7d+/G/Pnz0bhxY3Tt2tWLLSQiqvg0Gg3mz58PPz8/PP3008jJycHcuXMtyUCIiKjsKdu3tjzo8OHDeOuttwAAmZmZlmXWhbLMQwkAoEGDBpgyZQpeeeUVtGjRAnfffTdSU1Px008/AQC+/vprVkEnIod8NSocfK2vt5tRKF+NyttNcEmdOnXQokULbNy4EW3atEHnzp293SQiKiUcnVExMADJlZiYiNmzZ9ssS0pKsllmHYAAwMsvv4zY2FjMmDEDn3/+ObRaLbp164bXX38drVu39kSziagckiSpzA9t8gZZlpGTk+NwXUFpzT/44ANs3LgRYWFh2LZtGz777DOMGTOmtJpJREQlxFv0uXr06AEhRIH/HHnggQewfft2ZGRk4ObNm/jnn38YfBARFUNoaCguX74Mg8Fgszw9Pd1pYdddu3Zh0qRJaNiwIfbt24fatWvj+eefx4EDBzzRZCIiKgYGIEREVCa0a9cOer0ec+fOtSwTQmDixIkOU6ynp6dj6NChAID58+cjOjoa8+bNg16vx9ChQ5GVleWxthORZ3AAVsXAAISIiMqEsWPHQqvVYtSoUXjwwQfx7LPPol27dli8eDFatGhht/24ceNw5MgRvPnmm2jVqhUAoGPHjpg8eTL27duHF154wdN/AhERuYABCBERlQnNmjXDkiVL0KZNG/z666+YM2cOmjRpgk2bNtkVMFy4cCG+/fZb9O7dG+PHj7dZN2nSJMTHx+OTTz7BokWLPPgXEBGRKzgLkoiISo2jooOxsbFO59UlJCRgy5YtdsvXrFlj8/vdd9/tdB+yLGPt2rVFbisREXkGe0CIiIiIiMhjGIAQEREREZHHMAAhIiIiIiKPYQBCREREREQewwCEiIiIiMoFiYVAKgQGIERERERE5DEMQIiIiIiIyGMYgBARERERkccwACEiIiIiIo9hAEJERERERB7DAISIiIiIiDyGAQgREREREXkMAxAiIqpU1qxZA0mSMGXKlBLtJzY2FrGxsW5pExG5RgILgVQEDECIiIiIiMhjGIAQEREREZHHMAAhIiIiIiKPYQBCRESlxnq+xaZNm5CQkIDAwEBERERgzJgxyMzMBAD8888/6NSpE/z9/VG1alW8+OKLMBgMNvsyGAz44IMP0KJFC/j6+iI4OBgJCQn4+++/HT53ZmYmJkyYgJiYGPj4+KBZs2b4+uuvC2zvqVOnMGrUKNSsWRM6nQ7R0dEYMWIEzpw5454XhIhKhlNAKgQGIEREVOq2bt2KXr16ITg4GI899hhq1qyJzz//HKNHj8aCBQswePBg1KpVC4899hhCQkLw7rvv4s0337Q8XgiBwYMH47nnnkNWVhaefPJJ3H///dizZw8GDhyIDz/80Ob5FEXBwIED8fbbbyM0NBTjxo1Dx44d8eyzz+L999932sZWrVph9uzZaNOmDcaNG4du3bph7ty5aN++PU6ePFmqrxERuUB4uwHkDmpvN4CIiCq+JUuW4I8//sCgQYMAAHq9Hm3btsW8efOwdOlSrFu3Du3atQMATJ06FfXq1cPMmTMxceJEaDQazJkzB3/++Se6d++OZcuWQavVAgAmTpyINm3a4MUXX8SgQYNQp04dAMAPP/yAFStWoF+/fli0aBFUKhUAYNy4cWjbtq1d+/R6Pe677z4oioJt27ahVatWlnUbNmxAjx49MG7cOKe9LURE5Dr2gBAReZoQQE562f8n3HerMSEhwRJ8AIBGo8HgwYMhhMDtt99uCT4AIDAwEAMGDMD169dx/vx5AMDs2bMBAO+8844l+ACAmjVr4tlnn4XBYMDcuXMty3/44QcAwLRp0yzBBwDExcVh2LBhdu1btGgRTp8+jRdeeMEm+ACArl27YtCgQVi8eDFSUlJK8jIQERHYA0JE5Hn6DODNat5uReEmXQS0/m7ZVcuWLe2WRUdHF7ru4sWLqF27Nnbt2gU/Pz+0b9/ebtuEhAQAwO7duy3L9uzZA39/f7Ru3dpu+27duuHbb7+1WbZlyxYAwJEjRxzWB0lMTISiKDh69KjDHhQi8hDOAakQGIAQEVGpCwoKslumVqsLXafX6wEAKSkpiImJcbhvc7Bi3TuRnJzsdPuqVavaLbt+/ToA2PSiOJKenl7geiIiKhwDECIiT9P4mXoXyjqNn7dbYBEUFITLly87XJeYmGjZxiw4OBhXrlxxuH1SUpLD/QPA33//jQEDBpS0uUREVADOASEi8jRJMg1tKuv/pLIz1qFVq1bIyMjAtm3b7NatWbMGgO1QrhYtWiA9PR07d+602379+vV2yzp06AAA2Lx5s3saTERETjEAISKiMm/48OEATFmvzMOyAODcuXP44IMPoFar8cADD1iWmyeav/zyyzAajZbl+/btw5w5c+z2P2jQINSsWRMffPAB1q1bZ7der9djw4YNbvt7iKh4ys5tESoJDsEiIqIyb9iwYfjtt9/w559/onnz5hgwYADS09OxYMECXL9+He+//74lBS9gCljmzZuHJUuWoFWrVujfvz+uX7+O+fPno0+fPli0aJHN/nU6HX799Vf0798f3bt3R8+ePREXFwdJknDmzBmsX78eYWFhOHz4sKf/dCKiCocBCBERlXmSJOHXX3/FzJkzMXv2bHz88cfQarVo3bo1xo8fj4EDB9psL8sy/vzzT0ydOhVz587FzJkzUbduXXz44YeoX7++XQACAO3atcOePXvw7rvvYvHixdi4cSN0Oh2qV6+OO+64A0OHDvXUn0tETrAOYcUgCeHGRO9UIikpKQgODkZycrLDrDBEVL5kZWXh1KlTqF27Nnx8fLzdHPISvg+I3OfeLzdj2ylT1rrTb93mlTbweq3kOAeEiIiIiMoFzgGpGBiAEBERERGRxzAAISIiIiIij2EAQkREREREHsMAhIiIiIjKhTJUH5VKgAEIERERERF5DAMQIiIiIiLyGAYgRESljOWWKjcefyL3eX1QM4T4afDyrY293RQqAVZCJyIqJSqVCgCg1+vh6+vr5daQt+j1egB57wciKr76VQOx85XekGVOBinP2ANCRFRKNBoNdDodkpOTeRe8khJCIDk5GTqdDhqNxtvNIaoQGHyUf+wBISIqReHh4bhw4QLOnz+P4OBgaDQaSEzjUuEJIaDX65GcnIy0tDRUr17d200iIiozGIAQEZWioKAgAMDVq1dx4cIFL7eGPE2n06F69eqW9wERETEAISIqdUFBQQgKCoJer4fRaPR2c8hDVCoVh10RETnAAISIyEM0Gg0vSImIqNLjJHQiIiIiIvIYBiBEREREROQxDECIiIiIiMhjGIAQEREREZHHMAAhIiIiIiKPYQBCREREREQewzS8ZYgQAgCQkpLi5ZYQERERkSPm6zTzdRsVHQOQMiQ1NRUAEBMT4+WWEBEREVFBUlNTERwc7O1mlEuSYPhWZiiKgosXLyIwMBCSJJX686WkpCAmJgbnzp1DUFBQqT8feQePc+XA41w58DhXDjzOZZsQAqmpqahWrRpkmbMZioM9IGWILMuoUaOGx583KCiIJ7hKgMe5cuBxrhx4nCsHHueyiz0fJcOwjYiIiIiIPIYBCBEREREReQwDkEpMp9Nh8uTJ0Ol03m4KlSIe58qBx7ly4HGuHHicqaLjJHQiIiIiIvIY9oAQEREREZHHMAAhIiIiIiKPYQBCREREREQewwCEiIiIiIg8hgFIJbR9+3bceuutCAkJgb+/Pzp27Iiff/7Z280iAD/++CMee+wxtG3bFjqdDpIkYdasWU63T0lJwfjx41GrVi3odDrExsbihRdeQFpamsPtFUXBxx9/jLi4OPj6+iIiIgJDhw7FyZMnnT7H0qVL0b17dwQGBiIoKAgJCQlYuXJlSf/USuvChQuYMWMG+vTpg5o1a0Kr1SIqKgp33303tm7d6vAxPM7lT1ZWFsaPH4/4+HhUq1YNPj4+iIqKQpcuXfD9999Dr9fbPYbHueJ4++23IUkSJEnCli1b7NbzWFOlJ6hSWbVqldBoNCIwMFCMHj1ajB8/XtSqVUsAEO+99563m1fpmY9FeHi45efvv//e4bZpaWmiZcuWAoDo06ePeOmll0SfPn0EANGuXTuRmZlp95hRo0YJAKJp06bixRdfFA8++KDQarWiSpUq4ujRo3bbz5kzRwAQERERYuzYsWLs2LEiIiJCSJIkfvnlF3f/+ZXCSy+9JACIunXrikceeURMmDBB3H333UKlUglZlsVPP/1ksz2Pc/l05coV4ePjI+Lj48WoUaPExIkTxeOPP275XPfp00cYjUbL9jzOFce+ffuETqcT/v7+AoDYvHmzzXoeayIhGIBUInq9XtStW1fodDqxa9cuy/KbN2+KBg0aCK1WK06fPu29BpJYvny55RhMnz69wADk1VdfFQDESy+9ZLPcfIH75ptv2ixftWqVACDi4+NFdna2ZfnixYstX4TWrl+/LkJCQkR4eLg4d+6cZfm5c+dEeHi4CA8PFykpKSX5cyulhQsXijVr1tgtX7dundBoNCI0NFRkZWVZlvM4l09Go9Hm9TfT6/WiR48eAoBYtGiRZTmPc8WQk5MjWrduLTp06CAefPBBhwEIjzURA5BKZenSpQKAGDlypN26WbNmCQBi6tSpXmgZOVJQAKIoiqhWrZoICAgQaWlpNuvS0tJEQECAqFOnjs3yoUOHCgBi7dq1dvszXxCdOXPGsuzLL790+p6YMmWKACBmz55dzL+OHDHfBd2+fbsQgse5opo5c6YAIGbMmCGE4HGuSCZPnix0Op04cOCAGD58uF0AwmNNZMI5IJXImjVrAAB9+vSxW9e3b18AwNq1az3ZJCqmY8eO4eLFi+jSpQv8/f1t1vn7+6NLly44efIkzp07Z1m+Zs0ay7r8HB1/vl88T6PRAADUajUAHueKSFEULFmyBADQrFkzADzOFcXOnTsxbdo0TJ48GU2aNHG4DY81kQkDkErk2LFjAID69evbrYuKikJAQIBlGyrbCjqW1svN26Wnp+PSpUuoXbs2VCpVodsX9hyOtqeSOXv2LFasWIHo6GjExcUB4HGuCHJycjBlyhRMnjwZY8eORdOmTfHvv/9i5MiR6NWrFwAe54ogOzsbDz30EFq2bIkXX3zR6XY81kQmam83gDwnOTkZABAcHOxwfVBQkGUbKttcOZbW2xV1+8Ie42h7Kj69Xo9hw4YhOzsbb7/9tuVCg8e5/MvJycHUqVMtv0uShOeffx7Tp0+3LONxLv9effVVHDt2DDt27HAYKJjxWBOZsAeEiMiLFEXBiBEjsG7dOowePRrDhg3zdpPIjQICAiCEgNFoxLlz5/Dpp5/im2++QY8ePZCSkuLt5pEbbN68Ge+99x5eeeUVy7A6IioYA5BKxHw3xNmdj5SUFKd3WahsceVYWm9X1O0Le4yj7anoFEXBww8/jHnz5uHBBx/EF198YbOex7nikGUZNWrUwBNPPIGvvvoKGzduxLRp0wDwOJdnBoMBw4cPR/PmzTFhwoRCt+exJjJhAFKJFDT2MzExEWlpaU7HpVLZUtg43vxjgP39/REdHY1Tp07BaDQWun1hz1HYOGYqnKIoGDlyJGbPno2hQ4di1qxZkGXbUzKPc8VknhxsnizM41x+paWl4dixY9i9eze0Wq2l+KAkSZg9ezYAoFOnTpAkCX/88QePNVEuBiCVSPfu3QEAy5Yts1u3dOlSm22obKtfvz6qVauGjRs3Ij093WZdeno6Nm7ciNq1ayMmJsayvHv37pZ1+ZmPf3x8vM32AN8vpcEcfPzwww8YMmQI5syZ43SCKY9zxXPx4kUAeVnPeJzLL51Oh0ceecThP/NF/sCBA/HII48gNjaWx5rIzNt5gMlz9Hq9qFOnToGFCE+dOuW19pGtslCIMDg4mMWs3MxoNFrqA9xzzz1Cr9cXuD2Pc/l04MABkZ6ebrc8PT1d9OvXTwAQ06ZNsyznca54HNUBEYLHmkgIFiKsdFatWiU0Go0IDAwUo0ePFuPHjxe1atUSAMR7773n7eZVel9//bUYPny4GD58uGjdurUAILp06WJZ9vXXX1u2TUtLEy1atLB8AU2YMMFSyK5du3YiIyPDbv+jRo0SAETTpk3Fiy++KIYNGya0Wq2oUqWKOHLkiN32c+bMEQBERESEGDt2rBg7dqyIiIgQkiSJn3/+uVRfi4pq8uTJAoAICAgQL7/8spg8ebLdP+sbBDzO5dPkyZNFYGCg6N+/v3jiiSfESy+9JB588EERFhYmAIhu3brZHDse54rHWQDCY03EAKRS2rp1q+jXr58ICgoSvr6+on379uKnn37ydrNI5H1hOfs3fPhwm+1v3rwpnnnmGRETEyM0Go2oWbOmeO6555ze3TIajWLmzJmiadOmQqfTibCwMDFkyBBx/Phxp236999/Rbdu3YS/v78ICAgQ3bt3F8uXL3fnn12pFHaMHfV68TiXP9u3bxejR48WTZs2FSEhIUKtVouwsDCRkJAgvvzyS4c9XzzOFYuzAEQIHmsiSQgh3Daei4iIiIiIqACchE5ERERERB7DAISIiIiIiDyGAQgREREREXkMAxAiIiIiIvIYBiBEREREROQxDECIiIiIiMhjGIAQEREREZHHMAAhIiIiIiKPYQBCREREREQewwCEiIiIiIg8hgEIERERERF5DAMQIiIiIiLyGAYgRERERETkMQxAiIiIiIjIYxiAEBERERGRxzAAISIiIiIij2EAQkREREREHsMAhIiIiIiIPOb/f2L+vAN957EAAAAASUVORK5CYII=",
|
|
1055
|
+
"image/png": "iVBORw0KGgoAAAANSUhEUgAAAyAAAAGQCAYAAABWJQQ0AAAAOXRFWHRTb2Z0d2FyZQBNYXRwbG90bGliIHZlcnNpb24zLjguMSwgaHR0cHM6Ly9tYXRwbG90bGliLm9yZy/SrBM8AAAACXBIWXMAAA9hAAAPYQGoP6dpAACFfklEQVR4nO3dd3gUVdsG8Hu2JqQCCRAgDQhI70gvUlUUFURREVB4bXwWVBAEaQKiKGIvqCCCDRQUUHoNvQSQGiDUAKEmJKRsOd8fyW62l2Szu0nu33VxkcycnTk7mZ2dZ845z5GEEAJEREREREReIPN1BYiIiIiIqPxgAEJERERERF7DAISIiIiIiLyGAQgREREREXkNAxAiIiIiIvIaBiBEREREROQ1DECIiIiIiMhrGIAQEREREZHXMAAhIiIiIiKvYQBCRERERERewwCEiIiIiIi8hgEIERERERF5DQMQIiIiIiLyGgYgRERERETkNQxAiIiIiIjIaxiAEBERERGR1zAAISIiIiIir2EAQkREREREXsMAhIiIiIiIvIYBCBEREREReQ0DECIiIiIi8hoGIERERERE5DUMQIiIiIiIyGsYgBARERERkdcwACEiIiIiIq9hAEJERERERF7DAISIiIiIiLyGAQgREREREXkNAxAiIiIiIvIaBiBEREREROQ1DECIiIiIiMhrGIAQEREREZHXMAAhIiIiIiKvYQBCRERERERewwCEiIiIiIi8hgEIERERERF5DQMQIiIiIiLyGgYgRERERETkNQxAiIiIiIjIaxiAEBERERGR1zAAISIiIiIir2EAQkREREREXsMAhIiIiIiIvIYBCBEREREReQ0DECIiIiIi8hoGIERERERE5DUKX1eACun1eqSmpiIkJASSJPm6OkRERERkQQiB27dvo3r16pDJ+Cy/KBiA+JHU1FRER0f7uhpERERE5MT58+dRs2ZNX1ejVGIA4kdCQkIA5J/QoaGhPq4NEREREVnKyMhAdHS08b6N3McAxI8Yul2FhoYyACEiIiLyY+wuX3TsuEZERERERF7DAISIiIiIiLyGAQgREREREXkNAxAiIiIiIvIaBiBEREREROQ1DECIiIiIiMhrmIaXiIiIqIBOp4NGo/F1NciL5HI5lEqlr6tRrjAAISIionJPCIHLly8jPT0dQghfV4e8TK1WIyIigvOw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ujrkZWq1GjVq1EBoaKivq1IuMAAhIiKick+SJERFRaFKlSrGsQBUPsjlcna78jIGIEREREQFDONBiKjkcBA6ERERERF5DQMQIiIiIiLyGgYgRERERETkNQxAiIiIiIjIaxiAEBERERGR1zAAISIiIiIir2EAQkREREREXsMAhIiIiIiIvIYBCBFRGSCEr2tARETkGgYgRERERETkNQxAiIiIiIjIaxiAEBGVAZLk6xoQERG5hgEIEVEZwDEgRERUWjAAISIiIiIir2EAQkREREREXsMAhIioDOAYECIiKi0YgBARlQEcA0JERKUFAxAiIiIiIvIaBiBEREREROQ1DECIiIiIiMhrGIAQEREREZHXMAAhIiIiIiKvYQBCRERERERewwCEiIiIiIi8hgEIERERERF5DQMQIiIiIiLyGgYgRERERETkNQxAiIjKAAHh6yoQERG5hAEIERERERF5DQMQIqIyQILk6yoQERG5hAEIERERERF5DQMQIqIygGNAiIiotGAAQkREREREXsMAhIioDOAYECIiKi0YgBARERERkdcwACEiKgM4BoSIiEoLBiBEREREROQ1DECIiIiIiMhrGIAQEREREZHXMACx8NNPP+G5555Dq1atoFarIUkS5s2bZ7d8RkYGRo0ahdjYWKjVasTFxeHNN99EZmam9ypNRERERFRKKHxdAX8zfvx4nD17FhEREYiKisLZs2ftls3KykKXLl2QlJSEXr16YdCgQdi/fz9mzZqFTZs2YfPmzQgICPBi7YmIiIiI/BtbQCzMnTsXZ86cwdWrV/H88887LPv+++8jKSkJY8aMwapVq/Dee+9h1apVGDNmDHbv3o3Zs2d7qdZERIWEYEYsIiLyXwxALPTo0QOxsbFOywkhMHfuXAQHB2PChAlm6yZMmIDg4GDMnTu3pKpJRERERFQqMQApouTkZKSmpqJDhw4ICgoyWxcUFIQOHTrg9OnTOH/+vI9qSERERETkfxiAFFFycjIAICEhweZ6w3JDOSIiIiIi4iD0IktPTwcAhIWF2VwfGhpqVs6W3Nxc5ObmGn/PyMjwYA2JiIiIiPwPW0B8aMaMGQgLCzP+i46O9nWViKgM4Bh0IvJ3By/cwpu/H0BaRo6vq0I+wACkiAwtH/ZaOAytGfZaSABg7NixSE9PN/7jeBEiIiIqDx78LBG/772A138/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",
|
|
1398
1056
|
"text/html": [
|
|
1399
1057
|
"\n",
|
|
1400
1058
|
" <div style=\"display: inline-block;\">\n",
|
|
1401
1059
|
" <div class=\"jupyter-widgets widget-label\" style=\"text-align: center;\">\n",
|
|
1402
1060
|
" Figure\n",
|
|
1403
1061
|
" </div>\n",
|
|
1404
|
-
" <img src='data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAyAAAAGQCAYAAABWJQQ0AAAAOXRFWHRTb2Z0d2FyZQBNYXRwbG90bGliIHZlcnNpb24zLjguMSwgaHR0cHM6Ly9tYXRwbG90bGliLm9yZy/SrBM8AAAACXBIWXMAAA9hAAAPYQGoP6dpAAB5MUlEQVR4nO3dd3wT5R8H8M9dVveggxYolD3L3qNQkKUIDhRREVBwIIriAvQnoCJuwb0FERAVJyJ7b2TvvaFld48k9/z+SJMmTdKmbZp0fN6+eNneXS5Pc8nlvvc8z/crCSEEiIiIiIiIPED2dgOIiIiIiKjyYABCREREREQewwCEiIiIiIg8hgEIERERERF5DAMQIiIiIiLyGAYgRERERETkMQxAiIiIiIjIYxiAEBERERGRxzAAISIiIiIij2EAQkREREREHsMAhIiIiIiIPIYBCBEREREReQwDECIiIiIi8hgGIERERERE5DEMQIiIiIiIyGMYgBARERERkccwACEiIiIiIo9hAEJERERERB7DAISIiIiIiDyGAQgREREREXkMAxAiIiIiIvIYBiBEREREROQxDECIiIiIiMhjGIAQEREREZHHMAAhIiIiIiKPYQBCREREREQewwCEiIiIiIg8hgEIERERERF5DAMQIiIiIiLyGAYgRERERETkMQxAiIiIiIjIYxiAEBERERGRxzAAISIiIiIij2EAQkREREREHsMAhIiIiIiIPIYBCBEREREReQwDECIiIiIi8hgGIERERERE5DEMQIiIiIiIyGMYgBARERERkccwACEiIiIiIo9hAEJERERERB7DAISIiIiIiDyGAQgREREREXkMAxAiIiIiIvIYBiBEREREROQxam83gPIoioKLFy8iMDAQkiR5uzlERERElI8QAqmpqahWrRpkmffyi4MBSBly8eJFxMTEeLsZRERERFSIc+fOoUaNGt5uRrnEAKQMCQwMBGB6QwcFBXm5NURERESUX0pKCmJiYizXbVR0DEDKEPOwq6CgIAYgRERERGUYh8sXHweuERERERGRxzAAISIiIiIij2EAQkREREREHsMAhIiIiIiIPIYBCBEREREReQwDECIiIiIi8hgGIERERERE5DEMQIiIiIiIyGMYgBARERERkccwACEAgKIIbzeBiIiIiCoBBiCEH7ecQavXl2Pf+WRvN4WIiIiI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iLxCcFJHpcQApJLj/A4iIiIi8iQGIFQo3pwgIiKi0lDUIVhUMTAAISIiIqJygfFKxcAApJJj7wYREREReRIDECIiIiIqF3jjtGJgAEJEREREXsERVZUTAxAqFO82EBERUVnAOSAVAyuhV1JGReDbDSex8tBlbzeFiIiIiCoRBiCVlEqWMHvTGVy4mentphARERFRJcIApBIb2SUWRkXg9LUMzN921ul2HeuGebBVRERERFSRcQ5IJTaqWx081r0u2tQKdbrNrXFRCNAxTiUiIiLvkzhtvUJgAEIFfpS1Kr5FiIiIqHRwUnnlxKtLIiIiIiLyGAYgRERERETkMQxAqEAS+0aJiIiIyI0YgBDHXxIRERGRxzAAISIiIiKv4D3QyokBCBEREREReQwDECoQ70wQERFRWcFh4xUDAxDih5mIiIiIPIYBCBEREREReQwDEILEgVZERERUDvCKpWJQe7sB5H0JDSMhSUCbmqH2K/lJJyIiolJS1HpjopTaQZ7FAIQQ7KfBodf6QatihxgRERERlS4GIAQA8NGovN0EIiIiIqoEeMubiIiIiMoFjgyvGBiAEBERERGRxzAAoQIxQxYRERERuRMDECIiIiIi8hgGIERERETkFUUeZ1HEtL1UNjEAoQLxc05ERERE7sQAhIiIiIjKB8FShBUBAxAiIiIiIvIYBiBERERE5B1FHerNseEVAgMQIiIiIvIKmQFFpcQAhArE0wIRERG52wt9GyI62AfjezfwdlPIC9TebgARERERVS5PJtTDmB51IbEHpFJiDwgREREReVxxgg+GKxUDAxAiIiIiIvIYBiBEREREROQxDECoQByaSURERETuxACEiIiIiIg8hgEIERERERF5DNPwUoEk5psgchu9Xg+j0ejtZpCHqFQqaDQabzeDiKjMYQBCRFTKUlJScPXqVWRnZ3u7KeRhOp0O4eHhCAoK8nZTiIjKDAYgRESlKCUlBRcuXEBAQADCw8Oh0WhYeKsSEEJAr9cjOTkZFy5cAAAGIURuwNNnxcAAhIioFF29ehUBAQGoUaMGA49KxtfXF4GBgTh//jyuXr3KAISIKBcnoRMRlRK9Xo/s7GwEBwcz+KikJElCcHAwsrOzodfrvd0cIqIygQEIFYjXTETFZ55wzonIlZv5+DMBARGRCQOQXLt378akSZPQt29fREREQJIk9OjR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7eZVel9//bUYPny4GD58uGjdurUAILp06WJZ9vXXX1u2TUtLEy1atLB8AU2YMMFSyK5du3YiIyPDbv+jRo0SAETTpk3Fiy++KIYNGya0Wq2oUqWKOHLkiN32c+bMEQBERESEGDt2rBg7dqyIiIgQkiSJn3/+uVRfi4pq8uTJAoAICAgQL7/8spg8ebLdP+sbBDzO5dPkyZNFYGCg6N+/v3jiiSfESy+9JB588EERFhYmAIhu3brZHDse54rHWQDCY03EAKRS2rp1q+jXr58ICgoSvr6+on379uKnn37ydrNI5H1hOfs3fPhwm+1v3rwpnnnmGRETEyM0Go2oWbOmeO6555ze3TIajWLmzJmiadOmQqfTibCwMDFkyBBx/Phxp236999/Rbdu3YS/v78ICAgQ3bt3F8uXL3fnn12pFHaMHfV68TiXP9u3bxejR48WTZs2FSEhIUKtVouwsDCRkJAgvvzyS4c9XzzOFYuzAEQIHmsiSQgh3Daei4iIiIiIqACchE5ERERERB7DAISIiIiIiDyGAQgREREREXkMAxAiIiIiIvIYBiBEREREROQxDECIiIiIiMhjGIAQEREREZHHMAAhIiIiIiKPYQBCREREREQewwCEiIiIiIg8hgEIERERERF5DAMQIiIiIiLyGAYgRERERETkMQxAiIiIiIjIYxiAEBERERGRxzAAISIiIiIij2EAQkREREREHsMAhIiIiIiIPOb/f2L+vAN957EAAAAASUVORK5CYII=' width=800.0/>\n",
|
|
1062
|
+
" <img src='data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAyAAAAGQCAYAAABWJQQ0AAAAOXRFWHRTb2Z0d2FyZQBNYXRwbG90bGliIHZlcnNpb24zLjguMSwgaHR0cHM6Ly9tYXRwbG90bGliLm9yZy/SrBM8AAAACXBIWXMAAA9hAAAPYQGoP6dpAACFfklEQVR4nO3dd3gUVdsG8Hu2JqQCCRAgDQhI70gvUlUUFURREVB4bXwWVBAEaQKiKGIvqCCCDRQUUHoNvQSQGiDUAKEmJKRsOd8fyW62l2Szu0nu33VxkcycnTk7mZ2dZ845z5GEEAJEREREREReIPN1BYiIiIiIqPxgAEJERERERF7DAISIiIiIiLyGAQgREREREXkNAxAiIiIiIvIaBiBEREREROQ1DECIiIiIiMhrGIAQEREREZHXMAAhIiIiIiKvYQBCRERERERewwCEiIiIiIi8hgEIERERERF5DQMQIiIiIiLyGgYgRERERETkNQxAiIiIiIjIaxiAEBERERGR1zAAISIiIiIir2EAQkREREREXsMAhIiIiIiIvIYBCBEREREReQ0DECIiIiIi8hoGIERERERE5DUMQIiIiIiIyGsYgBARERERkdcwACEiIiIiIq9hAEJERERERF7DAISIiIiIiLyGAQgREREREXkNAxAiIiIiIvIaBiBEREREROQ1DECIiIiIiMhrGIAQEREREZHXMAAhIiIiIiKvYQBCRERERERewwCEiIiIiIi8hgEIERERERF5DQMQIiIiIiLyGgYgRERERETkNQxAiIiIiIjIaxiAEBERERGR1zAAISIiIiIir2EAQkREREREXsMAhIiIiIiIvIYBCBEREREReQ0DECIiIiIi8hoGIERERERE5DUKX1eACun1eqSmpiIkJASSJPm6OkRERERkQQiB27dvo3r16pDJ+Cy/KBiA+JHU1FRER0f7uhpERERE5MT58+dRs2ZNX1ejVGIA4kdCQkIA5J/QoaGhPq4NEREREVnKyMhAdHS08b6N3McAxI8Yul2FhoYyACEiIiLyY+wuX3TsuEZERERERF7DAISIiIiIiLyGAQgREREREXkNAxAiIiIiIvIaBiBEREREROQ1DECIiIiIiMhrmIaXiIiIqIBOp4NGo/F1NciL5HI5lEqlr6tRrjAAISIionJPCIHLly8jPT0dQghfV4e8TK1WIyIigvOweQkDECIiIir30tPTcevWLURGRiIoKIiTzJUTQghoNBqkp6fj4sWLAMAgxAsYgBARlRF6vYBMxpsmIncJIZCWlobQ0FBERET4ujrkZYGBgQgJCcGFCxdw7do1BiBewEHoRERlQI5Gh66zNuLVX/b7uipEpY5Op4NOp+ONZzkmSRLCwsKQm5vLMUBewACEiKgMWHPkCs7duIOlSam+rgpRqaPVagEACgU7hpRnhoHoOp3OxzUp+xiAEBEREQEc91HO8e/vPQxAiIiIiIjIaxiAEBGVAUwaSkTFodFoMGnSJCQkJECtVkOSJHz88ceQJAlDhw71dfWojGFnRyIiIqJy7sMPP8TkyZPRuXNnDBw4EEqlEn369MFrr73m66pRGcQAhIioDGDPZSIqjuXLlyM4OBhr1qyBSqUCAJw5c8a3laIyi12wiIiIiMq51NRUVK5c2Rh8EJUkBiBERGUAx4AQUVFMmjQJkiQhJSUFZ8+ehSRJkCQJcXFxdl8TFxdnd33Xrl3Nskldv34dNWvWREhICE6ePGlW1tE6KtvYBYuIiIionOratSsA4OOPPwYAvPrqqwCA8PBwj2y/cuXK+PHHH9GzZ0888cQTSExMNM638eyzz+LixYuYN28e6tSp45H9UenAAISIiIionOratSu6du2KefPmAchvETHw1BiQe+65B6NHj8Z7772H8ePHY+bMmfjiiy+wbNkyDBo0CEOGDPHIfqj0YABCRFQGcBA6kecJIZCt8f9ZsQOVcr+fRG/KlClYt24dZs2ahZo1a2LMmDGIi4vDV1995euqkQ8wACEiKgM4BoTI87I1OjR4Z5Wvq+HUkSm9UUHl37d0SqUSP//8M5o1a4aXX34ZcrkcCxcuRGhoqK+rRj7AQehEREREVOJq1aqFpk2bAgBatmyJ9u3b+7hG5Cv+HS4TERER+UigUo4jU3r7uhpOBSrlXt2fTCZDXl6ezXXp6el2X/fRRx8hMTERlStXxq5du/DFF1/gxRdfLKlqkh9jAEJERERkgyRJft+1yRcqVqyIQ4cOQavVQqEoPD5ZWVlITk62+Zr9+/dj3LhxqFevHjZs2IAOHTrgjTfeQJcuXdCwYUNvVZ38BLtgEREREZHLWrduDY1Gg4ULFxqXCSEwduxYZGVlWZXPysrCoEGDAAA///wzoqKisGjRImg0GgwaNAg5OTleqzv5BwYgREREROSykSNHQqVSYfjw4Xjqqafw2muvoXXr1li5cqVxjIepV155BcePH8f06dPRvHlzAEDbtm0xceJEHDp0CG+++aa33wL5GAMQExcvXsTHH3+MXr16ISYmBiqVCtWqVUP//v2xc+dOm6/JyMjAqFGjEBsbC7Vajbi4OLz55pvIzMz0cu2JiIiISl6jRo3w77//omXLlli8eDEWLFiABg0aYNu2bVYTGC5ZsgTfffcdevbsiVGjRpmtGzduHDp37ozPPvsMy5cv9+I7IF+ThBDM3ljgrbfewsyZM1G7dm107doVkZGRSE5OxtKlSyGEwKJFi/DYY48Zy2dlZaFjx45ISkpCr1690Lx5c+zfvx+rV69G69atsXnzZgQEBLi8/4yMDISFhSE9PZ1p6YjILX8dSMXLP+8HAJx5734f14aodMnJyUFKSgri4+Pd+t6mssXV84D3a8XHkVUm2rRpg40bN6JLly5my7ds2YLu3bvjhRdewEMPPQS1Wg0AeP/995GUlIQxY8bgvffeM5Y3BDKzZ8/G2LFjvfoeiIiIiIj8GbtgmXjkkUesgg8A6NSpE7p164abN2/i0KFDAPIHW82dOxfBwcGYMGGCWfkJEyYgODgYc+fO9Uq9iYiIiIhKCwYgLlIqlQBgTDeXnJyM1NRUdOjQAUFBQWZlg4KC0KFDB5w+fRrnz5/3el2JiIiIiPwVAxAXnDt3DmvXrkVUVBQaN24MAMY81wkJCTZfY1huLx82EREREVF5xDEgTmg0GgwePBi5ubmYOXMm5PL82UYNM32GhYXZfJ1hUJKjGUFzc3ORm5tr/D0jI8NT1SYiIiIi8ktsAXFAr9dj6NCh2Lx5M0aMGIHBgwd7dPszZsxAWFiY8V90dLRHt09ERERE5G8YgNih1+vxzDPPYNGiRXjqqafw1Vdfma03tHzYa+EwtGbYayEBgLFjxyI9Pd34j+NFiIiIiKisYxcsG/R6PYYNG4Yff/wRgwYNwrx58yCTmcdqzsZ4OBsjAgBqtdqY0peIqDg4pRMREZUWbAGxYBp8PPbYY1iwYIFx3IephIQEVK9eHYmJicjKyjJbl5WVhcTERMTHx7NbFRERERGRCQYgJgzdrn788Uc8+uij+Omnn2wGHwAgSRKGDx+OzMxMTJ061Wzd1KlTkZmZiREjRnij2kREkCTJ11UgIiJyCbtgmZgyZQrmz5+P4OBg1K1bF++++65VmYceegjNmjUDAIwePRrLli3DzJkzsX//frRo0QL79u3D6tWr0bp1a7z66qvefQNEVG6xCxYREZUWDEBMnDlzBgCQmZmJadOm2SwTFxdnDECCgoKwadMmTJo0CUuWLMGGDRsQFRWF119/HRMnTkRgYKCXak5EREREVDowADExb948zJs3z63XhIWFYfbs2Zg9e3bJVIqIiIiIqAzhGBAiojKAY0CIqKzZuHEjJEnCpEmTirWduLg4xMXFeaRO5BkMQIiIygCOASEiotKCAQgREREREXkNAxAiIiIiIvIaBiBERERE5ZzpeItt27ahW7duCAkJQWRkJF588UVkZ2cDAFasWIF27dohKCgIVatWxejRo6HVas22pdVq8dFHH6Fp06YIDAxEWFgYunXrhr///tvmvrOzs/HWW28hOjoaAQEBaNSoEb799luH9U1JScHw4cMRExMDtVqNqKgoDB06FGfPnvXMAaESxQCEiIiIiAAAO3fuRPfu3REWFobnnnsOMTEx+PLLLzFixAj8+uuvGDBgAGJjY/Hcc88hPDwcH3zwAaZPn258vRACAwYMwOuvv46cnBy89NJLeOKJJ3DgwAE8+OCDVllD9Xo9HnzwQcycORMVK1bEK6+8grZt2+K1117Dhx9+aLeOzZs3x/z589GyZUu88sor6NSpExYuXIg2bdrg9OnTJXqMqPiYhpeIiIjIFiEAzR1f18I5ZQXAQ5nw/v33XyxduhT9+vUDAGg0GrRq1QqLFi3CqlWrsHnzZrRu3RoAMHnyZNSpUwdz5szB2LFjoVQqsWDBAixbtgxdunTB6tWroVKpAABjx45Fy5YtMXr0aPTr1w+1atUCAPz4449Yu3Yt+vTpg+XLl0MulwMAXnnlFbRq1cqqfhqNBo8//jj0ej127dqF5s2bG9dt3boVXbt2xSuvvGK3tYX8AwMQIiIiIls0d4Dp1X1dC+fGpQKqII9sqlu3bsbgAwCUSiUGDBiAgwcP4oEHHjAGHwAQEhKCvn374vvvv8eFCxcQHx+P+fPnAwDef/99Y/ABADExMXjttdfw9ttvY+HChZgwYQKA/AAEAKZNm2YMPgCgcePGGDx4ML777juz+i1fvhxnzpzBlClTzIIPAOjYsSP69euHpUuXIiMjA6GhoR45JuR5DECIiIiICADQrFkzq2VRUVFO16WmpiI+Ph779+9HhQoV0KZNG6uy3bp1AwAkJSUZlx04cABBQUFo0aKFVflOnTpZBSA7duwAABw/ftzm/CCXL1+GXq/HiRMnbLagkH9gAEJERERki7JCfuuCv1NW8NimbLUaKBQKp+s0Gg0AICMjA9HR0Ta3bQhWMjIyjMvS09Ptlq9atarVshs3bgAAFi5caPc9AEBWVpbD9eRbDECIiIiIbJEkj3VtKi9CQ0ORlpZmc93ly5eNZQzCwsJw9epVm+WvXLlic/sA8Pfff6Nv377FrS75CLNgEREREZFHNG/eHHfu3MGuXbus1m3cuBGAeVeupk2bIisrC/v27bMqv2XLFqtld999NwBg+/btnqkw+QQDECIiIiLyiCFDhgDIz3pl6JYFAOfPn8dHH30EhUKBJ5980rh88ODBAIC3334bOp3OuPzQoUNYsGCB1fb79euHmJgYfPTRR9i8ebPVeo1Gg61bt3rs/VDJYBcsIiIiIvKIwYMH448//sCyZcvQpEkT9O3bF1lZWfj1119x48YNfPjhh8YUvEB+wLJo0SL8+++/aN68Oe69917cuHEDP//8M3r16oXly5ebbV+tVmPx4sW499570aVLF9xzzz1o3LgxJEnC2bNnsWXLFlSuXBnHjh3z9lsnNzAAISIiIiKPkCQJixcvxpw5czB//nx8+umnUKlUaNGiBUaNGoUHH3zQrLxMJsOyZcswefJkLFy4EHPmzEHt2rUxe/ZsJCQkWAUgANC6dWscOHAAH3zwAVauXInExESo1WrUqFEDDz30EAYNGuStt0tFJAkhhK8rQfkyMjIQFhaG9PR05q4mIrcsS7qIV35JAgCcee9+31aGqJTJyclBSkoK4uPjERAQ4OvqkI+4eh7wfq34OAaEiIiIiIi8hgEIERERERF5DQMQIiIiIiLyGgYgRERERETkNQxAiIiIiIjIaxiAEBERERGR1zAAISIiIiIir2EAQkRERASAU6OVb/z7ew8DECIiIirXFAoFAECr1fq4JuRLGo0GACCXy31ck7KPAQgRERGVa3K5HHK5HBkZGb6uCvmIEALp6elQq9VQKpW+rk6Zp/B1BYiIiIh8SZIkVKlSBZcuXYJarUZQUBAkSfJ1tcgLhBDQaDRIT09HZmYmatSo4esqlQsMQIiIiKjcCwsLQ3Z2Nq5du4arV6/6ujrkZWq1GjVq1EBoaKivq1IuMAAhIiKick+SJERFRaFKlSrGsQBUPsjlcna78jIGIEREREQFDONBiKjkcBA6ERERERF5DQMQIiIiIiLyGgYgRERERETkNQxAiIiIiIjIaxiAEBERERGR1zAAISIiIiIir2EAQkREREREXsMAhIiIiIiIvIYBCBFRGSCEr2tARETkGgYgRERERETkNQxAiIiIiIjIaxiAEBGVAZLk6xoQERG5hgEIEVEZwDEgRERUWjAAISIiIiIir2EAQkREREREXsMAhIioDOAYECIiKi0YgBARlQEcA0JERKUFAxAiIiIiIvIaBiBEREREROQ1DECIiIiIiMhrGIAQEREREZHXMAAhIiIiIiKvYQBCRERERERewwCEiIiIiIi8hgEIERERERF5DQMQIiIiIiLyGgYgRERERETkNQxAiIjKAAHh6yoQERG5hAEIERERERF5DQMQIqIyQILk6yoQERG5hAEIERERERF5DQMQIqIygGNAiIiotGAAQkREREREXsMAhIioDOAYECIiKi0YgBARERERkdcwACEiKgM4BoSIiEoLBiBEREREROQ1DECIiIiIiMhrGIAQEREREZHXMACx8NNPP+G5555Dq1atoFarIUkS5s2bZ7d8RkYGRo0ahdjYWKjVasTFxeHNN99EZmam9ypNRERERFRKKHxdAX8zfvx4nD17FhEREYiKisLZs2ftls3KykKXLl2QlJSEXr16YdCgQdi/fz9mzZqFTZs2YfPmzQgICPBi7YmIiIiI/BtbQCzMnTsXZ86cwdWrV/H88887LPv+++8jKSkJY8aMwapVq/Dee+9h1apVGDNmDHbv3o3Zs2d7qdZERIWEYEYsIiLyXwxALPTo0QOxsbFOywkhMHfuXAQHB2PChAlm6yZMmIDg4GDMnTu3pKpJRERERFQqMQApouTkZKSmpqJDhw4ICgoyWxcUFIQOHTrg9OnTOH/+vI9qSERERETkfxiAFFFycjIAICEhweZ6w3JDOSIiIiIi4iD0IktPTwcAhIWF2VwfGhpqVs6W3Nxc5ObmGn/PyMjwYA2JiIiIiPwPW0B8aMaMGQgLCzP+i46O9nWViKgM4Bh0IvJ3By/cwpu/H0BaRo6vq0I+wACkiAwtH/ZaOAytGfZaSABg7NixSE9PN/7jeBEiIiIqDx78LBG/772A138/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' width=800.0/>\n",
|
|
1405
1063
|
" </div>\n",
|
|
1406
1064
|
" "
|
|
1407
1065
|
],
|
|
@@ -1415,83 +1073,957 @@
|
|
|
1415
1073
|
],
|
|
1416
1074
|
"source": [
|
|
1417
1075
|
"recs = results.records\n",
|
|
1076
|
+
"idx = 0\n",
|
|
1418
1077
|
"fig=plt.figure(1, figsize=(8,4), dpi= 100, facecolor='w', edgecolor='k')\n",
|
|
1419
|
-
"fline, = plt.plot(recs[
|
|
1420
|
-
"mline, = plt.plot(recs[
|
|
1078
|
+
"fline, = plt.plot(recs[idx].flux, label=f'flux')\n",
|
|
1079
|
+
"mline, = plt.plot(recs[idx].model, label=f'model')\n",
|
|
1421
1080
|
"plt.legend(handles=[fline,mline])"
|
|
1422
1081
|
]
|
|
1423
1082
|
},
|
|
1083
|
+
{
|
|
1084
|
+
"cell_type": "markdown",
|
|
1085
|
+
"metadata": {
|
|
1086
|
+
"toc-hr-collapsed": true
|
|
1087
|
+
},
|
|
1088
|
+
"source": [
|
|
1089
|
+
"## Plot FLUX for all records"
|
|
1090
|
+
]
|
|
1091
|
+
},
|
|
1424
1092
|
{
|
|
1425
1093
|
"cell_type": "code",
|
|
1426
|
-
"execution_count":
|
|
1427
|
-
"metadata": {
|
|
1094
|
+
"execution_count": 22,
|
|
1095
|
+
"metadata": {
|
|
1096
|
+
"tags": []
|
|
1097
|
+
},
|
|
1098
|
+
"outputs": [
|
|
1099
|
+
{
|
|
1100
|
+
"name": "stdout",
|
|
1101
|
+
"output_type": "stream",
|
|
1102
|
+
"text": [
|
|
1103
|
+
"Ignoring unsupported feature: align_records\n"
|
|
1104
|
+
]
|
|
1105
|
+
}
|
|
1106
|
+
],
|
|
1107
|
+
"source": [
|
|
1108
|
+
"print('Ignoring unsupported feature: align_records')"
|
|
1109
|
+
]
|
|
1110
|
+
},
|
|
1111
|
+
{
|
|
1112
|
+
"cell_type": "code",
|
|
1113
|
+
"execution_count": 23,
|
|
1114
|
+
"metadata": {
|
|
1115
|
+
"tags": []
|
|
1116
|
+
},
|
|
1428
1117
|
"outputs": [],
|
|
1429
1118
|
"source": [
|
|
1430
|
-
"import sparcl.gather_2d\n",
|
|
1431
|
-
"ar_dict, grid = sparcl.gather_2d.align_records(results.records)"
|
|
1119
|
+
"#import sparcl.gather_2d\n",
|
|
1120
|
+
"#ar_dict, grid = sparcl.gather_2d.align_records(results.records)\n",
|
|
1121
|
+
"#modeldf = pd.DataFrame(data=ar_dict['flux'],columns=grid)\n",
|
|
1122
|
+
"#modeldf.transpose().plot(xlabel='Wavelength', ylabel='Flux', legend=False)"
|
|
1123
|
+
]
|
|
1124
|
+
},
|
|
1125
|
+
{
|
|
1126
|
+
"cell_type": "markdown",
|
|
1127
|
+
"metadata": {},
|
|
1128
|
+
"source": [
|
|
1129
|
+
"# Authorization\n",
|
|
1130
|
+
"Your access to data is affected by how you login (or don't). Both `client.find` and `client.retrieve` allow you to request data (possibly implictly) from specific Datasets. Its possible for your combination of LOGIN and FIND (or RETIEVE) to work now, but fail later without you changing anything. For instance, if you don't login and ask for data from ALL Datasets at a time when all Datasets are public, your FIND will succeed. But if NOIRLab adds a new Dataset that is private, your same find will fail. To avoid the failure, you would have to explicitly request only the public Datasets, or to login as a user that is authorized to access the private Dataset.\n",
|
|
1131
|
+
"\n",
|
|
1132
|
+
"So summarize, there are three cases in which your FIND or RETRIEVE will be authorized:\n",
|
|
1133
|
+
"1. All Datasets are Public (does not matter what you login status is)\n",
|
|
1134
|
+
"2. You have explicitly requested only Public Datasets (does not matter what you login status is)\n",
|
|
1135
|
+
"3. You are logged in and are authorized to access all the Private Datasets you have (explicitly or implicitly) requested.\n",
|
|
1136
|
+
"\n",
|
|
1137
|
+
"You might be authorized to access one Dataset, but not another. So, you must be careful in case #3 above to explictly request the correct Private Dataset(s)."
|
|
1432
1138
|
]
|
|
1433
1139
|
},
|
|
1434
1140
|
{
|
|
1435
1141
|
"cell_type": "markdown",
|
|
1142
|
+
"metadata": {},
|
|
1143
|
+
"source": [
|
|
1144
|
+
"## Logging in and logging out"
|
|
1145
|
+
]
|
|
1146
|
+
},
|
|
1147
|
+
{
|
|
1148
|
+
"cell_type": "code",
|
|
1149
|
+
"execution_count": 24,
|
|
1436
1150
|
"metadata": {
|
|
1437
|
-
"
|
|
1151
|
+
"tags": []
|
|
1438
1152
|
},
|
|
1153
|
+
"outputs": [],
|
|
1439
1154
|
"source": [
|
|
1440
|
-
"
|
|
1155
|
+
"if show_help:\n",
|
|
1156
|
+
" client.login?\n",
|
|
1157
|
+
" client.logout?"
|
|
1441
1158
|
]
|
|
1442
1159
|
},
|
|
1443
1160
|
{
|
|
1444
1161
|
"cell_type": "code",
|
|
1445
|
-
"execution_count":
|
|
1446
|
-
"metadata": {
|
|
1162
|
+
"execution_count": 25,
|
|
1163
|
+
"metadata": {
|
|
1164
|
+
"tags": []
|
|
1165
|
+
},
|
|
1447
1166
|
"outputs": [
|
|
1448
1167
|
{
|
|
1449
|
-
"
|
|
1450
|
-
|
|
1451
|
-
|
|
1452
|
-
|
|
1453
|
-
|
|
1454
|
-
|
|
1455
|
-
|
|
1456
|
-
|
|
1457
|
-
|
|
1168
|
+
"name": "stdout",
|
|
1169
|
+
"output_type": "stream",
|
|
1170
|
+
"text": [
|
|
1171
|
+
"Logged in successfully with email='test_user_1@noirlab.edu'\n"
|
|
1172
|
+
]
|
|
1173
|
+
}
|
|
1174
|
+
],
|
|
1175
|
+
"source": [
|
|
1176
|
+
"client.login(auth_user, usrpw)"
|
|
1177
|
+
]
|
|
1178
|
+
},
|
|
1179
|
+
{
|
|
1180
|
+
"cell_type": "code",
|
|
1181
|
+
"execution_count": 26,
|
|
1182
|
+
"metadata": {
|
|
1183
|
+
"scrolled": true,
|
|
1184
|
+
"tags": []
|
|
1185
|
+
},
|
|
1186
|
+
"outputs": [
|
|
1458
1187
|
{
|
|
1459
1188
|
"data": {
|
|
1460
|
-
"application/vnd.jupyter.widget-view+json": {
|
|
1461
|
-
"model_id": "6592541c8b3a46c0be243727160a71b5",
|
|
1462
|
-
"version_major": 2,
|
|
1463
|
-
"version_minor": 0
|
|
1464
|
-
},
|
|
1465
|
-
"image/png": "iVBORw0KGgoAAAANSUhEUgAAAoAAAAHgCAYAAAA10dzkAAAAOXRFWHRTb2Z0d2FyZQBNYXRwbG90bGliIHZlcnNpb24zLjguMSwgaHR0cHM6Ly9tYXRwbG90bGliLm9yZy/SrBM8AAAACXBIWXMAAA9hAAAPYQGoP6dpAACgQ0lEQVR4nOzddXzTd+LH8dc3qbsBBVpa3H3IcDYGE+bKzV1uN73Zzd3ld9vdbnIbc7ebMgHGcBjuDoVS2lLqlibf3x+BJqGp0jYteT8fjz3WfPXT0CTvfNQwTdNERERERPyGxdcFEBEREZHmpQAoIiIi4mcUAEVERET8jAKgiIiIiJ9RABQRERHxMwqAIiIiIn5GAVBERETEzygAioiIiPgZBUARERERP6MAKCIiIuJnFABFRERE/IwCoIiIiIifUQAUERER8TMKgCIiIiJ+RgFQRERExM8oAIqIiIj4GQVAERERET+jACgiIiLiZxQARURERPyMAqCIiIiIn1EAFBEREfEzCoAiIiIifkYBUERERMTPKACKiIiI+BkFQBERERE/owAoIiIi4mcUAEVERET8jAKgiIiIiJ9RABQRERHxMwqAIiIiIn5GAVBERETEzygAioiIiPgZBUARERERP6MAKCIiIuJnFABFRERE/IwCoIiIiIifUQAUERER8TMKgCIiIiJ+RgFQRERExM8oAIqIiIj4GQVAERERET+jACgiIiLiZxQARURERPyMAqCIiIiIn1EAFBEREfEzCoAiIiIifkYBUERERMTPKACKiIiI+BkFQBERERE/owAoIiIi4mcUAEVERET8jAKgiIiIiJ9RABQRERHxMwqAIiIiIn5GAVBERETEzygAioiIiPiZAF8XoDVzOBykp6cTGRmJYRi+Lo6IiIjUgWmaFBQU0KFDBywW/6wLUwA8Aunp6SQnJ/u6GCIiItIAaWlpJCUl+boYPqEAeAQiIyMB5x9QVFSUj0sjIiIidZGfn09ycnLl57g/UgA8AoeafaOiohQARUREWhl/7r7lnw3fIiIiIn5MAVBERETEzygAioiIiPgZBUARERERP6MAKCIiIuJnFABFRERE/IwCoIiIiIifUQAUERER8TMKgCIiIiJ+RgFQRERExM8oAIqIiIj4GQVAERERET+jACgiIiI+lf/TT+S8846vi+FXAnxdABEREfFve265FYDwUaMI7t7dx6XxD6oBFBERkRbBnpvr6yL4DQVAERERaRksiiXNRc+0iIiItAyG4esS+A0FQBEREWkhFACbiwKgiIiItAzKf81GAVBERERaBENNwM1GAVBERER8xjRN1wMNAmk2eqZFRETEdxwO18+qAWw2CoAiIiLiO+41gIZiSXPRMy0iIiK+41ED6Lti+BsFQBEREfEZ9z6AGgTSfBQARURExHc0CMQn9EyLiIiI72gQiE8oAIqIiIjvuNcAqhNgs1EAFBEREZ/x6ANoUQBsLgqAIiIi4jtqAvYJBUARERHxHY95ABUAm4sCoIiIiPiMqRpAn1AAFBERkRZCAbC5KACKiIiI72glEJ9QABQRERHfcQ+A0mwUAEVERMRn3KeBwaz+OGlcCoAiIiLiO6ZSny8oAIqIiIjvKAD6hAKgiIiI+I76APqEAqCIiIi0EKoNbC4KgCIiIiJ+RgFQRERExM8oAIqIiEjLoAEhzUYBUERERHxHoc8nFABFRERE/IwCoIiIiLQMqg1sNgqAIiIiIn5GAVBERETEzygAioiIiM94tPqqCbjZKACKiIiI+BkFQBERERE/owAoIiIiLYKpJuBmowAoIiIi4mcUAEVERET8jAKgiIiI+JCafX1BAVBERERaBmXBZtOqA+CePXt46aWXmDx5Mp06dSIoKIjExETOPvtsFi1a5PWc/Px8brvtNlJSUggODiY1NZU77riDwsLCZi69iIiIiG+06gD48ssvc+utt7Jt2zYmT57M7bffzpgxY/jmm28YNWoUn3zyicfxRUVFjB8/nhdffJFevXpx66230rNnT5577jmOO+44SktLffSbiIiIiDSfAF8X4EgMHz6c2bNnM378eI/tf/zxB8cffzzXX389Z5xxBsHBwQA888wzrFixgrvuuounnnqq8vi7776bp59+mhdffJF77rmnWX8HEREROURtwM3FMI/SSXemTJnCzz//zJIlSzjmmGMwTZOkpCTy8/PJyMggPDy88tiioiISExNp27YtW7durfM98vPziY6OJi8vj6ioqKb4NURERI5q5WlpbD1hMgCdv/makJ49m/ye+vxu5U3ANQkMDAQgIMBZybl582bS09MZPXq0R/gDCA8PZ/To0Wzbto20tLRmL6uIiIhIczoqA+CuXbv49ddfad++Pf379wecARCge/fuXs85tP3QcSIi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",
|
|
1466
|
-
"text/html": [
|
|
1467
|
-
"\n",
|
|
1468
|
-
" <div style=\"display: inline-block;\">\n",
|
|
1469
|
-
" <div class=\"jupyter-widgets widget-label\" style=\"text-align: center;\">\n",
|
|
1470
|
-
" Figure\n",
|
|
1471
|
-
" </div>\n",
|
|
1472
|
-
" <img src='data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAoAAAAHgCAYAAAA10dzkAAAAOXRFWHRTb2Z0d2FyZQBNYXRwbG90bGliIHZlcnNpb24zLjguMSwgaHR0cHM6Ly9tYXRwbG90bGliLm9yZy/SrBM8AAAACXBIWXMAAA9hAAAPYQGoP6dpAACgQ0lEQVR4nOzddXzTd+LH8dc3qbsBBVpa3H3IcDYGE+bKzV1uN73Zzd3ld9vdbnIbc7ebMgHGcBjuDoVS2lLqlibf3x+BJqGp0jYteT8fjz3WfPXT0CTvfNQwTdNERERERPyGxdcFEBEREZHmpQAoIiIi4mcUAEVERET8jAKgiIiIiJ9RABQRERHxMwqAIiIiIn5GAVBERETEzygAioiIiPgZBUARERERP6MAKCIiIuJnFABFRERE/IwCoIiIiIifUQAUERER8TMKgCIiIiJ+RgFQRERExM8oAIqIiIj4GQVAERERET+jACgiIiLiZxQARURERPyMAqCIiIiIn1EAFBEREfEzCoAiIiIifkYBUERERMTPKACKiIiI+BkFQBERERE/owAoIiIi4mcUAEVERET8jAKgiIiIiJ9RABQRERHxMwqAIiIiIn5GAVBERETEzygAioiIiPgZBUARERERP6MAKCIiIuJnFABFRERE/IwCoIiIiIifUQAUERER8TMKgCIiIiJ+RgFQRERExM8oAIqIiIj4GQVAERERET+jACgiIiLiZxQARURERPyMAqCIiIiIn1EAFBEREfEzCoAiIiIifkYBUERERMTPKACKiIiI+BkFQBERERE/owAoIiIi4mcUAEVERET8jAKgiIiIiJ9RABQRERHxMwqAIiIiIn5GAVBERETEzygAioiIiPiZAF8XoDVzOBykp6cTGRmJYRi+Lo6IiIjUgWmaFBQU0KFDBywW/6wLUwA8Aunp6SQnJ/u6GCIiItIAaWlpJCUl+boYPqEAeAQiIyMB5x9QVFSUj0sjIiIidZGfn09ycnLl57g/UgA8AoeafaOiohQARUREWhl/7r7lnw3fIiIiIn5MAVBERETEzygAioiIiPgZBUARERERP6MAKCIiIuJnFABFRERE/IwCoIiIiIifUQAUERER8TMKgCIiIiJ+RgFQRERExM8oAIqIiIj4GQVAERERET+jACgiIiI+lf/TT+S8846vi+FXAnxdABEREfFve265FYDwUaMI7t7dx6XxD6oBFBERkRbBnpvr6yL4DQVAERERaRksiiXNRc+0iIiItAyG4esS+A0FQBEREWkhFACbiwKgiIiItAzKf81GAVBERERaBENNwM1GAVBERER8xjRN1wMNAmk2eqZFRETEdxwO18+qAWw2CoAiIiLiO+41gIZiSXPRMy0iIiK+41ED6Lti+BsFQBEREfEZ9z6AGgTSfBQARURExHc0CMQn9EyLiIiI72gQiE8oAIqIiIjvuNcAqhNgs1EAFBEREZ/x6ANoUQBsLgqAIiIi4jtqAvYJBUARERHxHY95ABUAm4sCoIiIiPiMqRpAn1AAFBERkRZCAbC5KACKiIiI72glEJ9QABQRERHfcQ+A0mwUAEVERMRn3KeBwaz+OGlcCoAiIiLiO6ZSny8oAIqIiIjvKAD6hAKgiIiI+I76APqEAqCIiIi0EKoNbC4KgCIiIiJ+RgFQRERExM8oAIqIiEjLoAEhzUYBUERERHxHoc8nFABFRERE/IwCoIiIiLQMqg1sNgqAIiIiIn5GAVBERETEzygAioiIiM94tPqqCbjZKACKiIiI+BkFQBERERE/owAoIiIiLYKpJuBmowAoIiIi4mcUAEVERET8jAKgiIiI+JCafX1BAVBERERaBmXBZtOqA+CePXt46aWXmDx5Mp06dSIoKIjExETOPvtsFi1a5PWc/Px8brvtNlJSUggODiY1NZU77riDwsLCZi69iIiIiG+06gD48ssvc+utt7Jt2zYmT57M7bffzpgxY/jmm28YNWoUn3zyicfxRUVFjB8/nhdffJFevXpx66230rNnT5577jmOO+44SktLffSbiIiIiDSfAF8X4EgMHz6c2bNnM378eI/tf/zxB8cffzzXX389Z5xxBsHBwQA888wzrFixgrvuuounnnqq8vi7776bp59+mhdffJF77rmnWX8HEREROURtwM3FMI/SSXemTJnCzz//zJIlSzjmmGMwTZOkpCTy8/PJyMggPDy88tiioiISExNp27YtW7durfM98vPziY6OJi8vj6ioqKb4NURERI5q5WlpbD1hMgCdv/makJ49m/ye+vxu5U3ANQkMDAQgIMBZybl582bS09MZPXq0R/gDCA8PZ/To0Wzbto20tLRmL6uIiIhIczoqA+CuXbv49ddfad++Pf379wecARCge/fuXs85tP3QcSIi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' width=640.0/>\n",
|
|
1473
|
-
" </div>\n",
|
|
1474
|
-
" "
|
|
1475
|
-
],
|
|
1476
1189
|
"text/plain": [
|
|
1477
|
-
"
|
|
1190
|
+
"{'Loggedin_As': 'test_user_1@noirlab.edu',\n",
|
|
1191
|
+
" 'Authorized_Datasets': {'BOSS-DR16',\n",
|
|
1192
|
+
" 'DESI-EDR',\n",
|
|
1193
|
+
" 'SDSS-DR16',\n",
|
|
1194
|
+
" 'SDSS-DR17-test'}}"
|
|
1478
1195
|
]
|
|
1479
1196
|
},
|
|
1197
|
+
"execution_count": 26,
|
|
1480
1198
|
"metadata": {},
|
|
1481
|
-
"output_type": "
|
|
1199
|
+
"output_type": "execute_result"
|
|
1482
1200
|
}
|
|
1483
1201
|
],
|
|
1484
1202
|
"source": [
|
|
1485
|
-
"
|
|
1486
|
-
"modeldf.transpose().plot(xlabel='Wavelength', ylabel='Flux', legend=False)"
|
|
1203
|
+
"client.authorized"
|
|
1487
1204
|
]
|
|
1488
1205
|
},
|
|
1489
1206
|
{
|
|
1490
1207
|
"cell_type": "code",
|
|
1491
|
-
"execution_count":
|
|
1492
|
-
"metadata": {
|
|
1493
|
-
|
|
1494
|
-
|
|
1208
|
+
"execution_count": 27,
|
|
1209
|
+
"metadata": {
|
|
1210
|
+
"tags": []
|
|
1211
|
+
},
|
|
1212
|
+
"outputs": [
|
|
1213
|
+
{
|
|
1214
|
+
"name": "stdout",
|
|
1215
|
+
"output_type": "stream",
|
|
1216
|
+
"text": [
|
|
1217
|
+
"Logged-out successfully. Previously logged-in with email test_user_1@noirlab.edu.\n"
|
|
1218
|
+
]
|
|
1219
|
+
}
|
|
1220
|
+
],
|
|
1221
|
+
"source": [
|
|
1222
|
+
"client.logout() # can also be done with client.login(None)"
|
|
1223
|
+
]
|
|
1224
|
+
},
|
|
1225
|
+
{
|
|
1226
|
+
"cell_type": "code",
|
|
1227
|
+
"execution_count": 28,
|
|
1228
|
+
"metadata": {
|
|
1229
|
+
"tags": []
|
|
1230
|
+
},
|
|
1231
|
+
"outputs": [
|
|
1232
|
+
{
|
|
1233
|
+
"data": {
|
|
1234
|
+
"text/plain": [
|
|
1235
|
+
"{'Loggedin_As': 'Anonymous',\n",
|
|
1236
|
+
" 'Authorized_Datasets': {'BOSS-DR16', 'DESI-EDR', 'SDSS-DR16'}}"
|
|
1237
|
+
]
|
|
1238
|
+
},
|
|
1239
|
+
"execution_count": 28,
|
|
1240
|
+
"metadata": {},
|
|
1241
|
+
"output_type": "execute_result"
|
|
1242
|
+
}
|
|
1243
|
+
],
|
|
1244
|
+
"source": [
|
|
1245
|
+
"client.authorized"
|
|
1246
|
+
]
|
|
1247
|
+
},
|
|
1248
|
+
{
|
|
1249
|
+
"cell_type": "markdown",
|
|
1250
|
+
"metadata": {},
|
|
1251
|
+
"source": [
|
|
1252
|
+
"## FIND"
|
|
1253
|
+
]
|
|
1254
|
+
},
|
|
1255
|
+
{
|
|
1256
|
+
"cell_type": "code",
|
|
1257
|
+
"execution_count": 29,
|
|
1258
|
+
"metadata": {},
|
|
1259
|
+
"outputs": [],
|
|
1260
|
+
"source": [
|
|
1261
|
+
"out = ['sparcl_id', 'data_release']\n",
|
|
1262
|
+
"\n",
|
|
1263
|
+
"def pass_find(user, drs):\n",
|
|
1264
|
+
" client.login(user, usrpw)\n",
|
|
1265
|
+
" print(f'{client.authorized=}')\n",
|
|
1266
|
+
" try:\n",
|
|
1267
|
+
" if drs is None:\n",
|
|
1268
|
+
" found = client.find(outfields=out, limit=2)\n",
|
|
1269
|
+
" else:\n",
|
|
1270
|
+
" found = client.find(outfields=out, constraints=dict(data_release=drs), limit=2)\n",
|
|
1271
|
+
" print(f'\\nSUCCESS: {found.count=} records from FIND: {user=}; {drs=}')\n",
|
|
1272
|
+
" except Exception as err:\n",
|
|
1273
|
+
" raise Exception(f'\\nFAILED to get records from FIND: {user=}; {drs=}')\n",
|
|
1274
|
+
"\n",
|
|
1275
|
+
"def fail_find(user, drs):\n",
|
|
1276
|
+
" client.login(user, usrpw)\n",
|
|
1277
|
+
" print(f'{client.authorized=}')\n",
|
|
1278
|
+
"\n",
|
|
1279
|
+
" try:\n",
|
|
1280
|
+
" found = client.find(outfields=out, constraints=dict(data_release=drs), limit=2)\n",
|
|
1281
|
+
" raise Exception(f'\\nFAILED: Auth wrongly got {found.count} records in FIND: {user=}; {drs=}')\n",
|
|
1282
|
+
" except Exception as err:\n",
|
|
1283
|
+
" print(f'\\nSUCCESS: Find did not get records. \\n{err}')"
|
|
1284
|
+
]
|
|
1285
|
+
},
|
|
1286
|
+
{
|
|
1287
|
+
"cell_type": "markdown",
|
|
1288
|
+
"metadata": {},
|
|
1289
|
+
"source": [
|
|
1290
|
+
"### Pass FIND as Authorized with Default DRs"
|
|
1291
|
+
]
|
|
1292
|
+
},
|
|
1293
|
+
{
|
|
1294
|
+
"cell_type": "code",
|
|
1295
|
+
"execution_count": 30,
|
|
1296
|
+
"metadata": {
|
|
1297
|
+
"tags": []
|
|
1298
|
+
},
|
|
1299
|
+
"outputs": [
|
|
1300
|
+
{
|
|
1301
|
+
"name": "stdout",
|
|
1302
|
+
"output_type": "stream",
|
|
1303
|
+
"text": [
|
|
1304
|
+
"Logged in successfully with email='test_user_1@noirlab.edu'\n",
|
|
1305
|
+
"client.authorized={'Loggedin_As': 'test_user_1@noirlab.edu', 'Authorized_Datasets': {'SDSS-DR16', 'DESI-EDR', 'BOSS-DR16', 'SDSS-DR17-test'}}\n",
|
|
1306
|
+
"url=http://localhost:8050/sparc/find/?limit=2 sspec={'outfields': ['sparcl_id', 'data_release'], 'search': []}\n",
|
|
1307
|
+
"curl -X 'POST' -H 'Content-Type: application/json' -d '{\"outfields\": [\"sparcl_id\", \"data_release\"], \"search\": []}' 'http://localhost:8050/sparc/find/?limit=2' | python3 -m json.tool\n",
|
|
1308
|
+
"Record key counts: {'data_release': 2, 'sparcl_id': 2, '_dr': 2}\n",
|
|
1309
|
+
"\n",
|
|
1310
|
+
"SUCCESS: found.count=2 records from FIND: user='test_user_1@noirlab.edu'; drs=None\n"
|
|
1311
|
+
]
|
|
1312
|
+
}
|
|
1313
|
+
],
|
|
1314
|
+
"source": [
|
|
1315
|
+
"pass_find(auth_user, None)"
|
|
1316
|
+
]
|
|
1317
|
+
},
|
|
1318
|
+
{
|
|
1319
|
+
"cell_type": "markdown",
|
|
1320
|
+
"metadata": {},
|
|
1321
|
+
"source": [
|
|
1322
|
+
"### Pass FIND as Authorized with Priv&Pub DRs"
|
|
1323
|
+
]
|
|
1324
|
+
},
|
|
1325
|
+
{
|
|
1326
|
+
"cell_type": "code",
|
|
1327
|
+
"execution_count": 31,
|
|
1328
|
+
"metadata": {
|
|
1329
|
+
"scrolled": true,
|
|
1330
|
+
"tags": []
|
|
1331
|
+
},
|
|
1332
|
+
"outputs": [
|
|
1333
|
+
{
|
|
1334
|
+
"name": "stdout",
|
|
1335
|
+
"output_type": "stream",
|
|
1336
|
+
"text": [
|
|
1337
|
+
"Logged in successfully with email='test_user_1@noirlab.edu'\n",
|
|
1338
|
+
"client.authorized={'Loggedin_As': 'test_user_1@noirlab.edu', 'Authorized_Datasets': {'SDSS-DR16', 'DESI-EDR', 'BOSS-DR16', 'SDSS-DR17-test'}}\n",
|
|
1339
|
+
"url=http://localhost:8050/sparc/find/?limit=2 sspec={'outfields': ['sparcl_id', 'data_release'], 'search': [['data_release', 'BOSS-DR16', 'SDSS-DR17-test']]}\n",
|
|
1340
|
+
"curl -X 'POST' -H 'Content-Type: application/json' -d '{\"outfields\": [\"sparcl_id\", \"data_release\"], \"search\": [[\"data_release\", \"BOSS-DR16\", \"SDSS-DR17-test\"]]}' 'http://localhost:8050/sparc/find/?limit=2' | python3 -m json.tool\n",
|
|
1341
|
+
"Record key counts: {'data_release': 2, 'sparcl_id': 2, '_dr': 2}\n",
|
|
1342
|
+
"\n",
|
|
1343
|
+
"SUCCESS: found.count=2 records from FIND: user='test_user_1@noirlab.edu'; drs=['BOSS-DR16', 'SDSS-DR17-test']\n"
|
|
1344
|
+
]
|
|
1345
|
+
}
|
|
1346
|
+
],
|
|
1347
|
+
"source": [
|
|
1348
|
+
"pass_find(auth_user, [pub_dr,priv_dr])"
|
|
1349
|
+
]
|
|
1350
|
+
},
|
|
1351
|
+
{
|
|
1352
|
+
"cell_type": "markdown",
|
|
1353
|
+
"metadata": {},
|
|
1354
|
+
"source": [
|
|
1355
|
+
"### Pass FIND as Unauthorized with Default DRs\n",
|
|
1356
|
+
"DRs default to only what are authorized for authenticated user."
|
|
1357
|
+
]
|
|
1358
|
+
},
|
|
1359
|
+
{
|
|
1360
|
+
"cell_type": "code",
|
|
1361
|
+
"execution_count": 32,
|
|
1362
|
+
"metadata": {
|
|
1363
|
+
"tags": []
|
|
1364
|
+
},
|
|
1365
|
+
"outputs": [
|
|
1366
|
+
{
|
|
1367
|
+
"name": "stdout",
|
|
1368
|
+
"output_type": "stream",
|
|
1369
|
+
"text": [
|
|
1370
|
+
"Logged in successfully with email='test_user_2@noirlab.edu'\n",
|
|
1371
|
+
"client.authorized={'Loggedin_As': 'test_user_2@noirlab.edu', 'Authorized_Datasets': {'SDSS-DR16', 'DESI-EDR', 'BOSS-DR16'}}\n",
|
|
1372
|
+
"url=http://localhost:8050/sparc/find/?limit=2 sspec={'outfields': ['sparcl_id', 'data_release'], 'search': []}\n",
|
|
1373
|
+
"curl -X 'POST' -H 'Content-Type: application/json' -d '{\"outfields\": [\"sparcl_id\", \"data_release\"], \"search\": []}' 'http://localhost:8050/sparc/find/?limit=2' | python3 -m json.tool\n",
|
|
1374
|
+
"Record key counts: {'data_release': 2, 'sparcl_id': 2, '_dr': 2}\n",
|
|
1375
|
+
"\n",
|
|
1376
|
+
"SUCCESS: found.count=2 records from FIND: user='test_user_2@noirlab.edu'; drs=None\n"
|
|
1377
|
+
]
|
|
1378
|
+
}
|
|
1379
|
+
],
|
|
1380
|
+
"source": [
|
|
1381
|
+
"pass_find(unauth_user, None)"
|
|
1382
|
+
]
|
|
1383
|
+
},
|
|
1384
|
+
{
|
|
1385
|
+
"cell_type": "markdown",
|
|
1386
|
+
"metadata": {},
|
|
1387
|
+
"source": [
|
|
1388
|
+
"### Fail FIND as Unauthorized with Priv&Pub DRs"
|
|
1389
|
+
]
|
|
1390
|
+
},
|
|
1391
|
+
{
|
|
1392
|
+
"cell_type": "code",
|
|
1393
|
+
"execution_count": 33,
|
|
1394
|
+
"metadata": {
|
|
1395
|
+
"tags": []
|
|
1396
|
+
},
|
|
1397
|
+
"outputs": [
|
|
1398
|
+
{
|
|
1399
|
+
"name": "stdout",
|
|
1400
|
+
"output_type": "stream",
|
|
1401
|
+
"text": [
|
|
1402
|
+
"Logged in successfully with email='test_user_2@noirlab.edu'\n",
|
|
1403
|
+
"client.authorized={'Loggedin_As': 'test_user_2@noirlab.edu', 'Authorized_Datasets': {'SDSS-DR16', 'DESI-EDR', 'BOSS-DR16'}}\n",
|
|
1404
|
+
"url=http://localhost:8050/sparc/find/?limit=2 sspec={'outfields': ['sparcl_id', 'data_release'], 'search': [['data_release', 'BOSS-DR16', 'SDSS-DR17-test']]}\n",
|
|
1405
|
+
"curl -X 'POST' -H 'Content-Type: application/json' -d '{\"outfields\": [\"sparcl_id\", \"data_release\"], \"search\": [[\"data_release\", \"BOSS-DR16\", \"SDSS-DR17-test\"]]}' 'http://localhost:8050/sparc/find/?limit=2' | python3 -m json.tool\n",
|
|
1406
|
+
"Exception: response content=b'{\"errorMessage\": \"test_user_2@noirlab.edu is declined access to datasets [\\'SDSS-DR17-test\\']; drs_requested=[\\'BOSS-DR16\\', \\'SDSS-DR17-test\\'] my_auth=[\\'BOSS-DR16\\', \\'DESI-EDR\\', \\'SDSS-DR16\\']\", \"errorCode\": \"NODRACCESS\", \"statusCode\": 400, \"saved_tb\": \"NoneType: None\\\\n\"}'\n",
|
|
1407
|
+
"\n",
|
|
1408
|
+
"SUCCESS: Find did not get records. \n",
|
|
1409
|
+
"[UNKNOWN] test_user_2@noirlab.edu is declined access to datasets ['SDSS-DR17-test']; drs_requested=['BOSS-DR16', 'SDSS-DR17-test'] my_auth=['BOSS-DR16', 'DESI-EDR', 'SDSS-DR16'] [NODRACCESS] None\n"
|
|
1410
|
+
]
|
|
1411
|
+
}
|
|
1412
|
+
],
|
|
1413
|
+
"source": [
|
|
1414
|
+
"fail_find(unauth_user, [pub_dr,priv_dr])"
|
|
1415
|
+
]
|
|
1416
|
+
},
|
|
1417
|
+
{
|
|
1418
|
+
"cell_type": "markdown",
|
|
1419
|
+
"metadata": {},
|
|
1420
|
+
"source": [
|
|
1421
|
+
"### Pass FIND as Unknown with Default DRs\n",
|
|
1422
|
+
"DRs default to only what are authorized for authenticated user."
|
|
1423
|
+
]
|
|
1424
|
+
},
|
|
1425
|
+
{
|
|
1426
|
+
"cell_type": "code",
|
|
1427
|
+
"execution_count": 34,
|
|
1428
|
+
"metadata": {
|
|
1429
|
+
"tags": []
|
|
1430
|
+
},
|
|
1431
|
+
"outputs": [
|
|
1432
|
+
{
|
|
1433
|
+
"name": "stdout",
|
|
1434
|
+
"output_type": "stream",
|
|
1435
|
+
"text": [
|
|
1436
|
+
"Logged in successfully with email='test_user_3@noirlab.edu'\n",
|
|
1437
|
+
"client.authorized={'Loggedin_As': 'Anonymous', 'Authorized_Datasets': {'SDSS-DR16', 'DESI-EDR', 'BOSS-DR16'}}\n",
|
|
1438
|
+
"url=http://localhost:8050/sparc/find/?limit=2 sspec={'outfields': ['sparcl_id', 'data_release'], 'search': []}\n",
|
|
1439
|
+
"curl -X 'POST' -H 'Content-Type: application/json' -d '{\"outfields\": [\"sparcl_id\", \"data_release\"], \"search\": []}' 'http://localhost:8050/sparc/find/?limit=2' | python3 -m json.tool\n",
|
|
1440
|
+
"Record key counts: {'data_release': 2, 'sparcl_id': 2, '_dr': 2}\n",
|
|
1441
|
+
"\n",
|
|
1442
|
+
"SUCCESS: found.count=2 records from FIND: user='test_user_3@noirlab.edu'; drs=None\n"
|
|
1443
|
+
]
|
|
1444
|
+
}
|
|
1445
|
+
],
|
|
1446
|
+
"source": [
|
|
1447
|
+
"pass_find(non_user, None)"
|
|
1448
|
+
]
|
|
1449
|
+
},
|
|
1450
|
+
{
|
|
1451
|
+
"cell_type": "markdown",
|
|
1452
|
+
"metadata": {},
|
|
1453
|
+
"source": [
|
|
1454
|
+
"### Fail FIND as Unknown with Priv&Pub DRs"
|
|
1455
|
+
]
|
|
1456
|
+
},
|
|
1457
|
+
{
|
|
1458
|
+
"cell_type": "code",
|
|
1459
|
+
"execution_count": 35,
|
|
1460
|
+
"metadata": {
|
|
1461
|
+
"tags": []
|
|
1462
|
+
},
|
|
1463
|
+
"outputs": [
|
|
1464
|
+
{
|
|
1465
|
+
"name": "stdout",
|
|
1466
|
+
"output_type": "stream",
|
|
1467
|
+
"text": [
|
|
1468
|
+
"Logged in successfully with email='test_user_3@noirlab.edu'\n",
|
|
1469
|
+
"client.authorized={'Loggedin_As': 'Anonymous', 'Authorized_Datasets': {'SDSS-DR16', 'DESI-EDR', 'BOSS-DR16'}}\n",
|
|
1470
|
+
"url=http://localhost:8050/sparc/find/?limit=2 sspec={'outfields': ['sparcl_id', 'data_release'], 'search': [['data_release', 'BOSS-DR16', 'SDSS-DR17-test']]}\n",
|
|
1471
|
+
"curl -X 'POST' -H 'Content-Type: application/json' -d '{\"outfields\": [\"sparcl_id\", \"data_release\"], \"search\": [[\"data_release\", \"BOSS-DR16\", \"SDSS-DR17-test\"]]}' 'http://localhost:8050/sparc/find/?limit=2' | python3 -m json.tool\n",
|
|
1472
|
+
"Exception: response content=b'{\"errorMessage\": \"ANONYMOUS is declined access to datasets [\\'SDSS-DR17-test\\']; drs_requested=[\\'BOSS-DR16\\', \\'SDSS-DR17-test\\'] my_auth=[\\'BOSS-DR16\\', \\'DESI-EDR\\', \\'SDSS-DR16\\']\", \"errorCode\": \"NODRACCESS\", \"statusCode\": 400, \"saved_tb\": \"NoneType: None\\\\n\"}'\n",
|
|
1473
|
+
"\n",
|
|
1474
|
+
"SUCCESS: Find did not get records. \n",
|
|
1475
|
+
"[UNKNOWN] ANONYMOUS is declined access to datasets ['SDSS-DR17-test']; drs_requested=['BOSS-DR16', 'SDSS-DR17-test'] my_auth=['BOSS-DR16', 'DESI-EDR', 'SDSS-DR16'] [NODRACCESS] None\n"
|
|
1476
|
+
]
|
|
1477
|
+
}
|
|
1478
|
+
],
|
|
1479
|
+
"source": [
|
|
1480
|
+
"fail_find(non_user, [pub_dr,priv_dr])"
|
|
1481
|
+
]
|
|
1482
|
+
},
|
|
1483
|
+
{
|
|
1484
|
+
"cell_type": "markdown",
|
|
1485
|
+
"metadata": {},
|
|
1486
|
+
"source": [
|
|
1487
|
+
"### Pass FIND as Anonymous with Default DR list \n",
|
|
1488
|
+
"DRs default to only what are authorized for authenticated user."
|
|
1489
|
+
]
|
|
1490
|
+
},
|
|
1491
|
+
{
|
|
1492
|
+
"cell_type": "code",
|
|
1493
|
+
"execution_count": 36,
|
|
1494
|
+
"metadata": {
|
|
1495
|
+
"tags": []
|
|
1496
|
+
},
|
|
1497
|
+
"outputs": [
|
|
1498
|
+
{
|
|
1499
|
+
"name": "stdout",
|
|
1500
|
+
"output_type": "stream",
|
|
1501
|
+
"text": [
|
|
1502
|
+
"Logged-out successfully. Previously logged-in with email test_user_3@noirlab.edu.\n",
|
|
1503
|
+
"client.authorized={'Loggedin_As': 'Anonymous', 'Authorized_Datasets': {'SDSS-DR16', 'DESI-EDR', 'BOSS-DR16'}}\n",
|
|
1504
|
+
"url=http://localhost:8050/sparc/find/?limit=2 sspec={'outfields': ['sparcl_id', 'data_release'], 'search': []}\n",
|
|
1505
|
+
"curl -X 'POST' -H 'Content-Type: application/json' -d '{\"outfields\": [\"sparcl_id\", \"data_release\"], \"search\": []}' 'http://localhost:8050/sparc/find/?limit=2' | python3 -m json.tool\n",
|
|
1506
|
+
"Record key counts: {'data_release': 2, 'sparcl_id': 2, '_dr': 2}\n",
|
|
1507
|
+
"\n",
|
|
1508
|
+
"SUCCESS: found.count=2 records from FIND: user=None; drs=None\n"
|
|
1509
|
+
]
|
|
1510
|
+
}
|
|
1511
|
+
],
|
|
1512
|
+
"source": [
|
|
1513
|
+
"pass_find(None, None)"
|
|
1514
|
+
]
|
|
1515
|
+
},
|
|
1516
|
+
{
|
|
1517
|
+
"cell_type": "markdown",
|
|
1518
|
+
"metadata": {},
|
|
1519
|
+
"source": [
|
|
1520
|
+
"### Pass FIND as Anonymous with Public DR"
|
|
1521
|
+
]
|
|
1522
|
+
},
|
|
1523
|
+
{
|
|
1524
|
+
"cell_type": "code",
|
|
1525
|
+
"execution_count": 37,
|
|
1526
|
+
"metadata": {
|
|
1527
|
+
"tags": []
|
|
1528
|
+
},
|
|
1529
|
+
"outputs": [
|
|
1530
|
+
{
|
|
1531
|
+
"name": "stdout",
|
|
1532
|
+
"output_type": "stream",
|
|
1533
|
+
"text": [
|
|
1534
|
+
"Logged-out successfully. Previously logged-in with email None.\n",
|
|
1535
|
+
"client.authorized={'Loggedin_As': 'Anonymous', 'Authorized_Datasets': {'SDSS-DR16', 'DESI-EDR', 'BOSS-DR16'}}\n",
|
|
1536
|
+
"url=http://localhost:8050/sparc/find/?limit=2 sspec={'outfields': ['sparcl_id', 'data_release'], 'search': [['data_release', 'BOSS-DR16']]}\n",
|
|
1537
|
+
"curl -X 'POST' -H 'Content-Type: application/json' -d '{\"outfields\": [\"sparcl_id\", \"data_release\"], \"search\": [[\"data_release\", \"BOSS-DR16\"]]}' 'http://localhost:8050/sparc/find/?limit=2' | python3 -m json.tool\n",
|
|
1538
|
+
"Record key counts: {'data_release': 2, 'sparcl_id': 2, '_dr': 2}\n",
|
|
1539
|
+
"\n",
|
|
1540
|
+
"SUCCESS: found.count=2 records from FIND: user=None; drs=['BOSS-DR16']\n"
|
|
1541
|
+
]
|
|
1542
|
+
}
|
|
1543
|
+
],
|
|
1544
|
+
"source": [
|
|
1545
|
+
"pass_find(None, [pub_dr])"
|
|
1546
|
+
]
|
|
1547
|
+
},
|
|
1548
|
+
{
|
|
1549
|
+
"cell_type": "markdown",
|
|
1550
|
+
"metadata": {},
|
|
1551
|
+
"source": [
|
|
1552
|
+
"### Fail FIND as Anonymous with Priv&Pub DRs"
|
|
1553
|
+
]
|
|
1554
|
+
},
|
|
1555
|
+
{
|
|
1556
|
+
"cell_type": "code",
|
|
1557
|
+
"execution_count": 38,
|
|
1558
|
+
"metadata": {
|
|
1559
|
+
"scrolled": true,
|
|
1560
|
+
"tags": []
|
|
1561
|
+
},
|
|
1562
|
+
"outputs": [
|
|
1563
|
+
{
|
|
1564
|
+
"name": "stdout",
|
|
1565
|
+
"output_type": "stream",
|
|
1566
|
+
"text": [
|
|
1567
|
+
"Logged-out successfully. Previously logged-in with email None.\n",
|
|
1568
|
+
"client.authorized={'Loggedin_As': 'Anonymous', 'Authorized_Datasets': {'SDSS-DR16', 'DESI-EDR', 'BOSS-DR16'}}\n",
|
|
1569
|
+
"url=http://localhost:8050/sparc/find/?limit=2 sspec={'outfields': ['sparcl_id', 'data_release'], 'search': [['data_release', 'BOSS-DR16', 'SDSS-DR17-test']]}\n",
|
|
1570
|
+
"curl -X 'POST' -H 'Content-Type: application/json' -d '{\"outfields\": [\"sparcl_id\", \"data_release\"], \"search\": [[\"data_release\", \"BOSS-DR16\", \"SDSS-DR17-test\"]]}' 'http://localhost:8050/sparc/find/?limit=2' | python3 -m json.tool\n",
|
|
1571
|
+
"Exception: response content=b'{\"errorMessage\": \"ANONYMOUS is declined access to datasets [\\'SDSS-DR17-test\\']; drs_requested=[\\'BOSS-DR16\\', \\'SDSS-DR17-test\\'] my_auth=[\\'BOSS-DR16\\', \\'DESI-EDR\\', \\'SDSS-DR16\\']\", \"errorCode\": \"NODRACCESS\", \"statusCode\": 400, \"saved_tb\": \"NoneType: None\\\\n\"}'\n",
|
|
1572
|
+
"\n",
|
|
1573
|
+
"SUCCESS: Find did not get records. \n",
|
|
1574
|
+
"[UNKNOWN] ANONYMOUS is declined access to datasets ['SDSS-DR17-test']; drs_requested=['BOSS-DR16', 'SDSS-DR17-test'] my_auth=['BOSS-DR16', 'DESI-EDR', 'SDSS-DR16'] [NODRACCESS] None\n"
|
|
1575
|
+
]
|
|
1576
|
+
}
|
|
1577
|
+
],
|
|
1578
|
+
"source": [
|
|
1579
|
+
"fail_find(None, [pub_dr, priv_dr])"
|
|
1580
|
+
]
|
|
1581
|
+
},
|
|
1582
|
+
{
|
|
1583
|
+
"cell_type": "markdown",
|
|
1584
|
+
"metadata": {},
|
|
1585
|
+
"source": [
|
|
1586
|
+
"## RETRIEVE"
|
|
1587
|
+
]
|
|
1588
|
+
},
|
|
1589
|
+
{
|
|
1590
|
+
"cell_type": "code",
|
|
1591
|
+
"execution_count": 39,
|
|
1592
|
+
"metadata": {
|
|
1593
|
+
"scrolled": true
|
|
1594
|
+
},
|
|
1595
|
+
"outputs": [
|
|
1596
|
+
{
|
|
1597
|
+
"name": "stdout",
|
|
1598
|
+
"output_type": "stream",
|
|
1599
|
+
"text": [
|
|
1600
|
+
"client=(sparclclient:1.2.2b8, api:11.0, http://localhost:8050/sparc, client_hash=f7bd410278bee26a425387c598dd47e80a8fcdcb, verbose=True, connect_timeout=1.1, read_timeout=5400.0)\n"
|
|
1601
|
+
]
|
|
1602
|
+
}
|
|
1603
|
+
],
|
|
1604
|
+
"source": [
|
|
1605
|
+
"print(f'{client=}')\n",
|
|
1606
|
+
"inc = ['sparcl_id', 'data_release']\n",
|
|
1607
|
+
"\n",
|
|
1608
|
+
"#pub_ids = client.find(constraints=dict(data_release=[pub_dr]),limit=2).ids\n",
|
|
1609
|
+
"#print(f'{pub_ids=}')\n",
|
|
1610
|
+
"#priv_ids = client.find(constraints=dict(data_release=[priv_dr]),limit=2).ids\n",
|
|
1611
|
+
"#print(f'{priv_ids=}')\n",
|
|
1612
|
+
"\n",
|
|
1613
|
+
"def pass_retrieve(user, drs):\n",
|
|
1614
|
+
" client.login(user, usrpw)\n",
|
|
1615
|
+
" print(f'{client.authorized=}')\n",
|
|
1616
|
+
"\n",
|
|
1617
|
+
" if drs is None:\n",
|
|
1618
|
+
" ids = client.find(outfields=['sparcl_id'], limit=2).ids\n",
|
|
1619
|
+
" else:\n",
|
|
1620
|
+
" ids = client.find(outfields=['sparcl_id'], constraints=dict(data_release=drs), limit=2).ids\n",
|
|
1621
|
+
" try:\n",
|
|
1622
|
+
" if drs is None:\n",
|
|
1623
|
+
" got = client.retrieve(uuid_list=ids, include=inc, limit=2)\n",
|
|
1624
|
+
" else:\n",
|
|
1625
|
+
" got = client.retrieve(uuid_list=ids, include=inc, dataset_list=drs, limit=2)\n",
|
|
1626
|
+
" print(f'\\nSUCCESS: {got.count=} records from RETRIEVE: {user=}; {drs=}')\n",
|
|
1627
|
+
" except Exception as err:\n",
|
|
1628
|
+
" raise Exception(f'Auth wrongly refused records from RETRIEVE: {user=}; {drs=}')\n",
|
|
1629
|
+
"\n",
|
|
1630
|
+
"def fail_retrieve(user, drs):\n",
|
|
1631
|
+
" client.login(user, usrpw)\n",
|
|
1632
|
+
" print(f'{client.authorized=}')\n",
|
|
1633
|
+
"\n",
|
|
1634
|
+
" try:\n",
|
|
1635
|
+
" found = client.find(outfields=out, constraints=dict(data_release=drs), limit=2)\n",
|
|
1636
|
+
" raise Exception(f'Auth wrongly got {found.count} records in RETRIEVE: {user=}; {drs=}')\n",
|
|
1637
|
+
" except Exception as err:\n",
|
|
1638
|
+
" print(f'\\nSUCCESS: RETRIEVE did not get records. \\n{err}')"
|
|
1639
|
+
]
|
|
1640
|
+
},
|
|
1641
|
+
{
|
|
1642
|
+
"cell_type": "markdown",
|
|
1643
|
+
"metadata": {},
|
|
1644
|
+
"source": [
|
|
1645
|
+
"### Pass RETRIEVE as Auth with Default DRs"
|
|
1646
|
+
]
|
|
1647
|
+
},
|
|
1648
|
+
{
|
|
1649
|
+
"cell_type": "code",
|
|
1650
|
+
"execution_count": 40,
|
|
1651
|
+
"metadata": {
|
|
1652
|
+
"tags": []
|
|
1653
|
+
},
|
|
1654
|
+
"outputs": [
|
|
1655
|
+
{
|
|
1656
|
+
"name": "stdout",
|
|
1657
|
+
"output_type": "stream",
|
|
1658
|
+
"text": [
|
|
1659
|
+
"Logged in successfully with email='test_user_1@noirlab.edu'\n",
|
|
1660
|
+
"client.authorized={'Loggedin_As': 'test_user_1@noirlab.edu', 'Authorized_Datasets': {'SDSS-DR16', 'DESI-EDR', 'BOSS-DR16', 'SDSS-DR17-test'}}\n",
|
|
1661
|
+
"url=http://localhost:8050/sparc/find/?limit=2 sspec={'outfields': ['sparcl_id'], 'search': []}\n",
|
|
1662
|
+
"curl -X 'POST' -H 'Content-Type: application/json' -d '{\"outfields\": [\"sparcl_id\"], \"search\": []}' 'http://localhost:8050/sparc/find/?limit=2' | python3 -m json.tool\n",
|
|
1663
|
+
"Record key counts: {'_dr': 2, 'sparcl_id': 2}\n",
|
|
1664
|
+
"Using url=\"http://localhost:8050/sparc/spectras/?include=data_release%2Csparcl_id&format=pkl\"\n",
|
|
1665
|
+
"curl -X 'POST' -H 'Content-Type: application/json' -d '[\"000923d5-fe87-11ee-acd2-08002725f1ef\", \"0016db04-fe87-11ee-a58b-08002725f1ef\"]' 'http://localhost:8050/sparc/spectras/?include=data_release%2Csparcl_id&format=pkl' | python3 -m json.tool\n",
|
|
1666
|
+
"Got response to post in 0.23809996293857694 seconds\n",
|
|
1667
|
+
"Got 2 spectra in 0.24 seconds (8 spectra/sec)\n",
|
|
1668
|
+
"{'success': True, 'info': [\"Successfully found 2 records in dr_list={'BOSS-DR16', 'DESI-EDR', 'SDSS-DR16'}\"], 'warnings': []}\n",
|
|
1669
|
+
"\n",
|
|
1670
|
+
"SUCCESS: found.count=20 records from RETRIEVE: user='test_user_1@noirlab.edu'; drs=None\n"
|
|
1671
|
+
]
|
|
1672
|
+
}
|
|
1673
|
+
],
|
|
1674
|
+
"source": [
|
|
1675
|
+
"pass_retrieve(auth_user, None)"
|
|
1676
|
+
]
|
|
1677
|
+
},
|
|
1678
|
+
{
|
|
1679
|
+
"cell_type": "markdown",
|
|
1680
|
+
"metadata": {},
|
|
1681
|
+
"source": [
|
|
1682
|
+
"### Pass RETRIEVE as Auth with Priv&Pub DRs"
|
|
1683
|
+
]
|
|
1684
|
+
},
|
|
1685
|
+
{
|
|
1686
|
+
"cell_type": "code",
|
|
1687
|
+
"execution_count": 41,
|
|
1688
|
+
"metadata": {},
|
|
1689
|
+
"outputs": [
|
|
1690
|
+
{
|
|
1691
|
+
"name": "stdout",
|
|
1692
|
+
"output_type": "stream",
|
|
1693
|
+
"text": [
|
|
1694
|
+
"Logged in successfully with email='test_user_1@noirlab.edu'\n",
|
|
1695
|
+
"client.authorized={'Loggedin_As': 'test_user_1@noirlab.edu', 'Authorized_Datasets': {'SDSS-DR16', 'DESI-EDR', 'BOSS-DR16', 'SDSS-DR17-test'}}\n",
|
|
1696
|
+
"url=http://localhost:8050/sparc/find/?limit=2 sspec={'outfields': ['sparcl_id'], 'search': [['data_release', 'SDSS-DR17-test', 'BOSS-DR16']]}\n",
|
|
1697
|
+
"curl -X 'POST' -H 'Content-Type: application/json' -d '{\"outfields\": [\"sparcl_id\"], \"search\": [[\"data_release\", \"SDSS-DR17-test\", \"BOSS-DR16\"]]}' 'http://localhost:8050/sparc/find/?limit=2' | python3 -m json.tool\n",
|
|
1698
|
+
"Record key counts: {'_dr': 2, 'sparcl_id': 2}\n",
|
|
1699
|
+
"Using url=\"http://localhost:8050/sparc/spectras/?include=data_release%2Csparcl_id&format=pkl&dataset_list=SDSS-DR17-test%2CBOSS-DR16\"\n",
|
|
1700
|
+
"curl -X 'POST' -H 'Content-Type: application/json' -d '[\"510760cd-fe87-11ee-8470-08002725f1ef\", \"5111ce02-fe87-11ee-bea1-08002725f1ef\"]' 'http://localhost:8050/sparc/spectras/?include=data_release%2Csparcl_id&format=pkl&dataset_list=SDSS-DR17-test%2CBOSS-DR16' | python3 -m json.tool\n",
|
|
1701
|
+
"Got response to post in 0.27477827202528715 seconds\n",
|
|
1702
|
+
"Got 2 spectra in 0.27 seconds (7 spectra/sec)\n",
|
|
1703
|
+
"{'success': True, 'info': [\"Successfully found 2 records in dr_list=['SDSS-DR17-test', 'BOSS-DR16']\"], 'warnings': []}\n",
|
|
1704
|
+
"\n",
|
|
1705
|
+
"SUCCESS: found.count=20 records from RETRIEVE: user='test_user_1@noirlab.edu'; drs=['SDSS-DR17-test', 'BOSS-DR16']\n"
|
|
1706
|
+
]
|
|
1707
|
+
}
|
|
1708
|
+
],
|
|
1709
|
+
"source": [
|
|
1710
|
+
"pass_retrieve(auth_user, [priv_dr, pub_dr])"
|
|
1711
|
+
]
|
|
1712
|
+
},
|
|
1713
|
+
{
|
|
1714
|
+
"cell_type": "markdown",
|
|
1715
|
+
"metadata": {},
|
|
1716
|
+
"source": [
|
|
1717
|
+
"### Pass RETRIEVE as Unauth with Default DRs\n",
|
|
1718
|
+
"DRs default to only what are authorized for authenticated user."
|
|
1719
|
+
]
|
|
1720
|
+
},
|
|
1721
|
+
{
|
|
1722
|
+
"cell_type": "code",
|
|
1723
|
+
"execution_count": 42,
|
|
1724
|
+
"metadata": {
|
|
1725
|
+
"tags": []
|
|
1726
|
+
},
|
|
1727
|
+
"outputs": [
|
|
1728
|
+
{
|
|
1729
|
+
"name": "stdout",
|
|
1730
|
+
"output_type": "stream",
|
|
1731
|
+
"text": [
|
|
1732
|
+
"Logged in successfully with email='test_user_2@noirlab.edu'\n",
|
|
1733
|
+
"client.authorized={'Loggedin_As': 'test_user_2@noirlab.edu', 'Authorized_Datasets': {'SDSS-DR16', 'DESI-EDR', 'BOSS-DR16'}}\n",
|
|
1734
|
+
"url=http://localhost:8050/sparc/find/?limit=2 sspec={'outfields': ['sparcl_id'], 'search': []}\n",
|
|
1735
|
+
"curl -X 'POST' -H 'Content-Type: application/json' -d '{\"outfields\": [\"sparcl_id\"], \"search\": []}' 'http://localhost:8050/sparc/find/?limit=2' | python3 -m json.tool\n",
|
|
1736
|
+
"Record key counts: {'_dr': 2, 'sparcl_id': 2}\n",
|
|
1737
|
+
"Using url=\"http://localhost:8050/sparc/spectras/?include=data_release%2Csparcl_id&format=pkl\"\n",
|
|
1738
|
+
"curl -X 'POST' -H 'Content-Type: application/json' -d '[\"000923d5-fe87-11ee-acd2-08002725f1ef\", \"0016db04-fe87-11ee-a58b-08002725f1ef\"]' 'http://localhost:8050/sparc/spectras/?include=data_release%2Csparcl_id&format=pkl' | python3 -m json.tool\n",
|
|
1739
|
+
"Got response to post in 0.26971720601432025 seconds\n",
|
|
1740
|
+
"Got 2 spectra in 0.27 seconds (7 spectra/sec)\n",
|
|
1741
|
+
"{'success': True, 'info': [\"Successfully found 2 records in dr_list={'BOSS-DR16', 'DESI-EDR', 'SDSS-DR16'}\"], 'warnings': []}\n",
|
|
1742
|
+
"\n",
|
|
1743
|
+
"SUCCESS: found.count=20 records from RETRIEVE: user='test_user_2@noirlab.edu'; drs=None\n"
|
|
1744
|
+
]
|
|
1745
|
+
}
|
|
1746
|
+
],
|
|
1747
|
+
"source": [
|
|
1748
|
+
"try:\n",
|
|
1749
|
+
" pass_retrieve(unauth_user, None)\n",
|
|
1750
|
+
"except Exception as err:\n",
|
|
1751
|
+
" display(Markdown(f'#### BUG: {str(err)}'))"
|
|
1752
|
+
]
|
|
1753
|
+
},
|
|
1754
|
+
{
|
|
1755
|
+
"cell_type": "markdown",
|
|
1756
|
+
"metadata": {},
|
|
1757
|
+
"source": [
|
|
1758
|
+
"### Fail RETRIEVE as Unauth with Priv&Pub DRs"
|
|
1759
|
+
]
|
|
1760
|
+
},
|
|
1761
|
+
{
|
|
1762
|
+
"cell_type": "code",
|
|
1763
|
+
"execution_count": 43,
|
|
1764
|
+
"metadata": {
|
|
1765
|
+
"scrolled": true
|
|
1766
|
+
},
|
|
1767
|
+
"outputs": [
|
|
1768
|
+
{
|
|
1769
|
+
"name": "stdout",
|
|
1770
|
+
"output_type": "stream",
|
|
1771
|
+
"text": [
|
|
1772
|
+
"Logged in successfully with email='test_user_2@noirlab.edu'\n",
|
|
1773
|
+
"client.authorized={'Loggedin_As': 'test_user_2@noirlab.edu', 'Authorized_Datasets': {'SDSS-DR16', 'DESI-EDR', 'BOSS-DR16'}}\n",
|
|
1774
|
+
"url=http://localhost:8050/sparc/find/?limit=2 sspec={'outfields': ['sparcl_id', 'data_release'], 'search': [['data_release', 'SDSS-DR17-test', 'BOSS-DR16']]}\n",
|
|
1775
|
+
"curl -X 'POST' -H 'Content-Type: application/json' -d '{\"outfields\": [\"sparcl_id\", \"data_release\"], \"search\": [[\"data_release\", \"SDSS-DR17-test\", \"BOSS-DR16\"]]}' 'http://localhost:8050/sparc/find/?limit=2' | python3 -m json.tool\n",
|
|
1776
|
+
"Exception: response content=b'{\"errorMessage\": \"test_user_2@noirlab.edu is declined access to datasets [\\'SDSS-DR17-test\\']; drs_requested=[\\'BOSS-DR16\\', \\'SDSS-DR17-test\\'] my_auth=[\\'BOSS-DR16\\', \\'DESI-EDR\\', \\'SDSS-DR16\\']\", \"errorCode\": \"NODRACCESS\", \"statusCode\": 400, \"saved_tb\": \"NoneType: None\\\\n\"}'\n",
|
|
1777
|
+
"\n",
|
|
1778
|
+
"SUCCESS: RETRIEVE did not get records. \n",
|
|
1779
|
+
"[UNKNOWN] test_user_2@noirlab.edu is declined access to datasets ['SDSS-DR17-test']; drs_requested=['BOSS-DR16', 'SDSS-DR17-test'] my_auth=['BOSS-DR16', 'DESI-EDR', 'SDSS-DR16'] [NODRACCESS] None\n"
|
|
1780
|
+
]
|
|
1781
|
+
}
|
|
1782
|
+
],
|
|
1783
|
+
"source": [
|
|
1784
|
+
"fail_retrieve(unauth_user, [priv_dr, pub_dr])"
|
|
1785
|
+
]
|
|
1786
|
+
},
|
|
1787
|
+
{
|
|
1788
|
+
"cell_type": "markdown",
|
|
1789
|
+
"metadata": {},
|
|
1790
|
+
"source": [
|
|
1791
|
+
"### Pass RETRIEVE as Unknown with Default DRs\n",
|
|
1792
|
+
"DRs default to only what are authorized for authenticated user."
|
|
1793
|
+
]
|
|
1794
|
+
},
|
|
1795
|
+
{
|
|
1796
|
+
"cell_type": "code",
|
|
1797
|
+
"execution_count": 44,
|
|
1798
|
+
"metadata": {
|
|
1799
|
+
"tags": []
|
|
1800
|
+
},
|
|
1801
|
+
"outputs": [
|
|
1802
|
+
{
|
|
1803
|
+
"name": "stdout",
|
|
1804
|
+
"output_type": "stream",
|
|
1805
|
+
"text": [
|
|
1806
|
+
"Logged in successfully with email='test_user_3@noirlab.edu'\n",
|
|
1807
|
+
"client.authorized={'Loggedin_As': 'Anonymous', 'Authorized_Datasets': {'SDSS-DR16', 'DESI-EDR', 'BOSS-DR16'}}\n",
|
|
1808
|
+
"url=http://localhost:8050/sparc/find/?limit=2 sspec={'outfields': ['sparcl_id'], 'search': []}\n",
|
|
1809
|
+
"curl -X 'POST' -H 'Content-Type: application/json' -d '{\"outfields\": [\"sparcl_id\"], \"search\": []}' 'http://localhost:8050/sparc/find/?limit=2' | python3 -m json.tool\n",
|
|
1810
|
+
"Record key counts: {'_dr': 2, 'sparcl_id': 2}\n",
|
|
1811
|
+
"Using url=\"http://localhost:8050/sparc/spectras/?include=data_release%2Csparcl_id&format=pkl\"\n",
|
|
1812
|
+
"curl -X 'POST' -H 'Content-Type: application/json' -d '[\"000923d5-fe87-11ee-acd2-08002725f1ef\", \"0016db04-fe87-11ee-a58b-08002725f1ef\"]' 'http://localhost:8050/sparc/spectras/?include=data_release%2Csparcl_id&format=pkl' | python3 -m json.tool\n",
|
|
1813
|
+
"Got response to post in 0.3079184840898961 seconds\n",
|
|
1814
|
+
"Got 2 spectra in 0.31 seconds (6 spectra/sec)\n",
|
|
1815
|
+
"{'success': True, 'info': [\"Successfully found 2 records in dr_list={'BOSS-DR16', 'DESI-EDR', 'SDSS-DR16'}\"], 'warnings': []}\n",
|
|
1816
|
+
"\n",
|
|
1817
|
+
"SUCCESS: found.count=20 records from RETRIEVE: user='test_user_3@noirlab.edu'; drs=None\n"
|
|
1818
|
+
]
|
|
1819
|
+
}
|
|
1820
|
+
],
|
|
1821
|
+
"source": [
|
|
1822
|
+
"try:\n",
|
|
1823
|
+
" pass_retrieve(non_user, None)\n",
|
|
1824
|
+
"except Exception as err:\n",
|
|
1825
|
+
" display(Markdown(f'#### BUG: {str(err)}'))"
|
|
1826
|
+
]
|
|
1827
|
+
},
|
|
1828
|
+
{
|
|
1829
|
+
"cell_type": "markdown",
|
|
1830
|
+
"metadata": {},
|
|
1831
|
+
"source": [
|
|
1832
|
+
"### Fail RETRIEVE as Unknown with Priv&Pub DRs"
|
|
1833
|
+
]
|
|
1834
|
+
},
|
|
1835
|
+
{
|
|
1836
|
+
"cell_type": "code",
|
|
1837
|
+
"execution_count": 45,
|
|
1838
|
+
"metadata": {
|
|
1839
|
+
"scrolled": true
|
|
1840
|
+
},
|
|
1841
|
+
"outputs": [
|
|
1842
|
+
{
|
|
1843
|
+
"name": "stdout",
|
|
1844
|
+
"output_type": "stream",
|
|
1845
|
+
"text": [
|
|
1846
|
+
"Logged in successfully with email='test_user_3@noirlab.edu'\n",
|
|
1847
|
+
"client.authorized={'Loggedin_As': 'Anonymous', 'Authorized_Datasets': {'SDSS-DR16', 'DESI-EDR', 'BOSS-DR16'}}\n",
|
|
1848
|
+
"url=http://localhost:8050/sparc/find/?limit=2 sspec={'outfields': ['sparcl_id', 'data_release'], 'search': [['data_release', 'SDSS-DR17-test', 'BOSS-DR16']]}\n",
|
|
1849
|
+
"curl -X 'POST' -H 'Content-Type: application/json' -d '{\"outfields\": [\"sparcl_id\", \"data_release\"], \"search\": [[\"data_release\", \"SDSS-DR17-test\", \"BOSS-DR16\"]]}' 'http://localhost:8050/sparc/find/?limit=2' | python3 -m json.tool\n",
|
|
1850
|
+
"Exception: response content=b'{\"errorMessage\": \"ANONYMOUS is declined access to datasets [\\'SDSS-DR17-test\\']; drs_requested=[\\'BOSS-DR16\\', \\'SDSS-DR17-test\\'] my_auth=[\\'BOSS-DR16\\', \\'DESI-EDR\\', \\'SDSS-DR16\\']\", \"errorCode\": \"NODRACCESS\", \"statusCode\": 400, \"saved_tb\": \"NoneType: None\\\\n\"}'\n",
|
|
1851
|
+
"\n",
|
|
1852
|
+
"SUCCESS: RETRIEVE did not get records. \n",
|
|
1853
|
+
"[UNKNOWN] ANONYMOUS is declined access to datasets ['SDSS-DR17-test']; drs_requested=['BOSS-DR16', 'SDSS-DR17-test'] my_auth=['BOSS-DR16', 'DESI-EDR', 'SDSS-DR16'] [NODRACCESS] None\n"
|
|
1854
|
+
]
|
|
1855
|
+
}
|
|
1856
|
+
],
|
|
1857
|
+
"source": [
|
|
1858
|
+
"fail_retrieve(non_user, [priv_dr, pub_dr])"
|
|
1859
|
+
]
|
|
1860
|
+
},
|
|
1861
|
+
{
|
|
1862
|
+
"cell_type": "markdown",
|
|
1863
|
+
"metadata": {},
|
|
1864
|
+
"source": [
|
|
1865
|
+
"### Pass RETRIEVE as Anon with Default DRs\n",
|
|
1866
|
+
"DRs default to only what are authorized for authenticated user."
|
|
1867
|
+
]
|
|
1868
|
+
},
|
|
1869
|
+
{
|
|
1870
|
+
"cell_type": "code",
|
|
1871
|
+
"execution_count": 46,
|
|
1872
|
+
"metadata": {
|
|
1873
|
+
"tags": []
|
|
1874
|
+
},
|
|
1875
|
+
"outputs": [
|
|
1876
|
+
{
|
|
1877
|
+
"name": "stdout",
|
|
1878
|
+
"output_type": "stream",
|
|
1879
|
+
"text": [
|
|
1880
|
+
"Logged-out successfully. Previously logged-in with email test_user_3@noirlab.edu.\n",
|
|
1881
|
+
"client.authorized={'Loggedin_As': 'Anonymous', 'Authorized_Datasets': {'SDSS-DR16', 'DESI-EDR', 'BOSS-DR16'}}\n",
|
|
1882
|
+
"url=http://localhost:8050/sparc/find/?limit=2 sspec={'outfields': ['sparcl_id'], 'search': []}\n",
|
|
1883
|
+
"curl -X 'POST' -H 'Content-Type: application/json' -d '{\"outfields\": [\"sparcl_id\"], \"search\": []}' 'http://localhost:8050/sparc/find/?limit=2' | python3 -m json.tool\n",
|
|
1884
|
+
"Record key counts: {'_dr': 2, 'sparcl_id': 2}\n",
|
|
1885
|
+
"Using url=\"http://localhost:8050/sparc/spectras/?include=data_release%2Csparcl_id&format=pkl\"\n",
|
|
1886
|
+
"curl -X 'POST' -H 'Content-Type: application/json' -d '[\"000923d5-fe87-11ee-acd2-08002725f1ef\", \"0016db04-fe87-11ee-a58b-08002725f1ef\"]' 'http://localhost:8050/sparc/spectras/?include=data_release%2Csparcl_id&format=pkl' | python3 -m json.tool\n",
|
|
1887
|
+
"Got response to post in 0.03403094399254769 seconds\n",
|
|
1888
|
+
"Got 2 spectra in 0.03 seconds (59 spectra/sec)\n",
|
|
1889
|
+
"{'success': True, 'info': [\"Successfully found 2 records in dr_list={'BOSS-DR16', 'DESI-EDR', 'SDSS-DR16'}\"], 'warnings': []}\n",
|
|
1890
|
+
"\n",
|
|
1891
|
+
"SUCCESS: found.count=20 records from RETRIEVE: user=None; drs=None\n"
|
|
1892
|
+
]
|
|
1893
|
+
}
|
|
1894
|
+
],
|
|
1895
|
+
"source": [
|
|
1896
|
+
"try:\n",
|
|
1897
|
+
" pass_retrieve(None, None)\n",
|
|
1898
|
+
"except Exception as err:\n",
|
|
1899
|
+
" display(Markdown(f'#### BUG: {str(err)}'))"
|
|
1900
|
+
]
|
|
1901
|
+
},
|
|
1902
|
+
{
|
|
1903
|
+
"cell_type": "markdown",
|
|
1904
|
+
"metadata": {},
|
|
1905
|
+
"source": [
|
|
1906
|
+
"### Fail RETRIEVE as Anon with Priv&Pub DR "
|
|
1907
|
+
]
|
|
1908
|
+
},
|
|
1909
|
+
{
|
|
1910
|
+
"cell_type": "code",
|
|
1911
|
+
"execution_count": 47,
|
|
1912
|
+
"metadata": {
|
|
1913
|
+
"tags": []
|
|
1914
|
+
},
|
|
1915
|
+
"outputs": [
|
|
1916
|
+
{
|
|
1917
|
+
"name": "stdout",
|
|
1918
|
+
"output_type": "stream",
|
|
1919
|
+
"text": [
|
|
1920
|
+
"Logged-out successfully. Previously logged-in with email None.\n",
|
|
1921
|
+
"client.authorized={'Loggedin_As': 'Anonymous', 'Authorized_Datasets': {'SDSS-DR16', 'DESI-EDR', 'BOSS-DR16'}}\n",
|
|
1922
|
+
"url=http://localhost:8050/sparc/find/?limit=2 sspec={'outfields': ['sparcl_id', 'data_release'], 'search': [['data_release', 'SDSS-DR17-test', 'BOSS-DR16']]}\n",
|
|
1923
|
+
"curl -X 'POST' -H 'Content-Type: application/json' -d '{\"outfields\": [\"sparcl_id\", \"data_release\"], \"search\": [[\"data_release\", \"SDSS-DR17-test\", \"BOSS-DR16\"]]}' 'http://localhost:8050/sparc/find/?limit=2' | python3 -m json.tool\n",
|
|
1924
|
+
"Exception: response content=b'{\"errorMessage\": \"ANONYMOUS is declined access to datasets [\\'SDSS-DR17-test\\']; drs_requested=[\\'BOSS-DR16\\', \\'SDSS-DR17-test\\'] my_auth=[\\'BOSS-DR16\\', \\'DESI-EDR\\', \\'SDSS-DR16\\']\", \"errorCode\": \"NODRACCESS\", \"statusCode\": 400, \"saved_tb\": \"NoneType: None\\\\n\"}'\n",
|
|
1925
|
+
"\n",
|
|
1926
|
+
"SUCCESS: RETRIEVE did not get records. \n",
|
|
1927
|
+
"[UNKNOWN] ANONYMOUS is declined access to datasets ['SDSS-DR17-test']; drs_requested=['BOSS-DR16', 'SDSS-DR17-test'] my_auth=['BOSS-DR16', 'DESI-EDR', 'SDSS-DR16'] [NODRACCESS] None\n"
|
|
1928
|
+
]
|
|
1929
|
+
}
|
|
1930
|
+
],
|
|
1931
|
+
"source": [
|
|
1932
|
+
"fail_retrieve(None, [priv_dr, pub_dr])"
|
|
1933
|
+
]
|
|
1934
|
+
},
|
|
1935
|
+
{
|
|
1936
|
+
"cell_type": "markdown",
|
|
1937
|
+
"metadata": {},
|
|
1938
|
+
"source": [
|
|
1939
|
+
"### Pass RETRIEVE as Anon with Public DR "
|
|
1940
|
+
]
|
|
1941
|
+
},
|
|
1942
|
+
{
|
|
1943
|
+
"cell_type": "code",
|
|
1944
|
+
"execution_count": 48,
|
|
1945
|
+
"metadata": {
|
|
1946
|
+
"tags": []
|
|
1947
|
+
},
|
|
1948
|
+
"outputs": [
|
|
1949
|
+
{
|
|
1950
|
+
"name": "stdout",
|
|
1951
|
+
"output_type": "stream",
|
|
1952
|
+
"text": [
|
|
1953
|
+
"Logged-out successfully. Previously logged-in with email None.\n",
|
|
1954
|
+
"client.authorized={'Loggedin_As': 'Anonymous', 'Authorized_Datasets': {'SDSS-DR16', 'DESI-EDR', 'BOSS-DR16'}}\n",
|
|
1955
|
+
"url=http://localhost:8050/sparc/find/?limit=2 sspec={'outfields': ['sparcl_id'], 'search': [['data_release', 'BOSS-DR16']]}\n",
|
|
1956
|
+
"curl -X 'POST' -H 'Content-Type: application/json' -d '{\"outfields\": [\"sparcl_id\"], \"search\": [[\"data_release\", \"BOSS-DR16\"]]}' 'http://localhost:8050/sparc/find/?limit=2' | python3 -m json.tool\n",
|
|
1957
|
+
"Record key counts: {'_dr': 2, 'sparcl_id': 2}\n",
|
|
1958
|
+
"Using url=\"http://localhost:8050/sparc/spectras/?include=data_release%2Csparcl_id&format=pkl&dataset_list=BOSS-DR16\"\n",
|
|
1959
|
+
"curl -X 'POST' -H 'Content-Type: application/json' -d '[\"510760cd-fe87-11ee-8470-08002725f1ef\", \"5111ce02-fe87-11ee-bea1-08002725f1ef\"]' 'http://localhost:8050/sparc/spectras/?include=data_release%2Csparcl_id&format=pkl&dataset_list=BOSS-DR16' | python3 -m json.tool\n",
|
|
1960
|
+
"Got response to post in 0.0383652689633891 seconds\n",
|
|
1961
|
+
"Got 2 spectra in 0.04 seconds (52 spectra/sec)\n",
|
|
1962
|
+
"{'success': True, 'info': [\"Successfully found 2 records in dr_list=['BOSS-DR16']\"], 'warnings': []}\n",
|
|
1963
|
+
"\n",
|
|
1964
|
+
"SUCCESS: found.count=20 records from RETRIEVE: user=None; drs=['BOSS-DR16']\n"
|
|
1965
|
+
]
|
|
1966
|
+
}
|
|
1967
|
+
],
|
|
1968
|
+
"source": [
|
|
1969
|
+
"pass_retrieve(None, [pub_dr])"
|
|
1970
|
+
]
|
|
1971
|
+
},
|
|
1972
|
+
{
|
|
1973
|
+
"cell_type": "markdown",
|
|
1974
|
+
"metadata": {},
|
|
1975
|
+
"source": [
|
|
1976
|
+
"# All Done"
|
|
1977
|
+
]
|
|
1978
|
+
},
|
|
1979
|
+
{
|
|
1980
|
+
"cell_type": "code",
|
|
1981
|
+
"execution_count": 49,
|
|
1982
|
+
"metadata": {
|
|
1983
|
+
"tags": []
|
|
1984
|
+
},
|
|
1985
|
+
"outputs": [
|
|
1986
|
+
{
|
|
1987
|
+
"name": "stdout",
|
|
1988
|
+
"output_type": "stream",
|
|
1989
|
+
"text": [
|
|
1990
|
+
"Run finished: 2024-05-02 10:22:39.403970\n"
|
|
1991
|
+
]
|
|
1992
|
+
}
|
|
1993
|
+
],
|
|
1994
|
+
"source": [
|
|
1995
|
+
"print(f'Run finished: {str(datetime.now())}')"
|
|
1996
|
+
]
|
|
1997
|
+
},
|
|
1998
|
+
{
|
|
1999
|
+
"cell_type": "code",
|
|
2000
|
+
"execution_count": 50,
|
|
2001
|
+
"metadata": {
|
|
2002
|
+
"tags": []
|
|
2003
|
+
},
|
|
2004
|
+
"outputs": [
|
|
2005
|
+
{
|
|
2006
|
+
"name": "stdout",
|
|
2007
|
+
"output_type": "stream",
|
|
2008
|
+
"text": [
|
|
2009
|
+
"Logged in successfully with email='test_user_1@noirlab.edu'\n",
|
|
2010
|
+
"\n",
|
|
2011
|
+
"client.authorized={'Loggedin_As': 'test_user_1@noirlab.edu', 'Authorized_Datasets': {'SDSS-DR16', 'DESI-EDR', 'BOSS-DR16', 'SDSS-DR17-test'}}\n",
|
|
2012
|
+
"\n",
|
|
2013
|
+
"\n",
|
|
2014
|
+
"Logged-out successfully. Previously logged-in with email test_user_1@noirlab.edu.\n",
|
|
2015
|
+
"\n",
|
|
2016
|
+
"client.authorized={'Loggedin_As': 'Anonymous', 'Authorized_Datasets': {'SDSS-DR16', 'DESI-EDR', 'BOSS-DR16'}}\n"
|
|
2017
|
+
]
|
|
2018
|
+
}
|
|
2019
|
+
],
|
|
2020
|
+
"source": [
|
|
2021
|
+
"# DLS-496\n",
|
|
2022
|
+
"client.login(auth_user, usrpw)\n",
|
|
2023
|
+
"print(f'\\n{client.authorized=}\\n\\n')\n",
|
|
2024
|
+
"client.logout() # can also be done with client.login(None)\n",
|
|
2025
|
+
"print(f'\\n{client.authorized=}')"
|
|
2026
|
+
]
|
|
1495
2027
|
}
|
|
1496
2028
|
],
|
|
1497
2029
|
"metadata": {
|