[GRASS-user] r.mask: no MASK created when using many categories

Mira Kattwinkel kattwinkel-mira at uni-landau.de
Thu Apr 6 02:12:40 PDT 2017


Dear Anna, dear list

I used the NC basic sample data set to replicate my case. Unfortunately, 
I get the same problem. Can anybody give me a hint? Thanks a lot!

Here is what I did and the output:

r.watershed elevation=elevation at PERMANENT threshold=500 basin=basins_new
SECTION 1a (of 5): Initiating Memory.
SECTION 1b (of 5): Determining Offmap Flow.
SECTION 2: A* Search.
SECTION 3a: Accumulating Surface Flow with MFD.
SECTION 3b: Adjusting drainage directions.
SECTION 4: Watershed determination.
SECTION 5: Closing Maps.

## creating mask with 106 categories  works fine
r.mask raster=basins_new at PERMANENT maskcats=1 2 3 4 5 6 7 8 9 10 11 12 
13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 
37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 
61 62 63 64 65 66 67 68 69 70 71 72 73 74 75 76 77 78 79 80 81 82 83 84 
85 86 87 88 89 90 91 92 93 94 95 96 97 98 99 100 101 102 103 104 105 106
All subsequent raster operations will be limited to the MASK area. 
Removing or renaming raster map named 'MASK' will restore raster 
operations to normal.

r.mapcalc expression=r106 = MASK

r.mask -r
Raster MASK removed

## creating mask with 107 categories seems to work without error but 
there is no MASK output
r.mask raster=basins_new at PERMANENT maskcats=1 2 3 4 5 6 7 8 9 10 11 12 
13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 
37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 
61 62 63 64 65 66 67 68 69 70 71 72 73 74 75 76 77 78 79 80 81 82 83 84 
85 86 87 88 89 90 91 92 93 94 95 96 97 98 99 100 101 102 103 104 105 106 107
All subsequent raster operations will be limited to the MASK area. 
Removing or renaming raster map named 'MASK' will restore raster 
operations to normal.

r.mapcalc expression=m107 = MASK
Invalid map <MASK>
Parse error
ERROR: parse error

g.list type=raster
basins
basins_new
elevation
elevation_shade
geology
lakes
landuse
r106
soils



On 06/04/17 05:06, Anna Petrášová wrote:
> On Wed, Apr 5, 2017 at 8:22 AM, Mira Kattwinkel
> <kattwinkel-mira at uni-landau.de> wrote:
>> Dear List,
>>
>> I am using r.mask to create a new raster map that only contains certain
>> categories given in 'maskcats'. Then, I use r.mapcalc to save the map under
>> a new name and (to be on the save side) delete the MASK with r.mask flag
>> '-r'. I do this in a loop and it works fine until a case when the number of
>> categories to combine is 213 (trail and error lead to 106 as the maximum
>> number that works fine). Flag 'verbose' gives the message that a MASK was
>> created, but none is there. The problem arises in both cases when I directly
>> use Grass or through R using execGrass.
> I tried it on landsat raster from NC sample dataset and it worked.
> Perhaps you could try to replicate it with this sample dataset?
>
> Anna
>
>> Is there a limit in the number of categories that can be passed to r.mask? I
>> did not find any hint about that. Additionally, I wonder why there is no
>> error message but in the contrary one that tells me that a MASK was created
>> even when it failed.
>>
>> In case the details are important (or if anybody has a better idea how to
>> achieve what I want): I have a raster map of subcatchemts belonging to
>> stream segments created with r.stream.basins. For the endpoints of segments,
>> I want to combine these subcatchments to a total catchment raster map
>> containing all upstream catchments.
>>
>> Thanks a lot,
>>
>> Mira
>>
>>
>> --
>> Dr. Mira Kattwinkel
>> Quantitative Landscape Ecology
>> Institute for Environmental Sciences
>> University of Koblenz-Landau
>> Fortstraße 7
>> 76829 Landau
>> Germany
>> Phone: + 49 6341 280-31553
>> Office: Building I, Room 2.02
>>
>> _______________________________________________
>> grass-user mailing list
>> grass-user at lists.osgeo.org
>> https://lists.osgeo.org/mailman/listinfo/grass-user

-- 
Dr. Mira Kattwinkel
Quantitative Landscape Ecology
Institute for Environmental Sciences
University of Koblenz-Landau
Fortstraße 7
76829 Landau
Germany
Phone: + 49 6341 280-31553
Office: Building I, Room 2.02



More information about the grass-user mailing list