From d97ab85febc4a363abf051e9a2e06346058b85d3 Mon Sep 17 00:00:00 2001 From: Mihai Cara Date: Tue, 23 Jun 2020 14:44:22 -0400 Subject: [PATCH 1/4] Improve subprocess CRDS calls for easier debugging --- .../DrizzlePac/Initialization/Initialization.ipynb | 9 +++++++-- .../DrizzlePac/drizzle_wfpc2/drizzle_wfpc2.ipynb | 12 +++++++++--- .../using_updated_astrometry_solutions.ipynb | 10 +++++++--- 3 files changed, 23 insertions(+), 8 deletions(-) diff --git a/notebooks/DrizzlePac/Initialization/Initialization.ipynb b/notebooks/DrizzlePac/Initialization/Initialization.ipynb index 04f4398e..c04dde2c 100644 --- a/notebooks/DrizzlePac/Initialization/Initialization.ipynb +++ b/notebooks/DrizzlePac/Initialization/Initialization.ipynb @@ -231,7 +231,12 @@ "metadata": {}, "outputs": [], "source": [ - "subprocess.check_output('crds bestrefs --files ib2j02n5q_flc.fits --sync-references=1 --update-bestrefs', shell=True, stderr=subprocess.DEVNULL)" + "stdout = subprocess.check_output(\n", + " 'crds bestrefs --files ib2j02n5q_flc.fits --sync-references=1 --update-bestrefs',\n", + " shell=True,\n", + " stderr=subprocess.STDOUT\n", + ")\n", + "print(stdout.decode())" ] }, { @@ -329,7 +334,7 @@ "name": "python", "nbconvert_exporter": "python", "pygments_lexer": "ipython3", - "version": "3.5.6" + "version": "3.7.6" } }, "nbformat": 4, diff --git a/notebooks/DrizzlePac/drizzle_wfpc2/drizzle_wfpc2.ipynb b/notebooks/DrizzlePac/drizzle_wfpc2/drizzle_wfpc2.ipynb index 62069c53..0287f65a 100644 --- a/notebooks/DrizzlePac/drizzle_wfpc2/drizzle_wfpc2.ipynb +++ b/notebooks/DrizzlePac/drizzle_wfpc2/drizzle_wfpc2.ipynb @@ -119,7 +119,12 @@ "os.environ['CRDS_SERVER_URL'] = 'https://hst-crds.stsci.edu'\n", "os.environ['CRDS_PATH'] = os.path.abspath(os.path.join('.', 'reference_files'))\n", "\n", - "subprocess.check_output('crds bestrefs --files ua0605*_c0m.fits --sync-references=1 --update-bestrefs', shell=True, stderr=subprocess.DEVNULL)\n", + "stdout = subprocess.check_output(\n", + " 'crds bestrefs --files ua0605*_c0m.fits --sync-references=1 --update-bestrefs',\n", + " shell=True,\n", + " stderr=subprocess.STDOUT\n", + ")\n", + "print(stdout.decode())\n", "\n", "os.environ['uref'] = os.path.abspath(os.path.join('.', 'reference_files', 'references', 'hst', 'wfpc2')) + os.path.sep" ] @@ -424,7 +429,8 @@ "# About this Notebook\n", "\n", " Author: M. Cara, STScI Data Analysis Tools Branch\n", - " Updated: December 14, 2018" + " Updated: December 14, 2018\n", + " Updated: June 23, 2018" ] } ], @@ -444,7 +450,7 @@ "name": "python", "nbconvert_exporter": "python", "pygments_lexer": "ipython3", - "version": "3.5.6" + "version": "3.7.6" } }, "nbformat": 4, diff --git a/notebooks/DrizzlePac/using_updated_astrometry_solutions/using_updated_astrometry_solutions.ipynb b/notebooks/DrizzlePac/using_updated_astrometry_solutions/using_updated_astrometry_solutions.ipynb index ec2e22de..b2205354 100644 --- a/notebooks/DrizzlePac/using_updated_astrometry_solutions/using_updated_astrometry_solutions.ipynb +++ b/notebooks/DrizzlePac/using_updated_astrometry_solutions/using_updated_astrometry_solutions.ipynb @@ -164,8 +164,12 @@ "source": [ "for row in filtered_products:\n", " if row['productSubGroupDescription'] == 'FLC':\n", - " subprocess.check_output('crds bestrefs --files {}_flc.fits --sync-references=1 --update-bestrefs'.format(row['obs_id']), \\\n", - " shell=True, stderr=subprocess.DEVNULL)\n" + " stdout = subprocess.check_output(\n", + " 'crds bestrefs --files {}_flc.fits --sync-references=1 --update-bestrefs'.format(row['obs_id']),\n", + " shell=True,\n", + " stderr=subprocess.STDOUT\n", + " )\n", + " print(stdout.decode())" ] }, { @@ -764,7 +768,7 @@ "name": "python", "nbconvert_exporter": "python", "pygments_lexer": "ipython3", - "version": "3.8.0" + "version": "3.7.6" } }, "nbformat": 4, From ba41308e8058077b0bc89ed47874c940f08a363a Mon Sep 17 00:00:00 2001 From: Mihai Cara Date: Tue, 23 Jun 2020 16:00:07 -0400 Subject: [PATCH 2/4] Shell=False --- notebooks/DrizzlePac/Initialization/Initialization.ipynb | 4 ++-- notebooks/DrizzlePac/drizzle_wfpc2/drizzle_wfpc2.ipynb | 4 ++-- .../using_updated_astrometry_solutions.ipynb | 5 +++-- 3 files changed, 7 insertions(+), 6 deletions(-) diff --git a/notebooks/DrizzlePac/Initialization/Initialization.ipynb b/notebooks/DrizzlePac/Initialization/Initialization.ipynb index c04dde2c..42f808ef 100644 --- a/notebooks/DrizzlePac/Initialization/Initialization.ipynb +++ b/notebooks/DrizzlePac/Initialization/Initialization.ipynb @@ -232,8 +232,8 @@ "outputs": [], "source": [ "stdout = subprocess.check_output(\n", - " 'crds bestrefs --files ib2j02n5q_flc.fits --sync-references=1 --update-bestrefs',\n", - " shell=True,\n", + " ['crds', 'bestrefs', '--files', 'ib2j02n5q_flc.fits', '--sync-references=1', '--update-bestrefs'],\n", + " shell=False,\n", " stderr=subprocess.STDOUT\n", ")\n", "print(stdout.decode())" diff --git a/notebooks/DrizzlePac/drizzle_wfpc2/drizzle_wfpc2.ipynb b/notebooks/DrizzlePac/drizzle_wfpc2/drizzle_wfpc2.ipynb index 0287f65a..1e62cf90 100644 --- a/notebooks/DrizzlePac/drizzle_wfpc2/drizzle_wfpc2.ipynb +++ b/notebooks/DrizzlePac/drizzle_wfpc2/drizzle_wfpc2.ipynb @@ -120,8 +120,8 @@ "os.environ['CRDS_PATH'] = os.path.abspath(os.path.join('.', 'reference_files'))\n", "\n", "stdout = subprocess.check_output(\n", - " 'crds bestrefs --files ua0605*_c0m.fits --sync-references=1 --update-bestrefs',\n", - " shell=True,\n", + " ['crds', 'bestrefs', '--files', 'ua0605*_c0m.fits', '--sync-references=1', '--update-bestrefs'],\n", + " shell=False,\n", " stderr=subprocess.STDOUT\n", ")\n", "print(stdout.decode())\n", diff --git a/notebooks/DrizzlePac/using_updated_astrometry_solutions/using_updated_astrometry_solutions.ipynb b/notebooks/DrizzlePac/using_updated_astrometry_solutions/using_updated_astrometry_solutions.ipynb index b2205354..fdacb9f7 100644 --- a/notebooks/DrizzlePac/using_updated_astrometry_solutions/using_updated_astrometry_solutions.ipynb +++ b/notebooks/DrizzlePac/using_updated_astrometry_solutions/using_updated_astrometry_solutions.ipynb @@ -165,8 +165,9 @@ "for row in filtered_products:\n", " if row['productSubGroupDescription'] == 'FLC':\n", " stdout = subprocess.check_output(\n", - " 'crds bestrefs --files {}_flc.fits --sync-references=1 --update-bestrefs'.format(row['obs_id']),\n", - " shell=True,\n", + " ['crds', 'bestrefs', '--files', '{}_flc.fits'.format(row['obs_id']),\n", + " '--sync-references=1', '--update-bestrefs'],\n", + " shell=False,\n", " stderr=subprocess.STDOUT\n", " )\n", " print(stdout.decode())" From c1e88de6804d668535464c08ebd92f170fd542c4 Mon Sep 17 00:00:00 2001 From: Mihai Cara Date: Tue, 23 Jun 2020 16:04:25 -0400 Subject: [PATCH 3/4] shell=False by default --- notebooks/DrizzlePac/Initialization/Initialization.ipynb | 1 - notebooks/DrizzlePac/drizzle_wfpc2/drizzle_wfpc2.ipynb | 1 - .../using_updated_astrometry_solutions.ipynb | 1 - 3 files changed, 3 deletions(-) diff --git a/notebooks/DrizzlePac/Initialization/Initialization.ipynb b/notebooks/DrizzlePac/Initialization/Initialization.ipynb index 42f808ef..d4ffa7d5 100644 --- a/notebooks/DrizzlePac/Initialization/Initialization.ipynb +++ b/notebooks/DrizzlePac/Initialization/Initialization.ipynb @@ -233,7 +233,6 @@ "source": [ "stdout = subprocess.check_output(\n", " ['crds', 'bestrefs', '--files', 'ib2j02n5q_flc.fits', '--sync-references=1', '--update-bestrefs'],\n", - " shell=False,\n", " stderr=subprocess.STDOUT\n", ")\n", "print(stdout.decode())" diff --git a/notebooks/DrizzlePac/drizzle_wfpc2/drizzle_wfpc2.ipynb b/notebooks/DrizzlePac/drizzle_wfpc2/drizzle_wfpc2.ipynb index 1e62cf90..34be5cf5 100644 --- a/notebooks/DrizzlePac/drizzle_wfpc2/drizzle_wfpc2.ipynb +++ b/notebooks/DrizzlePac/drizzle_wfpc2/drizzle_wfpc2.ipynb @@ -121,7 +121,6 @@ "\n", "stdout = subprocess.check_output(\n", " ['crds', 'bestrefs', '--files', 'ua0605*_c0m.fits', '--sync-references=1', '--update-bestrefs'],\n", - " shell=False,\n", " stderr=subprocess.STDOUT\n", ")\n", "print(stdout.decode())\n", diff --git a/notebooks/DrizzlePac/using_updated_astrometry_solutions/using_updated_astrometry_solutions.ipynb b/notebooks/DrizzlePac/using_updated_astrometry_solutions/using_updated_astrometry_solutions.ipynb index fdacb9f7..bbf30257 100644 --- a/notebooks/DrizzlePac/using_updated_astrometry_solutions/using_updated_astrometry_solutions.ipynb +++ b/notebooks/DrizzlePac/using_updated_astrometry_solutions/using_updated_astrometry_solutions.ipynb @@ -167,7 +167,6 @@ " stdout = subprocess.check_output(\n", " ['crds', 'bestrefs', '--files', '{}_flc.fits'.format(row['obs_id']),\n", " '--sync-references=1', '--update-bestrefs'],\n", - " shell=False,\n", " stderr=subprocess.STDOUT\n", " )\n", " print(stdout.decode())" From f5c4a703ccbddf5a4d9d7c2d5e00839b91699e69 Mon Sep 17 00:00:00 2001 From: Mihai Cara Date: Tue, 23 Jun 2020 16:51:52 -0400 Subject: [PATCH 4/4] use crds API --- .../Initialization/Initialization.ipynb | 13 +- .../drizzle_wfpc2/drizzle_wfpc2.ipynb | 8 +- .../using_updated_astrometry_solutions.ipynb | 153 +++++++++++++----- 3 files changed, 117 insertions(+), 57 deletions(-) diff --git a/notebooks/DrizzlePac/Initialization/Initialization.ipynb b/notebooks/DrizzlePac/Initialization/Initialization.ipynb index d4ffa7d5..3d94c0a3 100644 --- a/notebooks/DrizzlePac/Initialization/Initialization.ipynb +++ b/notebooks/DrizzlePac/Initialization/Initialization.ipynb @@ -131,7 +131,7 @@ "import os\n", "import shutil\n", "import stwcs\n", - "import subprocess " + "import crds " ] }, { @@ -215,7 +215,7 @@ "outputs": [], "source": [ "os.environ['CRDS_SERVER_URL'] = 'https://hst-crds.stsci.edu'\n", - "os.environ['CRDS_PATH'] = os.path.abspath(os.path.join('.', 'reference_files'))" + "os.environ['CRDS_PATH'] = os.path.abspath(os.path.join('.', 'reference_files2'))" ] }, { @@ -231,11 +231,7 @@ "metadata": {}, "outputs": [], "source": [ - "stdout = subprocess.check_output(\n", - " ['crds', 'bestrefs', '--files', 'ib2j02n5q_flc.fits', '--sync-references=1', '--update-bestrefs'],\n", - " stderr=subprocess.STDOUT\n", - ")\n", - "print(stdout.decode())" + "crds.assign_bestrefs(['ib2j02n5q_flc.fits'], sync_references=True, verbosity=0)" ] }, { @@ -306,7 +302,8 @@ "## About this Notebook\n", "\n", " Author: T. Desjardins, STScI ACS Team \n", - " Updated: December 14, 2018" + " Updated: December 14, 2018\n", + " Updated: June 23, 2020" ] }, { diff --git a/notebooks/DrizzlePac/drizzle_wfpc2/drizzle_wfpc2.ipynb b/notebooks/DrizzlePac/drizzle_wfpc2/drizzle_wfpc2.ipynb index 34be5cf5..7fca4c0b 100644 --- a/notebooks/DrizzlePac/drizzle_wfpc2/drizzle_wfpc2.ipynb +++ b/notebooks/DrizzlePac/drizzle_wfpc2/drizzle_wfpc2.ipynb @@ -40,7 +40,7 @@ "import shutil\n", "import glob\n", "import os\n", - "import subprocess\n", + "import crds\n", "\n", "import matplotlib.pyplot as plt\n", "from astropy.io import fits\n", @@ -119,11 +119,7 @@ "os.environ['CRDS_SERVER_URL'] = 'https://hst-crds.stsci.edu'\n", "os.environ['CRDS_PATH'] = os.path.abspath(os.path.join('.', 'reference_files'))\n", "\n", - "stdout = subprocess.check_output(\n", - " ['crds', 'bestrefs', '--files', 'ua0605*_c0m.fits', '--sync-references=1', '--update-bestrefs'],\n", - " stderr=subprocess.STDOUT\n", - ")\n", - "print(stdout.decode())\n", + "crds.assign_bestrefs(glob.glob(\"ua0605*_c0m.fits\"), sync_references=True, verbosity=0)\n", "\n", "os.environ['uref'] = os.path.abspath(os.path.join('.', 'reference_files', 'references', 'hst', 'wfpc2')) + os.path.sep" ] diff --git a/notebooks/DrizzlePac/using_updated_astrometry_solutions/using_updated_astrometry_solutions.ipynb b/notebooks/DrizzlePac/using_updated_astrometry_solutions/using_updated_astrometry_solutions.ipynb index bbf30257..578f762a 100644 --- a/notebooks/DrizzlePac/using_updated_astrometry_solutions/using_updated_astrometry_solutions.ipynb +++ b/notebooks/DrizzlePac/using_updated_astrometry_solutions/using_updated_astrometry_solutions.ipynb @@ -59,14 +59,16 @@ { "cell_type": "code", "execution_count": null, - "metadata": {}, + "metadata": { + "scrolled": false + }, "outputs": [], "source": [ "import glob\n", "import numpy as np\n", "import os\n", "import shutil\n", - "import subprocess \n", + "import crds \n", "\n", "from astropy.io import fits\n", "from astropy.table import Table\n", @@ -85,7 +87,9 @@ { "cell_type": "code", "execution_count": null, - "metadata": {}, + "metadata": { + "scrolled": false + }, "outputs": [], "source": [ "os.environ['CRDS_SERVER_URL'] = 'https://hst-crds.stsci.edu'\n", @@ -111,7 +115,9 @@ { "cell_type": "code", "execution_count": null, - "metadata": {}, + "metadata": { + "scrolled": false + }, "outputs": [], "source": [ "obsTable = Observations.query_criteria(project='HST',proposal_id='14689',obs_id='ID7307030')\n", @@ -123,7 +129,9 @@ { "cell_type": "code", "execution_count": null, - "metadata": {}, + "metadata": { + "scrolled": false + }, "outputs": [], "source": [ "dl_tbl = Observations.download_products(filtered_products, mrp_only=False)\n", @@ -140,7 +148,9 @@ { "cell_type": "code", "execution_count": null, - "metadata": {}, + "metadata": { + "scrolled": false + }, "outputs": [], "source": [ "for f in dl_tbl['Local Path']:\n", @@ -159,17 +169,14 @@ { "cell_type": "code", "execution_count": null, - "metadata": {}, + "metadata": { + "scrolled": false + }, "outputs": [], "source": [ "for row in filtered_products:\n", " if row['productSubGroupDescription'] == 'FLC':\n", - " stdout = subprocess.check_output(\n", - " ['crds', 'bestrefs', '--files', '{}_flc.fits'.format(row['obs_id']),\n", - " '--sync-references=1', '--update-bestrefs'],\n", - " stderr=subprocess.STDOUT\n", - " )\n", - " print(stdout.decode())" + " crds.assign_bestrefs(['{}_flc.fits'.format(row['obs_id'])], sync_references=True, verbosity=0)" ] }, { @@ -189,7 +196,9 @@ { "cell_type": "code", "execution_count": null, - "metadata": {}, + "metadata": { + "scrolled": false + }, "outputs": [], "source": [ "filename = 'id7307xfq_flc.fits'" @@ -205,7 +214,9 @@ { "cell_type": "code", "execution_count": null, - "metadata": {}, + "metadata": { + "scrolled": false + }, "outputs": [], "source": [ "updatewcs.updatewcs(filename, use_db=True)" @@ -221,7 +232,9 @@ { "cell_type": "code", "execution_count": null, - "metadata": {}, + "metadata": { + "scrolled": false + }, "outputs": [], "source": [ "fits.info(filename)" @@ -251,7 +264,9 @@ { "cell_type": "code", "execution_count": null, - "metadata": {}, + "metadata": { + "scrolled": false + }, "outputs": [], "source": [ "ext_indices = headerlet.find_headerlet_HDUs(filename, strict=False)\n", @@ -270,7 +285,9 @@ { "cell_type": "code", "execution_count": null, - "metadata": {}, + "metadata": { + "scrolled": false + }, "outputs": [], "source": [ "hdu = fits.open(filename)\n", @@ -291,7 +308,9 @@ { "cell_type": "code", "execution_count": null, - "metadata": {}, + "metadata": { + "scrolled": false + }, "outputs": [], "source": [ "new_wcsnames = headerlet.get_headerlet_kw_names(filename, kw='WCSNAME')\n", @@ -308,7 +327,9 @@ { "cell_type": "code", "execution_count": null, - "metadata": {}, + "metadata": { + "scrolled": false + }, "outputs": [], "source": [ "def get_hdrlet_wcsnames(filename):\n", @@ -330,7 +351,9 @@ { "cell_type": "code", "execution_count": null, - "metadata": {}, + "metadata": { + "scrolled": false + }, "outputs": [], "source": [ "new_wcsnames = get_hdrlet_wcsnames(filename)" @@ -346,7 +369,9 @@ { "cell_type": "code", "execution_count": null, - "metadata": {}, + "metadata": { + "scrolled": false + }, "outputs": [], "source": [ "current_wcs = fits.getval(filename, 'WCSNAME', ext=('SCI', 1))\n", @@ -389,7 +414,9 @@ { "cell_type": "code", "execution_count": null, - "metadata": {}, + "metadata": { + "scrolled": false + }, "outputs": [], "source": [ "# Gets the index of list element with value 'IDC_2731450pi-GSC240'\n", @@ -401,7 +428,9 @@ { "cell_type": "code", "execution_count": null, - "metadata": {}, + "metadata": { + "scrolled": false + }, "outputs": [], "source": [ "headerlet.restore_from_headerlet(filename, hdrext=('HDRLET', chosen_ext), archive=False, force=False)" @@ -425,7 +454,9 @@ { "cell_type": "code", "execution_count": null, - "metadata": {}, + "metadata": { + "scrolled": false + }, "outputs": [], "source": [ "current_wcs = fits.getval(filename, 'WCSNAME', ext=('SCI', 1))\n", @@ -443,7 +474,9 @@ { "cell_type": "code", "execution_count": null, - "metadata": {}, + "metadata": { + "scrolled": false + }, "outputs": [], "source": [ "hdrlet_hdrnames = headerlet.get_headerlet_kw_names(fits.open(filename), 'HDRNAME')\n", @@ -453,7 +486,9 @@ { "cell_type": "code", "execution_count": null, - "metadata": {}, + "metadata": { + "scrolled": false + }, "outputs": [], "source": [ "print(desired_hdrname)" @@ -462,7 +497,9 @@ { "cell_type": "code", "execution_count": null, - "metadata": {}, + "metadata": { + "scrolled": false + }, "outputs": [], "source": [ "headerlet.restore_from_headerlet(filename, hdrname=desired_hdrname, archive=False, force=False)" @@ -478,7 +515,9 @@ { "cell_type": "code", "execution_count": null, - "metadata": {}, + "metadata": { + "scrolled": false + }, "outputs": [], "source": [ "for i, wcsname in enumerate(new_wcsnames):\n", @@ -523,7 +562,9 @@ { "cell_type": "code", "execution_count": null, - "metadata": {}, + "metadata": { + "scrolled": false + }, "outputs": [], "source": [ "idc_file = fits.getval(filename, 'IDCTAB')\n", @@ -534,7 +575,9 @@ { "cell_type": "code", "execution_count": null, - "metadata": {}, + "metadata": { + "scrolled": false + }, "outputs": [], "source": [ "print(idc_wcsname)" @@ -550,7 +593,9 @@ { "cell_type": "code", "execution_count": null, - "metadata": {}, + "metadata": { + "scrolled": false + }, "outputs": [], "source": [ "chosen_ext = new_wcsnames.index(idc_wcsname) + 1" @@ -559,7 +604,9 @@ { "cell_type": "code", "execution_count": null, - "metadata": {}, + "metadata": { + "scrolled": false + }, "outputs": [], "source": [ "headerlet.restore_from_headerlet(filename, hdrext=('HDRLET', chosen_ext), archive=False, force=False)" @@ -568,7 +615,9 @@ { "cell_type": "code", "execution_count": null, - "metadata": {}, + "metadata": { + "scrolled": false + }, "outputs": [], "source": [ "current_wcs = fits.getval(filename, 'WCSNAME', ext=('SCI', 1))\n", @@ -586,7 +635,9 @@ { "cell_type": "code", "execution_count": null, - "metadata": {}, + "metadata": { + "scrolled": false + }, "outputs": [], "source": [ "from stwcs import updatewcs\n", @@ -596,7 +647,9 @@ { "cell_type": "code", "execution_count": null, - "metadata": {}, + "metadata": { + "scrolled": false + }, "outputs": [], "source": [ "current_wcs = fits.getval(filename, 'WCSNAME', ext=('SCI', 1))\n", @@ -621,7 +674,9 @@ { "cell_type": "code", "execution_count": null, - "metadata": {}, + "metadata": { + "scrolled": false + }, "outputs": [], "source": [ "import matplotlib.pyplot as plt\n", @@ -639,7 +694,9 @@ { "cell_type": "code", "execution_count": null, - "metadata": {}, + "metadata": { + "scrolled": false + }, "outputs": [], "source": [ "from drizzlepac.alignimages import generate_astrometric_catalog\n", @@ -657,7 +714,9 @@ { "cell_type": "code", "execution_count": null, - "metadata": {}, + "metadata": { + "scrolled": false + }, "outputs": [], "source": [ "from astropy.wcs import WCS" @@ -666,7 +725,9 @@ { "cell_type": "code", "execution_count": null, - "metadata": {}, + "metadata": { + "scrolled": false + }, "outputs": [], "source": [ "hdu = fits.open(filename)\n", @@ -677,7 +738,9 @@ { "cell_type": "code", "execution_count": null, - "metadata": {}, + "metadata": { + "scrolled": false + }, "outputs": [], "source": [ "x, y = w.all_world2pix(np.array([ast_tbl['RA'], ast_tbl['DEC']]).T, 0).T" @@ -729,7 +792,9 @@ { "cell_type": "code", "execution_count": null, - "metadata": {}, + "metadata": { + "scrolled": false + }, "outputs": [], "source": [ "from drizzlepac import astrodrizzle" @@ -745,7 +810,9 @@ { "cell_type": "code", "execution_count": null, - "metadata": {}, + "metadata": { + "scrolled": false + }, "outputs": [], "source": [ "astrodrizzle.AstroDrizzle('id7307030_asn.fits', mdriztab=True, build=True, clean=True, preserve=False)"