code: def split_dae_alg(eqs: SYM, dx: SYM) -> Dict[str, SYM]:
      
      dae = []
      alg = []
      for eq in ca.vertsplit(eqs):
          if ca.depends_on(eq, dx):
              dae.append(eq)
          else:
              alg.append(eq)
      return {
          'dae': ca.vertcat(*dae),
          'alg': ca.vertcat(*alg)
      }
docs: Split equations into differential algebraic and algebraic only