From 30b0d67e84d1e76f3758f22c9260f3ddcbbc0a04 Mon Sep 17 00:00:00 2001 From: Thibault Barnouin Date: Fri, 11 Jun 2021 09:02:11 +0200 Subject: [PATCH] add Stokes I/Q/U maps --- plots/3C405_x136060/3C405_FOC_IQU.png | Bin 0 -> 66275 bytes src/lib/plots.py | 54 ++++++++++++++++++++++++++ 2 files changed, 54 insertions(+) create mode 100644 plots/3C405_x136060/3C405_FOC_IQU.png diff --git a/plots/3C405_x136060/3C405_FOC_IQU.png b/plots/3C405_x136060/3C405_FOC_IQU.png new file mode 100644 index 0000000000000000000000000000000000000000..2ff927ae08bf5f93366bb788c0dd8f58997db06a GIT binary patch literal 66275 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%0Ak_JR41LEo4Sy}cL)Ox@RS?P%DPe@?q?W|9ok zsrWM%(v^81{Pa)JDmA3@D$)Qvk9ZuW1p{6U8Dk zE@t1);jCNsDtq=78u#7$ZO<9C8hc|K56m3b#;`X!Ak(dm4?j75vRrJHmJ}=B^oX`} z2S{?IE40$_NI{zFp(&-DhA>&FiLJ!AS!!cUT(OJ&-=dE@&&yn!)E~WO(e5~DzkiqU zNd3f}bysp}ZpY@lbXJ~2b7QxhemcK2!C$&|1HFiL>a^|=(I?f|Isc4!(j4VtIJ9Kl zLf;v+ri(oH@Bh)*TFc6&e#*sTG)y%3&A?PqQW}>v)@{8ponHOn-I&-xM;t%D-0F`U z&TqDHt=^$3qnV8{H#dyOC+_t+c+%iGJ2lBjGC}TS(P+=mo>!q0(JL#@L!1i(D}#fB zRth;CQGQ)RrlUJ|2VMNC2biL3R1w(ewuh`Cq^`RSyq~=I1DyE3@<>I)(*Lu>Hf>~; z*GIx<`MulQVz%=}AZq(xi38?lnX9$6lYZv$?w%5>1I|=aD|0E9ZdQ%)$@(3sW20YN zv=;%-elE|*+ODUf@opRhff$>aJ7e>WpD*pnPV=C-?%~)!9$A{rFOBQ)&TVKmGhpx) z7svjnL|EFLDxE7ztV`{OWJl^=aF&jSA=GPCPvw+@(L>ilAx*$$&U zSEca_`&fjiq86#@+I0_xN21aU%&XHh)bgtKzCV-tO|M@c(5hfYIdBtaw526PaPDGj ze}7G2NJB^$VHN05gBmIl9?6?z2!))c;4#cfaBypd;aIZ&V~zP4C{Ff>c{hgu2ZQPR zrYgnexagw3QzK<-2%KNExRs?Mk-H50`%&q$-;?aRgmYGXT>9=5jU_#vI-U!x>Wf%^ zxpLR%^(i)liAFBp!$kuyjT_cie`2Jft*t$6*Hx>LT9oe+P-a~JBmSY-{;r;LO&^N} zNZz*op`CR&oZS%3$OS@XFkMBv1)7+=#8C~u&bRjCdP6KOG z^N>?5_aOL>BTsoVz0J6t z7&jIZmt46U>^l?6W95t2Z`=(uz&fUQg#C*p*p*qbz!MF0B8J@``7Wvy@7MYX)?Pbb z=I&SYqKW0mxPW$5b61m^>sd}ZjRfzPqq0uc_X|h!?eCZ5S_#wU@{d|A-e}II7?Ts- zSjCSby!Q)5QN}q=;>KY6qr!TOKQYI>TT$Clz>wbE zODmvTs)sZyh-QFo#C_Wr8P|d}8VsJjxrAJ7kf{n%#o1b)D4rSFFUOO5JU&^@c9uZx z#Z&VJ10%#(MqAzwpMMV-Yw_~LP)^(q0jRP5jA`OEv!Z1n8SK z{Wz*0(KWHM!Y?9va^doKo=(jls{8UgaL;;i6F$hGRhc}L(2_vo2e?G6L@0~yp?7*a zk`tb-z5S*|n^#NNnp{sxy8v35sS!b$JfI>xeJn5$xeu;pr7rriAr5$3Pg99t8+J=`;hJVJl5>No4EZA?YsH`C5f2ZDj6XL3_)sNm z591>AdhrbXxe=4%D-DKVu6BD@*bxad6w6sao⪙Te&|VPq$h~VHzmTCwNqW2rdL= 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 literal 0 HcmV?d00001 diff --git a/src/lib/plots.py b/src/lib/plots.py index 69b27cc..9460122 100755 --- a/src/lib/plots.py +++ b/src/lib/plots.py @@ -87,6 +87,56 @@ def plot_obs(data_array, headers, shape=None, vmin=0., vmax=6., rectangle=None, plt.show() return 0 + +def plot_Stokes(Stokes, savename=None, plots_folder=""): + """ + Plots I/Q/U maps. + ---------- + Inputs: + Stokes : astropy.io.fits.hdu.hdulist.HDUList + HDUList containing I, Q, U, P, s_P, PA, s_PA (in this particular order) + for one observation. + savename : str, optional + Name of the figure the map should be saved to. If None, the map won't + be saved (only displayed). + Defaults to None. + plots_folder : str, optional + Relative (or absolute) filepath to the folder in wich the map will + be saved. Not used if savename is None. + Defaults to current folder. + """ + # Get data + stkI = Stokes[np.argmax([Stokes[i].header['datatype']=='I_stokes' for i in range(len(Stokes))])].data + stkQ = Stokes[np.argmax([Stokes[i].header['datatype']=='Q_stokes' for i in range(len(Stokes))])].data + stkU = Stokes[np.argmax([Stokes[i].header['datatype']=='U_stokes' for i in range(len(Stokes))])].data + + wcs = WCS(Stokes[0]).deepcopy() + + # Plot figure + fig = plt.figure(figsize=(30,10)) + + ax = fig.add_subplot(131, projection=wcs) + im = ax.imshow(stkI, origin='lower') + plt.colorbar(im) + ax.set(xlabel="RA", ylabel="DEC", title=r"$I_{stokes}$") + + ax = fig.add_subplot(132, projection=wcs) + im = ax.imshow(stkQ, origin='lower') + plt.colorbar(im) + ax.set(xlabel="RA", ylabel="DEC", title=r"$Q_{stokes}$") + + ax = fig.add_subplot(133, projection=wcs) + im = ax.imshow(stkU, origin='lower') + plt.colorbar(im) + ax.set(xlabel="RA", ylabel="DEC", title=r"$U_{stokes}$") + + if not (savename is None): + fig.suptitle(savename+"_IQU") + fig.savefig(plots_folder+savename+"_IQU.png",bbox_inches='tight') + plt.show() + return 0 + + def polarization_map(Stokes, SNRp_cut=3., SNRi_cut=30., step_vec=1, savename=None, plots_folder="", display=None): """ @@ -137,6 +187,10 @@ def polarization_map(Stokes, SNRp_cut=3., SNRi_cut=30., step_vec=1, convert_flux = 1.#Stokes[0].header['photflam'] wcs = WCS(Stokes[0]).deepcopy() + #Plot Stokes parameters map + if display is None: + plot_Stokes(Stokes, savename=savename, plots_folder=plots_folder) + #Compute SNR and apply cuts pol.data[pol.data == 0.] = np.nan SNRp = pol.data/pol_err.data