Skip to content

Instantly share code, notes, and snippets.

@rbiswas4
Created July 31, 2019 13:39
Show Gist options
  • Save rbiswas4/036ee328d2ec0c4de0ecbe933fe14512 to your computer and use it in GitHub Desktop.
Save rbiswas4/036ee328d2ec0c4de0ecbe933fe14512 to your computer and use it in GitHub Desktop.
Display the source blob
Display the rendered blob
Raw
{
"cells": [
{
"metadata": {
"trusted": true
},
"cell_type": "code",
"source": "import sncosmo",
"execution_count": 1,
"outputs": []
},
{
"metadata": {
"trusted": true
},
"cell_type": "code",
"source": "%matplotlib inline",
"execution_count": 2,
"outputs": []
},
{
"metadata": {
"trusted": true
},
"cell_type": "code",
"source": "import matplotlib.pyplot as plt\nimport seaborn as sns\nimport numpy as np\nsns.set_style('whitegrid')",
"execution_count": 3,
"outputs": []
},
{
"metadata": {},
"cell_type": "markdown",
"source": "## How much does the redshift change due to peculiar velocities along the line of sight?"
},
{
"metadata": {
"trusted": true
},
"cell_type": "code",
"source": "def zobs(z_cosmo, v_pec):\n \"\"\"\n vpec : units km/s\n \"\"\"\n c = 3.0e5\n return z_cosmo + v_pec/c + z_cosmo * v_pec / c",
"execution_count": 4,
"outputs": []
},
{
"metadata": {
"trusted": true
},
"cell_type": "code",
"source": "z_cosmo = np.arange(0.005, 0.3, 0.005)\nfig, ax = plt.subplots()\nax.plot(z_cosmo, zobs(z_cosmo, 1000)- z_cosmo, color='b', lw=2, label='vpec=1000 km/s')\nax.plot(z_cosmo, zobs(z_cosmo, 300)- z_cosmo, color='r', lw=2, label='vpec=300 km/s')\nax.legend(loc='best')",
"execution_count": 5,
"outputs": [
{
"output_type": "execute_result",
"execution_count": 5,
"data": {
"text/plain": "<matplotlib.legend.Legend at 0x1a1a4cf780>"
},
"metadata": {}
},
{
"output_type": "display_data",
"data": {
"text/plain": "<Figure size 432x288 with 1 Axes>",
"image/png": "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\n"
},
"metadata": {}
}
]
},
{
"metadata": {},
"cell_type": "markdown",
"source": "## Impact on a SN at different redshifts"
},
{
"metadata": {},
"cell_type": "markdown",
"source": "The impact is due to `K-corrections` and time dilations. Effectively, '$\\lambda_{obs} = \\lambda_{\\rm{rest}}(1 + z)$' \nwhere z is the true redshift calculated above."
},
{
"metadata": {
"trusted": true
},
"cell_type": "code",
"source": "def get_SN_models(baseredshift, median_pec, high_pec, delta_median_z=0., delta_high_z=0):\n \"\"\"\n \"\"\"\n basemodel = sncosmo.Model(source='salt2')\n basemodel.set(z=baseredshift)\n basemodel.set_source_peakabsmag(-19.3, 'bessellb', 'ab')\n\n highvmodel = sncosmo.Model(source='salt2')\n # The following ordering of operations is important\n # The function below accounts for distance modulus changes simultaneously\n # So capturing the difference due to peculiar velocity requires setting the absmag at the cosmological redshift to\n # get the amplitude of the spectrum\n highvmodel.set(z=baseredshift)\n highvmodel.set_source_peakabsmag(-19.3, 'bessellb', 'ab')\n # With the amplitude fixed, we can now apply the kinematical effects of redshift\n hredshift = zobs(baseredshift, high_pec)+ delta_high_z\n highvmodel.set(z=hredshift)\n \n \n \n \n medianvmodel = sncosmo.Model(source='salt2')\n medianvmodel.set(z=baseredshift)\n medianvmodel.set_source_peakabsmag(-19.3, 'bessellb', 'ab')\n mredshift = zobs(baseredshift, median_pec) + delta_median_z\n medianvmodel.set(z=mredshift)\n \n \n return (basemodel, medianvmodel, highvmodel), (baseredshift, mredshift, hredshift )",
"execution_count": 6,
"outputs": []
},
{
"metadata": {},
"cell_type": "markdown",
"source": "### Light Curves : let us look at g band"
},
{
"metadata": {},
"cell_type": "markdown",
"source": "### z = 0.01 (where no SN are used for Cosmology)"
},
{
"metadata": {
"trusted": true
},
"cell_type": "code",
"source": "(bmodel, mmodel, hmodel), (baseredshift, mredshift, hredshift) = get_SN_models(0.01, 300, 1000)",
"execution_count": 7,
"outputs": []
},
{
"metadata": {
"trusted": true
},
"cell_type": "code",
"source": "print(baseredshift, mredshift, hredshift)",
"execution_count": 8,
"outputs": [
{
"output_type": "stream",
"text": "0.01 0.011009999999999999 0.013366666666666667\n",
"name": "stdout"
}
]
},
{
"metadata": {
"trusted": true
},
"cell_type": "code",
"source": "t = np.arange(-15., 30., 1.)\nfig, ax = plt.subplots(2)\nax[0].plot(t, bmodel.bandmag('lsstg','ab', t), color='k', label='base')\nax[0].plot(t, mmodel.bandmag('lsstg', 'ab', t), color='r', label='median')\nax[0].plot(t, hmodel.bandmag('lsstg', 'ab', t), color='b', ls='dashed', label='high')\nax[0].invert_yaxis()\nax[1].plot(t, hmodel.bandmag('lsstg','ab', t) - bmodel.bandmag('lsstg','ab', t), color='b')\nax[1].plot(t, mmodel.bandmag('lsstg','ab', t) - bmodel.bandmag('lsstg','ab', t), color='r')\nax[1].invert_yaxis()\nax[0].set_ylabel('mag')\nax[0].legend(loc='best')\nax[1].set_ylabel(r'$\\Delta$ (mag)')\n\n",
"execution_count": 9,
"outputs": [
{
"output_type": "execute_result",
"execution_count": 9,
"data": {
"text/plain": "Text(0, 0.5, '$\\\\Delta$ (mag)')"
},
"metadata": {}
},
{
"output_type": "display_data",
"data": {
"text/plain": "<Figure size 432x288 with 2 Axes>",
"image/png": "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\n"
},
"metadata": {}
}
]
},
{
"metadata": {},
"cell_type": "markdown",
"source": "### z = 0.1"
},
{
"metadata": {
"trusted": true
},
"cell_type": "code",
"source": "(bmodel, mmodel, hmodel), (baseredshift, mredshift, hredshift) = get_SN_models(0.1, 300, 1000)",
"execution_count": 10,
"outputs": []
},
{
"metadata": {
"trusted": true
},
"cell_type": "code",
"source": "print(baseredshift, mredshift, hredshift)",
"execution_count": 11,
"outputs": [
{
"output_type": "stream",
"text": "0.1 0.10110000000000001 0.10366666666666667\n",
"name": "stdout"
}
]
},
{
"metadata": {
"trusted": true
},
"cell_type": "code",
"source": "t = np.arange(-15., 30., 1.)\nfig, ax = plt.subplots(2)\nax[0].plot(t, bmodel.bandmag('lsstg','ab', t), color='k')\nax[0].plot(t, mmodel.bandmag('lsstg', 'ab', t), color='r')\nax[0].plot(t, hmodel.bandmag('lsstg', 'ab', t), color='b', ls='dashed')\nax[0].invert_yaxis()\nax[1].plot(t, hmodel.bandmag('lsstg','ab', t) - bmodel.bandmag('lsstg','ab', t), color='b')\nax[1].plot(t, mmodel.bandmag('lsstg','ab', t) - bmodel.bandmag('lsstg','ab', t), color='r')\nax[1].invert_yaxis()\nax[0].set_ylabel('mag')\nax[0].legend(loc='best')\nax[1].set_ylabel(r'$\\Delta$ (mag)')\n\n",
"execution_count": 12,
"outputs": [
{
"output_type": "stream",
"text": "No handles with labels found to put in legend.\n",
"name": "stderr"
},
{
"output_type": "execute_result",
"execution_count": 12,
"data": {
"text/plain": "Text(0, 0.5, '$\\\\Delta$ (mag)')"
},
"metadata": {}
},
{
"output_type": "display_data",
"data": {
"text/plain": "<Figure size 432x288 with 2 Axes>",
"image/png": "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\n"
},
"metadata": {}
}
]
},
{
"metadata": {},
"cell_type": "markdown",
"source": "### z = 0.3"
},
{
"metadata": {
"trusted": true
},
"cell_type": "code",
"source": "(bmodel, mmodel, hmodel), (baseredshift, mredshift, hredshift) = get_SN_models(0.3, 300, 1000)",
"execution_count": 13,
"outputs": []
},
{
"metadata": {
"trusted": true
},
"cell_type": "code",
"source": "print(baseredshift, mredshift, hredshift)",
"execution_count": 14,
"outputs": [
{
"output_type": "stream",
"text": "0.3 0.3013 0.30433333333333334\n",
"name": "stdout"
}
]
},
{
"metadata": {
"trusted": true
},
"cell_type": "code",
"source": "t = np.arange(-15., 30., 1.)\nfig, ax = plt.subplots(2)\nax[0].plot(t, bmodel.bandmag('lsstg','ab', t), color='k', label='base')\nax[0].plot(t, mmodel.bandmag('lsstg', 'ab', t), color='r', label='median')\nax[0].plot(t, hmodel.bandmag('lsstg', 'ab', t), color='b', ls='dashed', label='high')\nax[0].invert_yaxis()\nax[1].plot(t, hmodel.bandmag('lsstg','ab', t) - bmodel.bandmag('lsstg','ab', t), color='b')\nax[1].plot(t, mmodel.bandmag('lsstg','ab', t) - bmodel.bandmag('lsstg','ab', t), color='r')\nax[1].invert_yaxis()\nax[0].set_ylabel('mag')\nax[0].legend(loc='best')\nax[1].set_ylabel(r'$\\Delta$ (mag)')\n\n",
"execution_count": 15,
"outputs": [
{
"output_type": "execute_result",
"execution_count": 15,
"data": {
"text/plain": "Text(0, 0.5, '$\\\\Delta$ (mag)')"
},
"metadata": {}
},
{
"output_type": "display_data",
"data": {
"text/plain": "<Figure size 432x288 with 2 Axes>",
"image/png": "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\n"
},
"metadata": {}
}
]
},
{
"metadata": {},
"cell_type": "markdown",
"source": "## Why do we need redshift to get distance for a light curve ?"
},
{
"metadata": {
"trusted": true
},
"cell_type": "code",
"source": "(bmodel, mmodel, hmodel), (baseredshift, mredshift, hredshift) = get_SN_models(0.3, 0, 0, -0.2, 0.3)",
"execution_count": 16,
"outputs": []
},
{
"metadata": {
"trusted": true
},
"cell_type": "code",
"source": "t = np.arange(-15., 30., 1.)\nfig, ax = plt.subplots(2)\nax[0].plot(t, bmodel.bandmag('lsstg','ab', t), color='k', label='base')\nax[0].plot(t, mmodel.bandmag('lsstg', 'ab', t), color='r', label='median')\nax[0].plot(t, hmodel.bandmag('lsstg', 'ab', t), color='b', ls='dashed', label='high')\nax[0].invert_yaxis()\nax[1].plot(t, hmodel.bandmag('lsstg','ab', t) - bmodel.bandmag('lsstg','ab', t), color='b')\nax[1].plot(t, mmodel.bandmag('lsstg','ab', t) - bmodel.bandmag('lsstg','ab', t), color='r')\nax[1].invert_yaxis()\nax[0].set_ylabel('mag')\nax[0].legend(loc='best')\nax[1].set_ylabel(r'$\\Delta$ (mag)')\n\n\n",
"execution_count": 17,
"outputs": [
{
"output_type": "execute_result",
"execution_count": 17,
"data": {
"text/plain": "Text(0, 0.5, '$\\\\Delta$ (mag)')"
},
"metadata": {}
},
{
"output_type": "display_data",
"data": {
"text/plain": "<Figure size 432x288 with 2 Axes>",
"image/png": "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\n"
},
"metadata": {}
}
]
},
{
"metadata": {},
"cell_type": "markdown",
"source": "# Scratch"
}
],
"metadata": {
"kernelspec": {
"name": "python3",
"display_name": "Python 3",
"language": "python"
},
"language_info": {
"name": "python",
"version": "3.7.1",
"mimetype": "text/x-python",
"codemirror_mode": {
"name": "ipython",
"version": 3
},
"pygments_lexer": "ipython3",
"nbconvert_exporter": "python",
"file_extension": ".py"
}
},
"nbformat": 4,
"nbformat_minor": 2
}
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment