Well, this depends on the kind of filter. If all what you want is an specific time mean, this can be done in the average file by just averaging over the number of time steps required for a particular tidal period. You just need to compute the number of time steps required and set NAVG
to that value.
Other kind of filters, will required writing a new routine in ROMS and compute then directly in ROMS. Some special switches can be added to ROMS to write that kind of output. This kind filter can be added with added with a CPP option.
Any volunter? I can help with the IO logistics and the parallelization.
Hernan G. Arango