diff --git a/esmvalcore/_recipe.py b/esmvalcore/_recipe.py index 02c3781279..9857b33a0d 100644 --- a/esmvalcore/_recipe.py +++ b/esmvalcore/_recipe.py @@ -401,11 +401,23 @@ def _get_correct_fx_file(variable, fx_varname, config_user): elif fx_varname == 'sftgif': fx_var = _add_fxvar_keys({'short_name': fx_varname, 'mip': 'fx'}, var) + elif fx_varname == 'volcello': + fx_var = _add_fxvar_keys({'short_name': fx_varname, 'mip': 'Ofx'}, + var) else: raise RecipeError( f"Project {var['project']} not supported with fx variables") fx_files = _get_input_files(fx_var, config_user) + + # If can't find Ofx files, then try with original variable mip + if not fx_files and fx_var['mip'] == 'Ofx': + fx_var['mip'] = var['mip'] + fx_files = _get_input_files(fx_var, config_user) + + if not fx_files: + logger.warning("Unable to locate Fx files in Ofx or %s", var['mip']) + # allow for empty lists corrected for by NE masks if fx_files: fx_files = fx_files[0]