ocean-eddy-cpt / gcm-filters

Diffusion-based Spatial Filtering of Gridded Data
https://gcm-filters.readthedocs.io/
Other
37 stars 24 forks source link

What the difference between simple fixed factor and filter_scale in m? #160

Closed Internal-Tide closed 1 year ago

Internal-Tide commented 1 year ago

I have a high-resolution OGCM dataset, I'd like to use gcm_filter to use bandpass filter, for example, I want to extract signal between 80 to 400km. Do I have to use only filter_scale in m? However, the grid is area weighted, I can only use the simple fixed factor .
Besides, how can I adjust the dx_min ? I relazied that if dx_min is small, the code will cost a lot of time.

Internal-Tide commented 1 year ago

And how the gcm_filter process the complex data?

iangrooms commented 1 year ago

Hi @Internal-Tide, thanks for your message. I don’t think your situation calls for fixed-factor filtering. To achieve band pass filtering between 80 and 400 km, you can filter the raw data twice - once at each filter scale - and then subtract the two results. You will need to choose the correct grid type for your data; when you enter the grid space info, be sure to use the same units for the grid spacing and for dx_min and filter_scale.

Fixed-factor filters are a way to filter using a filter scale that varies in space, but it sounds like you want a fixed filter scale not one that varies in space.

Internal-Tide commented 1 year ago

Hi @Internal-Tide, thanks for your message. I don’t think your situation calls for fixed-factor filtering. To achieve band pass filtering between 80 and 400 km, you can filter the raw data twice - once at each filter scale - and then subtract the two results. You will need to choose the correct grid type for your data; when you enter the grid space info, be sure to use the same units for the grid spacing and for dx_min and filter_scale.

Fixed-factor filters are a way to filter using a filter scale that varies in space, but it sounds like you want a fixed filter scale not one that varies in space.

Thank you for your reply! Now I think one can choose different grid_type (fixed-factor or filter scale in meters), if I want fixed-factor, I should choose grid type xxxxx_area_weighted, if I want filter scale in meters, I should choose xxxxx which is no need to offer vars "area". Do I understand correctly? Thanks again for your reply!

iangrooms commented 1 year ago

Yes, if you want to filter with 80 km or 400 km length scales then don’t use the area-weighted grid types. If you input dx_min in meters then also input filter_scale in meters.

Internal-Tide commented 1 year ago

Yes, if you want to filter with 80 km or 400 km length scales then don’t use the area-weighted grid types. If you input dx_min in meters then also input filter_scale in meters.

Thank you again!