def _indices(cls, **kwargs):
"""Return the default dimension indices for a given data shape
:param grid: :class:`Grid` object from which to infer the data
shape and :class:`Dimension` indices.
:return: Dimension indices used for each axis.
"""
save = kwargs.get('save', None)
grid = kwargs.get('grid', None)
time_dim = kwargs.get('time_dim', None)
if grid is None:
error('TimeFunction objects require a grid parameter.')
raise ValueError('No grid provided for TimeFunction.')
if time_dim is None:
time_dim = grid.time_dim if save else grid.stepping_dim
elif not isinstance(time_dim, TimeDimension):
raise ValueError("time_dim must be a TimeDimension, not %s" % type(time_dim))
assert(isinstance(time_dim, Dimension) and time_dim.is_Time)
_indices = Function._indices(**kwargs)
return tuple([time_dim] + list(_indices))
评论列表
文章目录