new file: readslice.R
[wrf-fire-matlab.git] / detect_ignition / new_likelihood / new_objective.m
blobd51f95c8f4202a8bde4593fba8b231c6f6030f7c
1 function [ log_sum ] = new_objective( w, red, g )\r
2 %[ likelihood ] = new_objective( w, red, g )\r
3 %returns data log-likelihood for s specified ignition point\r
4 %inputs:\r
5 %   w : processed wrf-out information\r
6 %   red : sturct coming from\r
7 %   g : struct coming from load_subset_detections\r
8 %outputs\r
9 %   likelihood : likelihood of data given ignition pt \r
11 sig = 4;\r
12 radius = round(sig*sqrt(32*log(10)))+1;\r
13 weight = gauss_weight(sig);\r
15 log_sum = 0;\r
16 % loop over appropriate subset of detections\r
17 for k = 1:length(g)\r
18     like  = 0;\r
19     heat = make_heats(red.tign_g,g(k).time);\r
20     mask = get_fire_pixels(g(k).fxdata);\r
21     dp_matrix = make_detection_probabilities(heat);\r
22     %skip if no detections in\r
23     if norm(mask) >0\r
24         [mm, nn] = size(mask);\r
25         % loop over detection pixels in mask\r
26         for ii = radius:mm-radius\r
27             for jj =radius:nn-radius\r
28                 if mask(ii,jj) > 0\r
29                     pp = compute_pixel_probability(ii,jj,heat,sig,weight,dp_matrix);\r
30                     like = like+log(pp);\r
31 %                 else\r
32 %                     pp = 1 - compute_pixel_probability(ii,jj,heat,radius,weight);\r
33 %                     like = like+log(pp);\r
34                 end\r
35             end\r
36         end\r
37     end\r
38     log_sum = log_sum + like;\r
39 end\r
42 end\r