Guest User

Untitled

a guest
Nov 12th, 2020
149
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
C++ 0.79 KB | None | 0 0
  1. std::array<dual, 4> symmetric_warp_drive(dual t, dual r, dual theta, dual phi)
  2. {
  3.     dual rg = 1;
  4.     dual rk = rg;
  5.  
  6.     dual a20 = (1 - rg / r);
  7.  
  8.     dual a0 = sqrt(a20);
  9.  
  10.     dual a1 = t / theta;
  11.  
  12.     dual a2 = a20 + a1;
  13.  
  14.     dual yrr0 = 1 / (1 - (rg / r));
  15.     dual ythetatheta0 = r * r;
  16.     dual yphiphi0 = r * r * sin(theta) * sin(theta);
  17.  
  18.     dual gamma_0 = pow(r, 4) * sin(theta) * sin(theta) / (1 - rg/r);
  19.  
  20.     dual littlea = rk * theta * pow(a0, -1);
  21.     dual littleb = rk * theta - sqrt(gamma_0);
  22.  
  23.     dual Urt = (littlea * pow(a20 + t/theta, 3/2.f) - littleb) / (littlea * a0*a0*a0 - littleb);
  24.  
  25.     dual yrr = Urt * yrr0;
  26.     dual ythetatheta = Urt * ythetatheta0;
  27.     dual yphiphi = Urt * yphiphi0;
  28.  
  29.     dual dt = -a2;
  30.  
  31.     return {dt, yrr, ythetatheta, yphiphi};
  32. }
Advertisement
Add Comment
Please, Sign In to add comment