user: What would the C source look like for the assembly code provided here?

```asm
<dcs_bremsstrahlung_SSR>:
  endbr64
  movapd %xmm0,%xmm5
  pxor   %xmm0,%xmm0
  comisd %xmm5,%xmm0
  jae    L115
  push   %r14
  push   %r13
  push   %r12
  push   %rbp
  push   %rbx
  sub    $0x60,%rsp
  movq   %xmm1,%rbp
  movq   %xmm2,%rbx
  movq   %xmm3,%r12
  movq   %xmm4,%r13
  comisd %xmm1,%xmm0
  jae    L247
  comisd %xmm2,%xmm0
  jae    L213
  comisd %xmm3,%xmm0
  jae    L182
  comisd %xmm4,%xmm0
  jae    L231
  movsd  D377(%rip),%xmm1
  movsd  %xmm5,0x8(%rsp)
  movapd %xmm5,%xmm0
  call   <pow@plt>
  movapd %xmm0,%xmm2
  movapd %xmm0,%xmm4
  mulsd  D425(%rip),%xmm4
  movsd  D106(%rip),%xmm1
  subsd  %xmm4,%xmm1
  movq   %rbx,%xmm6
  mulsd  %xmm6,%xmm1
  movq   %r12,%xmm6
  addsd  %xmm6,%xmm1
  pxor   %xmm0,%xmm0
  movq   %r13,%xmm3
  comisd %xmm1,%xmm3
  jae    L231
  movq   %r12,%xmm3
  movq   %rbx,%xmm4
  addsd  %xmm4,%xmm3
  movsd  D379(%rip),%xmm0
  mulsd  %xmm0,%xmm3
  movsd  %xmm3,0x20(%rsp)
  movq   %r13,%xmm1
  mulsd  %xmm0,%xmm1
  divsd  %xmm3,%xmm1
  movsd  %xmm1,0x18(%rsp)
  movq   %rbx,%xmm3
  mulsd  %xmm0,%xmm3
  movsd  %xmm3,0x10(%rsp)
  movsd  D106(%rip),%xmm6
  divsd  %xmm2,%xmm6
  movsd  %xmm6,0x40(%rsp)
  movsd  0x8(%rsp),%xmm0
  mov    $0x1,%eax
  call   <radiation_logarithm@plt>
  pxor   %xmm3,%xmm3
  cvtsi2sd %eax,%xmm3
  movq   %xmm3,%rbx
  movsd  0x8(%rsp),%xmm5
  ucomisd D106(%rip),%xmm5
  jp     L119
  mov    D542(%rip),%r12
  jne    L119
L145:
  movsd  D373(%rip),%xmm1
  movq   %rbp,%xmm0
  call   <pow@plt>
  mulsd  D35(%rip),%xmm0
  movsd  D484(%rip),%xmm1
  divsd  %xmm0,%xmm1
  movsd  0x10(%rsp),%xmm4
  divsd  %xmm1,%xmm4
  movsd  %xmm4,0x30(%rsp)
  movapd %xmm4,%xmm0
  mulsd  D529(%rip),%xmm0
  mulsd  %xmm4,%xmm0
  addsd  D106(%rip),%xmm0
  pxor   %xmm1,%xmm1
  ucomisd %xmm0,%xmm1
  ja     L14
  sqrtsd %xmm0,%xmm0
  movsd  %xmm0,0x28(%rsp)
L160:
  movsd  D106(%rip),%xmm0
  movsd  0x28(%rsp),%xmm7
  addsd  %xmm7,%xmm0
  movapd %xmm7,%xmm1
  subsd  D106(%rip),%xmm1
  divsd  %xmm1,%xmm0
  call   <log@plt>
  movsd  %xmm0,0x58(%rsp)
  movsd  0x30(%rsp),%xmm0
  call   <log@plt>
  movq   %xmm0,%r14
  movsd  0x30(%rsp),%xmm0
  call   <log@plt>
  movq   %xmm0,%rbp
  movsd  D106(%rip),%xmm2
  movsd  0x18(%rsp),%xmm3
  subsd  %xmm3,%xmm2
  movsd  0x10(%rsp),%xmm6
  movapd %xmm6,%xmm4
  mulsd  %xmm6,%xmm4
  movapd %xmm4,%xmm1
  mulsd  %xmm3,%xmm1
  movsd  0x20(%rsp),%xmm4
  addsd  %xmm4,%xmm4
  movapd %xmm4,%xmm0
  movsd  %xmm2,0x38(%rsp)
  mulsd  %xmm2,%xmm0
  movapd %xmm1,%xmm8
  divsd  %xmm0,%xmm8
  movq   %rbx,%xmm2
  mulsd  0x40(%rsp),%xmm2
  movapd %xmm6,%xmm4
  divsd  D58(%rip),%xmm4
  movapd %xmm2,%xmm5
  movsd  %xmm4,0x50(%rsp)
  mulsd  %xmm4,%xmm5
  movapd %xmm5,%xmm0
  movsd  %xmm2,0x48(%rsp)
  movapd %xmm2,%xmm5
  mulsd  D73(%rip),%xmm5
  movapd %xmm5,%xmm1
  movsd  %xmm8,0x20(%rsp)
  mulsd  %xmm8,%xmm1
  divsd  D58(%rip),%xmm1
  addsd  D106(%rip),%xmm1
  divsd  %xmm1,%xmm0
  call   <log@plt>
  movq   %xmm0,%rbx
  movsd  0x48(%rsp),%xmm2
  movapd %xmm2,%xmm5
  mulsd  D666(%rip),%xmm5
  movapd %xmm5,%xmm0
  mulsd  0x50(%rsp),%xmm0
  mulsd  D117(%rip),%xmm2
  movapd %xmm2,%xmm1
  mulsd  0x20(%rsp),%xmm1
  divsd  D58(%rip),%xmm1
  addsd  D106(%rip),%xmm1
  divsd  %xmm1,%xmm0
  call   <log@plt>
  movapd %xmm0,%xmm3
  movsd  D106(%rip),%xmm5
  divsd  0x8(%rsp),%xmm5
  movsd  %xmm5,0x48(%rsp)
  movsd  D106(%rip),%xmm9
  subsd  %xmm5,%xmm9
  movsd  0x28(%rsp),%xmm7
  movapd %xmm7,%xmm6
  mulsd  D589(%rip),%xmm6
  movapd %xmm6,%xmm0
  movsd  0x58(%rsp),%xmm5
  mulsd  %xmm5,%xmm0
  movq   %r14,%xmm12
  addsd  %xmm12,%xmm0
  mulsd  %xmm9,%xmm0
  movq   %rbx,%xmm10
  subsd  %xmm0,%xmm10
  movsd  %xmm10,0x28(%rsp)
  movapd %xmm7,%xmm6
  mulsd  D605(%rip),%xmm6
  movapd %xmm6,%xmm0
  movapd %xmm7,%xmm1
  mulsd  %xmm7,%xmm1
  mulsd  %xmm7,%xmm1
  subsd  %xmm1,%xmm0
  mulsd  D413(%rip),%xmm0
  mulsd  %xmm5,%xmm0
  movq   %rbp,%xmm5
  addsd  %xmm5,%xmm0
  movsd  0x30(%rsp),%xmm7
  movapd %xmm7,%xmm1
  addsd  %xmm7,%xmm1
  mulsd  %xmm7,%xmm1
  addsd  %xmm1,%xmm0
  mulsd  %xmm9,%xmm0
  movapd %xmm3,%xmm5
  subsd  %xmm0,%xmm5
  movsd  %xmm5,0x30(%rsp)
  movsd  0x10(%rsp),%xmm6
  movapd %xmm6,%xmm0
  movsd  0x20(%rsp),%xmm8
  divsd  %xmm8,%xmm0
  mulsd  %xmm8,%xmm6
  movapd %xmm6,%xmm1
  divsd  D245(%rip),%xmm1
  addsd  D31(%rip),%xmm1
  divsd  %xmm1,%xmm0
  call   <log@plt>
  movq   %xmm0,%rbx
  movq   %r12,%xmm5
  mulsd  0x20(%rsp),%xmm5
  movapd %xmm5,%xmm1
  movsd  0x40(%rsp),%xmm7
  mulsd  %xmm7,%xmm1
  mulsd  %xmm7,%xmm1
  mulsd  D31(%rip),%xmm1
  movsd  D58(%rip),%xmm0
  divsd  %xmm1,%xmm0
  addsd  D106(%rip),%xmm0
  call   <log@plt>
  movapd %xmm0,%xmm2
  movsd  0x18(%rsp),%xmm6
  movapd %xmm6,%xmm3
  mulsd  %xmm6,%xmm3
  movsd  %xmm3,0x20(%rsp)
  movsd  0x38(%rsp),%xmm1
  mulsd  D243(%rip),%xmm1
  addsd  %xmm3,%xmm1
  movq   %rbx,%xmm0
  subsd  %xmm2,%xmm0
  mulsd  %xmm0,%xmm1
  movsd  %xmm1,0x40(%rsp)
  pxor   %xmm2,%xmm2
  comisd %xmm6,%xmm2
  ja     L35
  comisd D106(%rip),%xmm6
  jbe    L258
L35:
  movsd  0x18(%rsp),%xmm1
  addsd  %xmm1,%xmm1
  movsd  D222(%rip),%xmm0
  subsd  %xmm1,%xmm0
  addsd  0x20(%rsp),%xmm0
  movsd  0x28(%rsp),%xmm6
  mulsd  %xmm6,%xmm0
  movsd  0x38(%rsp),%xmm1
  mulsd  D620(%rip),%xmm1
  mulsd  0x30(%rsp),%xmm1
  subsd  %xmm1,%xmm0
  movsd  0x48(%rsp),%xmm1
  mulsd  0x40(%rsp),%xmm1
  addsd  %xmm1,%xmm0
  mulsd  D371(%rip),%xmm6
  movapd %xmm6,%xmm1
  mulsd  %xmm2,%xmm1
  addsd  %xmm1,%xmm0
  pxor   %xmm1,%xmm1
  comisd %xmm0,%xmm1
  jae    L181
  movsd  D58(%rip),%xmm1
  divsd  0x10(%rsp),%xmm1
  addsd  %xmm1,%xmm1
  mulsd  D360(%rip),%xmm1
  mulsd  0x8(%rsp),%xmm1
  mulsd  %xmm1,%xmm1
  movsd  D228(%rip),%xmm2
  movq   %r13,%xmm4
  divsd  %xmm4,%xmm2
  mulsd  %xmm2,%xmm1
  mulsd  %xmm1,%xmm0
  mulsd  D504(%rip),%xmm0
  jmp    L231
L119:
  mov    D231(%rip),%r12
  jmp    L145
L14:
  call   <sqrt@plt>
  movsd  %xmm0,0x28(%rsp)
  jmp    L160
L258:
  movsd  D98(%rip),%xmm0
  comisd %xmm6,%xmm0
  jbe    L183
  movapd %xmm6,%xmm2
  mulsd  D410(%rip),%xmm2
  subsd  D192(%rip),%xmm2
  movapd %xmm6,%xmm0
  mulsd  D165(%rip),%xmm0
  mulsd  %xmm6,%xmm0
  addsd  %xmm0,%xmm2
  jmp    L35
L183:
  movsd  0x18(%rsp),%xmm6
  comisd D98(%rip),%xmm6
  jb     L190
  movsd  D573(%rip),%xmm0
  comisd %xmm6,%xmm0
  jbe    L190
  movapd %xmm6,%xmm2
  mulsd  D583(%rip),%xmm2
  addsd  D640(%rip),%xmm2
  movapd %xmm6,%xmm0
  mulsd  D270(%rip),%xmm0
  mulsd  %xmm6,%xmm0
  addsd  %xmm0,%xmm2
  movapd %xmm6,%xmm0
  mulsd  D160(%rip),%xmm0
  mulsd  %xmm6,%xmm0
  mulsd  %xmm6,%xmm0
  addsd  %xmm0,%xmm2
  jmp    L35
L190:
  movsd  0x18(%rsp),%xmm2
  comisd D389(%rip),%xmm2
  jb     L135
  movsd  D260(%rip),%xmm0
  comisd %xmm2,%xmm0
  ja     L235
L135:
  movsd  0x18(%rsp),%xmm2
  movapd %xmm2,%xmm1
  mulsd  D281(%rip),%xmm1
  addsd  D62(%rip),%xmm1
  movapd %xmm2,%xmm0
  mulsd  D597(%rip),%xmm0
  mulsd  %xmm2,%xmm0
  addsd  %xmm0,%xmm1
  movsd  %xmm1,0x50(%rsp)
  movsd  0x38(%rsp),%xmm0
  call   <log@plt>
  movq   %xmm0,%rbx
  movsd  0x18(%rsp),%xmm0
  call   <log@plt>
  movapd %xmm0,%xmm2
  movsd  0x18(%rsp),%xmm0
  mulsd  D179(%rip),%xmm0
  mulsd  %xmm0,%xmm2
  movq   %rbx,%xmm0
  mulsd  D652(%rip),%xmm0
  addsd  %xmm0,%xmm2
  movq   %rbx,%xmm0
  mulsd  D119(%rip),%xmm0
  movq   %rbx,%xmm7
  mulsd  %xmm7,%xmm0
  addsd  %xmm0,%xmm2
  addsd  0x50(%rsp),%xmm2
  jmp    L35
L235:
  movapd %xmm2,%xmm1
  mulsd  D292(%rip),%xmm1
  subsd  D663(%rip),%xmm1
  movapd %xmm2,%xmm0
  mulsd  D50(%rip),%xmm0
  mulsd  %xmm2,%xmm0
  addsd  %xmm0,%xmm1
  movsd  %xmm1,0x50(%rsp)
  movsd  0x38(%rsp),%xmm0
  call   <log@plt>
  movq   %xmm0,%rbx
  movsd  0x18(%rsp),%xmm0
  call   <log@plt>
  movapd %xmm0,%xmm2
  movsd  0x18(%rsp),%xmm3
  mulsd  D102(%rip),%xmm3
  mulsd  %xmm3,%xmm2
  movq   %rbx,%xmm0
  mulsd  D169(%rip),%xmm0
  addsd  %xmm0,%xmm2
  movq   %rbx,%xmm0
  mulsd  D383(%rip),%xmm0
  movq   %rbx,%xmm7
  mulsd  %xmm7,%xmm0
  addsd  %xmm0,%xmm2
  addsd  0x50(%rsp),%xmm2
  jmp    L35
L115:
  pxor   %xmm0,%xmm0
  ret
L247:
  pxor   %xmm0,%xmm0
L231:
  add    $0x60,%rsp
  pop    %rbx
  pop    %rbp
  pop    %r12
  pop    %r13
  pop    %r14
  ret
L213:
  pxor   %xmm0,%xmm0
  jmp    L231
L182:
  pxor   %xmm0,%xmm0
  jmp    L231
L181:
  pxor   %xmm0,%xmm0
  jmp    L231
```

tool_calls: name: extract_symbolic_data
arguments: tag: D377
type_guessed: byte[8]
name: extract_symbolic_data
arguments: tag: D425
type_guessed: byte[8]
name: extract_symbolic_data
arguments: tag: D106
type_guessed: f64[2]
name: extract_symbolic_data
arguments: tag: D379
type_guessed: f32[2]
name: extract_symbolic_data
arguments: tag: D542
type_guessed: f64
name: extract_symbolic_data
arguments: tag: D373
type_guessed: f64
name: extract_symbolic_data
arguments: tag: D35
type_guessed: f64
name: extract_symbolic_data
arguments: tag: D484
type_guessed: byte[8]
name: extract_symbolic_data
arguments: tag: D529
type_guessed: f64
name: extract_symbolic_data
arguments: tag: D58
type_guessed: f64
name: extract_symbolic_data
arguments: tag: D73
type_guessed: byte[8]
name: extract_symbolic_data
arguments: tag: D666
type_guessed: byte[8]
name: extract_symbolic_data
arguments: tag: D117
type_guessed: byte[8]
name: extract_symbolic_data
arguments: tag: D589
type_guessed: f64
name: extract_symbolic_data
arguments: tag: D605
type_guessed: f64
name: extract_symbolic_data
arguments: tag: D413
type_guessed: f64
name: extract_symbolic_data
arguments: tag: D245
type_guessed: byte[8]
name: extract_symbolic_data
arguments: tag: D31
type_guessed: f64
name: extract_symbolic_data
arguments: tag: D243
type_guessed: byte[8]
name: extract_symbolic_data
arguments: tag: D222
type_guessed: f64
name: extract_symbolic_data
arguments: tag: D620
type_guessed: byte[8]
name: extract_symbolic_data
arguments: tag: D371
type_guessed: byte[8]
name: extract_symbolic_data
arguments: tag: D360
type_guessed: byte[8]
name: extract_symbolic_data
arguments: tag: D228
type_guessed: byte[8]
name: extract_symbolic_data
arguments: tag: D504
type_guessed: byte[8]
name: extract_symbolic_data
arguments: tag: D231
type_guessed: f64
name: extract_symbolic_data
arguments: tag: D98
type_guessed: f64[2]
name: extract_symbolic_data
arguments: tag: D410
type_guessed: f64
name: extract_symbolic_data
arguments: tag: D192
type_guessed: f64
name: extract_symbolic_data
arguments: tag: D165
type_guessed: byte[8]
name: extract_symbolic_data
arguments: tag: D573
type_guessed: f64
name: extract_symbolic_data
arguments: tag: D583
type_guessed: f64
name: extract_symbolic_data
arguments: tag: D640
type_guessed: f64
name: extract_symbolic_data
arguments: tag: D270
type_guessed: byte[8]
name: extract_symbolic_data
arguments: tag: D160
type_guessed: f64
name: extract_symbolic_data
arguments: tag: D389
type_guessed: f64[2]
name: extract_symbolic_data
arguments: tag: D260
type_guessed: f64
name: extract_symbolic_data
arguments: tag: D281
type_guessed: f64
name: extract_symbolic_data
arguments: tag: D62
type_guessed: f64
name: extract_symbolic_data
arguments: tag: D597
type_guessed: byte[8]
name: extract_symbolic_data
arguments: tag: D179
type_guessed: f64
name: extract_symbolic_data
arguments: tag: D652
type_guessed: f64
name: extract_symbolic_data
arguments: tag: D119
type_guessed: f64
name: extract_symbolic_data
arguments: tag: D292
type_guessed: byte[8]
name: extract_symbolic_data
arguments: tag: D663
type_guessed: f64
name: extract_symbolic_data
arguments: tag: D50
type_guessed: f64
name: extract_symbolic_data
arguments: tag: D102
type_guessed: byte[8]
name: extract_symbolic_data
arguments: tag: D169
type_guessed: f64
name: extract_symbolic_data
arguments: tag: D383
type_guessed: f64

tool: {"D377": [0x55,0x55,0x55,0x55,0x55,0x55,0xd5,0x3f]}

tool: {"D425": [0xf4,0x84,0x96,0x2a,0xdf,0xc8,0xf3,0x3f]}

tool: {"D106": [1.0,1000.0]}

tool: {"D379": [0.0,4.4765625]}

tool: D542: 446

tool: D373: 0.27

tool: D35: 1.54

tool: {"D484": [0xcd,0x3b,0x71,0x0b,0x59,0xf3,0x71,0x40]}

tool: D529: 4

tool: D58: 0.5109989461

tool: {"D73": [0x9c,0x06,0x1e,0x8e,0x29,0x61,0xfa,0x3f]}

tool: {"D666": [0xb1,0x23,0xa2,0xd7,0x60,0x16,0xeb,0x3f]}

tool: {"D117": [0x13,0x2d,0xba,0xb1,0x6d,0x54,0xf6,0x3f]}

tool: D589: 0.5

tool: D605: 3

tool: D413: 0.25

tool: {"D245": [0xd7,0x56,0x50,0x56,0x30,0xb6,0xd0,0x3f]}

tool: D31: 1.648721270700128

tool: {"D243": [0x55,0x55,0x55,0x55,0x55,0x55,0xf5,0x3f]}

tool: D222: 2

tool: {"D620": [0x55,0x55,0x55,0x55,0x55,0x55,0xe5,0x3f]}

tool: {"D371": [0x9d,0xd2,0x1e,0x2a,0xd4,0xe3,0x5d,0x3f]}

tool: {"D360": [0x58,0x21,0x44,0x99,0x59,0xd4,0x53,0x3d]}

tool: {"D228": [0x9d,0xd2,0x1e,0x2a,0xd4,0xe3,0x7d,0x3f]}

tool: {"D504": [0x2d,0x43,0x1c,0xeb,0xe2,0x36,0x1a,0x3f]}

tool: D231: 1429

tool: {"D98": [0.02,148.84]}

tool: D410: 148.84

tool: D192: 0.00349

tool: {"D165": [0x68,0x91,0xed,0x7c,0x3f,0xdc,0x8e,0xc0]}

tool: D573: 0.1

tool: D583: 132.573

tool: D640: 0.1642

tool: {"D270": [0xd9,0xce,0xf7,0x53,0xe3,0x4a,0x82,0xc0]}

tool: D160: 1407.77

tool: {"D389": [0.01,0.9]}

tool: D260: 0.9

tool: D281: 581.823

tool: D62: 2134.19

tool: {"D597": [0x33,0x33,0x33,0x33,0xb3,0x29,0xa5,0xc0]}

tool: D179: 4767.05

tool: D652: 1.52918

tool: D119: 0.361933

tool: {"D292": [0x4e,0xd1,0x91,0x5c,0xfe,0x03,0x33,0xc0]}

tool: D663: 2.8922

tool: D50: 57.698

tool: {"D102": [0x2f,0xdd,0x24,0x06,0x81,0xb5,0x4f,0xc0]}

tool: D169: 14.1166

tool: D383: 1.84206

assistant: ```c
double dcs_bremsstrahlung_SSR(double Z, double A, double m, double K, double q) {
  if ((Z <= 0) || (A <= 0) || (m <= 0) || (K <= 0) || (q <= 0))
    return 0.;
  const double z13 = pow(Z, 1. / 3.);
  if (q >= K + m * (1. - 0.75 * 1.648721270700128 * z13))
    return 0.;
  const double a[3] = {-0.00349, 148.84, -987.531};
  const double b[4] = {0.1642, 132.573, -585.361, 1407.77};
  const double c[6] = {-2.8922, -19.0156, 57.698, -63.418, 14.1166, 1.84206};
  const double d[6] = {2134.19, 581.823, -2708.85, 4767.05, 1.52918, 0.361933};
  const double energy = (K + m) * 1E+03;
  const double v = q * 1E+03 / energy;
  m *= 1E+03;
  const double Z13 = 1. / z13;
  const double rad_log = radiation_logarithm(Z);
  const double rad_log_inel = (Z == 1.) ? 446. : 1429.;
  const double Dn = 1.54 * pow(A, 0.27);
  const double mu_qc = m / (105.6583745 * exp(1.) / Dn);
  const double rho = sqrt(1. + 4. * mu_qc * mu_qc);
  const double log_rho = log((rho + 1.) / (rho - 1.));
  const double delta1 = log(mu_qc) + 0.5 * rho * log_rho;
  const double delta2 = log(mu_qc) + 0.25 * (3. * rho - rho * rho * rho) * log_rho + 2. * mu_qc * mu_qc;
  const double delta = m * m * v / (2. * energy * (1. - v));
  double phi1 = log(rad_log * Z13 * (m / 0.5109989461) / (1. + rad_log * Z13 * exp(0.5) * delta / 0.5109989461));
  double phi2 = log(rad_log * Z13 * exp(-1. / 6.) * (m / 0.5109989461) / (1. + rad_log * Z13 * exp(1. / 3.) * delta / 0.5109989461));
  phi1 -= delta1 * (1. - 1. / Z);
  phi2 -= delta2 * (1. - 1. / Z);
  const double s_atomic_1 = log(m / delta / (m * delta / (0.5109989461 * 0.5109989461) + 1.648721270700128));
  const double s_atomic_2 = log(1. + 0.5109989461 / (delta * rad_log_inel * Z13 * Z13 * 1.648721270700128));
  const double s_atomic = (4. / 3. * (1. - v) + v * v) * (s_atomic_1 - s_atomic_2);
  double s_rad;
  if (v < .0 || v > 1.) {
    s_rad = 0.;
  } else if (v < 0.02) {
    s_rad = a[0] + a[1] * v + a[2] * v * v;
  } else if (v >= 0.02 && v < 0.1) {
    s_rad = b[0] + b[1] * v + b[2] * v * v + b[3] * v * v * v;
  } else if (v >= 0.01 && v < 0.9) {
    s_rad = c[0] + c[1] * v + c[2] * v * v;
    const double tmp = log(1. - v);
    s_rad += c[3] * v * log(v) + c[4] * tmp + c[5] * tmp * tmp;
  } else {
    s_rad = d[0] + d[1] * v + d[2] * v * v;
    const double tmp = log(1. - v);
    s_rad += d[3] * v * log(v) + d[4] * tmp + d[5] * tmp * tmp;
  }
  const double result = ((2. - 2. * v + v * v) * phi1 - 2. / 3. * (1. - v) * phi2) + 1. / Z * s_atomic + 0.25 * 7.2973525693E-03 * phi1 * s_rad;
  if (result <= 0.)
    return 0.;
  const double aux = 2 * (0.5109989461 / m) * 2.8179403227E-13 * Z;
  return aux * aux * (7.2973525693E-03 / q) * result * 1E-04;
}
```