<div>Hi Hamish,</div>
<div> </div>
<div>Thanks for the advice to fill the ocean with zeros. It worked better, and didn't get "killed", but it still didn't work...This time it made it further than before, but it got "abondoned" - see the output below...</div>
<div> </div>
<div>Maybe I need to split my region into subregions and run r.fillnulls on each subregion then patch them together. If anybody has a better idea I would be grateful to know. </div>
<div> </div>
<div>Thanks!</div>
<div>Nick</div>
<div> </div>
<div>GRASS 6.4.1 (seasia_ll):~ > r.fillnulls in=srtmm0 out=srtmm0f<br>Locating and isolating NULL areas...<br> 100%<br>Reading input raster map <<a href="mailto:r_fillnulls_18931@PERMANENT">r_fillnulls_18931@PERMANENT</a>>...<br>
100%<br>Finding buffer zones...<br> 100%<br>Writing output raster map <r_fillnulls_18931.buf>...<br> 100%<br> 100%<br>Creating interpolation points...<br>Extracting points...<br> 100%<br>Building topology for vector map <vecttmp_fillnulls_18931>...<br>
Registering primitives...<br>13428068 primitives registered<br>13428068 vertices registered<br>Building areas...<br> 100%<br>0 areas built<br>0 isles built<br>Attaching islands...<br>Attaching centroids...<br> 100%<br>Number of nodes: 13428068<br>
Number of primitives: 13428068<br>Number of points: 13428068<br>Number of lines: 0<br>Number of boundaries: 0<br>Number of centroids: 0<br>Number of areas: 0<br>Number of isles: 0<br>ERROR: /usr/lib/grass64/scripts/r.fillnulls abandoned. Removing temporary<br>
maps, restoring user mask if needed:<br>Removing raster <MASK><br>Removing raster <r_fillnulls_18931><br>Removing raster <r_fillnulls_18931.buf><br>Removing raster <r_fillnulls_18931_filled><br>
WARNING: Raster map <r_fillnulls_18931_filled> not found<br>WARNING: <r_fillnulls_18931_filled> nothing removed<br>Removing vector <vecttmp_fillnulls_18931><br>WARNING: Table <vecttmp_fillnulls_18931> linked to vector map<br>
<vecttmp_fillnulls_18931> does not exist<br>WARNING: raster <usermask_mask.18931> not found<br><br><br></div>
<div class="gmail_quote">On Thu, Dec 1, 2011 at 8:36 AM, Hamish <span dir="ltr"><<a href="mailto:hamish_b@yahoo.com">hamish_b@yahoo.com</a>></span> wrote:<br>
<blockquote style="BORDER-LEFT: #ccc 1px solid; MARGIN: 0px 0px 0px 0.8ex; PADDING-LEFT: 1ex" class="gmail_quote">
<div class="im">Nick wrote:<br>> I am having trouble filling the null areas in the SRTM (3 second<br>> resolution) DEM for Southeast Asia. I think the reason is because the<br></div>> region I am trying fill is too large. The region is almost a billion<br>
<div class="im">> cells - see g.region -p output below - but about 40% of that region is<br></div>
<div class="im">> ocean areas with no DEM data. I'm wondering if maybe the problem is that<br>> r.fillnulls is trying to fill the ocean areas.<br><br></div>it will try that. a good first step is to fill in the ocean with 0s.<br>
I was just doing this yesterday with srtm data actually.<br>GRASS> r.mapcalc "zero = 0"<br><br>then r.patch with your srtm data listed first and the zeros listed last.<br><br>but be careful you don't fill in zeros where there are holes in the data<br>
on land. if you have a vector coastline use "v.to.rast use=val val=1" to<br>create a land mask, then invert with:<br> r.mapcalc "sea.mask = if(isnull(land.mask), 1, null())"<br><br>and use the sea.mask as the background fill-in for the r.patch step.<br>
<div class="im"><br><br>> r.fillnulls gets to the point where it says "Building areas..." then<br>> it says "Killed" and prints an error message.<br><br></div>often "Killed" happens when the computer ran out of memory.<br>
not interpolating over the ocean may make the thing go much faster and<br>need much less memory, as it has much less to do.<br>
<div class="im"><br><br>> I am using GRASS 6.4.1. Eventually I plan on using the null-filled<br>> DEM to delineate the watersheds in Southeast Asia.<br><br></div>start thinking about your watershed threshold size now :)<br>
<br><br>good luck,<br><font color="#888888">Hamish<br><br></font></blockquote></div><br>