def dynamicsymbols(names, level=0):
 esses = symbols(names, cls=Function)
 t = dynamicsymbols._t
 if iterable(esses):
  esses = [reduce(diff, ([t] * level), e(t)) for e in esses]
  return esses
 else:
  return reduce(diff, ([t] * level), esses(t))

def dynamicsymbols ( names , level = 0 ) : esses = symbols ( names , cls = Function ) t = dynamicsymbols . _t if iterable ( esses ) : esses = [ reduce ( diff , ( [ t ] * level ) , e ( t ) ) for e in esses ] return esses else : return reduce ( diff , ( [ t ] * level ) , esses ( t ) )
uses symbols and function for functions of time .