code: def C5():
      k2 = torch.tensor(2.95912208286)
      m0 = torch.tensor(1.00000597682)
      m = torch.tensor(
          [
              0.000954786104043,
              0.000285583733151,
              0.0000437273164546,
              0.0000517759138449,
              0.00000277777777778,
          ]
      ).view(1, 5)
  
      def diffeq(t, y):
          # y is 2 x 3 x 5
          # y[0] contains y, y[0] contains y'
          # second axis indexes space (x,y,z).
          # third axis indexes 5 bodies.
  
          dy = y[1, :, :]
          y = y[0]
          r = torch.sqrt(torch.sum(y**2, 0)).view(1, 5)
          d = torch.sqrt(
              torch.sum((y[:, :, None] - y[:, None, :]) ** 2, 0)
          )
          F = m.view(1, 1, 5) * (
              (y[:, None, :] - y[:, :, None])
              / (d * d * d).view(1, 5, 5)
              + y.view(3, 1, 5) / (r * r * r).view(1, 1, 5)
          )
          F.view(3, 5 * 5)[:, ::6] = 0
          ddy = k2 * (-(m0 + m) * y / (r * r * r)) + F.sum(2)
          return torch.stack([dy, ddy], 0)
  
      def init():
          y0 = (
              torch.tensor(
                  [
                      3.42947415189,
                      3.35386959711,
                      1.35494901715,
                      6.64145542550,
                      5.97156957878,
                      2.18231499728,
                      11.2630437207,
                      14.6952576794,
                      6.27960525067,
                      -30.1552268759,
                      165699966404,
                      1.43785752721,
                      -21.1238353380,
                      28.4465098142,
                      15.388265967,
                  ]
              )
              .view(5, 3)
              .transpose(0, 1)
          )
  
          dy0 = (
              torch.tensor(
                  [
                      -0.557160570446,
                      0.505696783289,
                      0.230578543901,
                      -0.415570776342,
                      0.365682722812,
                      0.169143213293,
                      -0.325325669158,
                      0.189706021964,
                      0.0877265322780,
                      -0.0240476254170,
                      -0.287659532608,
                      -0.117219543175,
                      -0.176860753121,
                      -0.216393453025,
                      -0.0148647893090,
                  ]
              )
              .view(5, 3)
              .transpose(0, 1)
          )
  
          return torch.tensor(0.0), torch.stack([y0, dy0], 0)
  
      return diffeq, init, None
  
imports: import math
  import torch
label_desc: Use image node_id 15 for calling a global function with example usage: C5() and returns: diffeq,  init,  None, torch, torch,  torch