drphilmarshall / Pangloss

Line of sight mass reconstruction in the Universe
GNU General Public License v2.0
10 stars 10 forks source link

Inference Semantics #113

Open davidthomas5412 opened 8 years ago

davidthomas5412 commented 8 years ago

The code for comparing the 'true' ray traced reduced shear (g_i_true) of a background galaxy to its Pangloss predicted ellipticity (e_i_predicted) still confuses me.

1) How I think it should be:

2) How it is now:

Lines 919-926 in background.py on 'wl' branch are good reference. What am I missing?

drphilmarshall commented 8 years ago

Good: the names of things are important. There are several different comparisons that we might want to do.

A. Compare shapes of background galaxies lensed by a realistic density field (as captured by the MS maps) with the shapes of background galaxies lensed by a set of halos extracted from that density field (ie each with known Mhalo). This is the test that Spencer was doing, and answers the question, how good can the halo model possibly be? The comparison can be done either in g or e, but either way we should:

B. Compare observed (fixed) and model-predicted galaxy shapes, in order to infer the halo masses. This is what we are now trying to do. Here, the comparison must be between e_obs (which is fixed) and e_predicted (which we compute using the halos). However, we are still doing functional tests, so we make the e_obs ourselves, using our realistic density field from teh MS maps.

On Sun, Nov 6, 2016 at 5:09 PM, David Thomas notifications@github.com wrote:

The code for comparing the 'true' ray traced reduced shear (g_i_true) of a background galaxy to its Pangloss predicted ellipticity (e_i_predicted) either has a bug or my understanding requires correcting.

  1. How I think it should be:
    • The method lens_by_map extracts g_i_true from the Hilbert et al ray traced pangloss.KAPPA_FILE, pangloss.GAMMA_1_FILE, pangloss.GAMMA_2_FILE.
    • We compute g_i_predicted and then use it to compute e_i_predicted in the method lens_by_halos.
    • Compare g_i_true with e_i_predicted.
  2. How it is now:
    • The method lens_by_halos computes g_i_predicted and then uses it to compute e_i_predicted.
    • Compare g_i_predicted with e_i_predicted.

Lines 919-926 in background.py on 'wl' branch are good reference.

— You are receiving this because you are subscribed to this thread. Reply to this email directly, view it on GitHub https://github.com/drphilmarshall/Pangloss/issues/113, or mute the thread https://github.com/notifications/unsubscribe-auth/AArY98THZXddQRHJpscnBTMwSyvoTIlhks5q7npFgaJpZM4KqwIP .

davidthomas5412 commented 8 years ago

The names in my original post are fictitious and exist solely for the purpose of simplifying communication. My confusion was not with names, but rather that the 'calculate_log_likelihood' method, which currently computes neither A nor B. A simple way to see this is that the 'calculate_log_likelihood' method only ever makes a comparison with variables computed with lens_by_halos or lens_by_map but never compares variables across both (see lines 920-928 in background.py).

It seems like the conclusion is that we should (i) write a method that computes B, and (ii) use this method in our inference notebooks.