Quadratic Flux Minimizing Surfaces

Quadratic-Flux-Minimizing (QFM) surfaces are a useful tool in vacuum stellarator optimization, where, given a coil magnetic field, one may extract a surface in space which minimizes the quadratic magnetic flux passing through it, that is,

\[\begin{equation} S = \arg\min_S \int_S |B_n|^2 dS \end{equation}\]

Where \(B_n = \mathbf{B} \cdot \mathbf{n}\) is the normal magnetic field on the surface \(S\), and the optimization is understood to be done under the constraint of the surface enclosing some amount of net toroidal magnetic flux. The surface \(S\) itself is described typically with a double Fourier series in the poloidal and toroidal angles (See the docs on basis functions for more details) describing the cylindrical \(R\) and \(Z\) coordinates of the surface, so the optimization is done by varying the Fourier coefficients describing the surface (or potentially, the magnetic field’s degrees of freedom as well). This short notebook will give an example of using QFM surfaces to extrace a surface from a magnetic field, and then solving the interior equilibrum with DESC and comparing it to the original magnetic field.

[1]:
import sys
import os

sys.path.insert(0, os.path.abspath("."))
sys.path.append(os.path.abspath("../../../"))

If you have access to a GPU, uncomment the following two lines.

[2]:
# from desc import set_device
# set_device("gpu")
[3]:
from desc.objectives import (
    SurfaceQuadraticFlux,
    ToroidalFlux,
    ObjectiveFunction,
)
from desc.magnetic_fields import SplineMagneticField
from desc.geometry import FourierRZToroidalSurface
from desc.optimize import Optimizer
from desc.grid import LinearGrid
from desc.plotting import plot_2d, poincare_plot, plot_boundary, plot_surfaces
import numpy as np
DESC version 0.12.3+864.g55c9d3a11.dirty,using JAX backend, jax version=0.4.35, jaxlib version=0.4.35, dtype=float64
Using device: CPU, with 7.33 GB available memory

First, we will load a magnetic field from an mgrid file (the same as is used in the stellarator free boundary notebook)

[4]:
extcur = [4700.0, 1000.0]
field = SplineMagneticField.from_mgrid(
    "../../../tests/inputs/mgrid_test.nc", extcur=extcur
)

Our initial surface is a circular surface, which we see is not well-approximating any flux surfaces in this vacuum field.

[5]:
surface0 = FourierRZToroidalSurface(
    R_lmn=[0.7, 0.1],
    modes_R=[[0, 0], [1, 0]],
    Z_lmn=[-0.1],
    modes_Z=[[-1, 0]],
    sym=True,
    NFP=field.NFP,
    M=6,
    N=6,
)
fig, ax = plot_surfaces(surface0, rho=1.0, theta=0)
poincare_plot(
    field,
    R0=np.linspace(0.7, 0.8, 10),
    Z0=np.zeros(10),
    ax=ax,
    NFP=field.NFP,
    ntransit=50,
);
../../_images/notebooks_tutorials_QFM_surface_8_0.png

Let’s setup the optimization problem to find the QFM surface.

[6]:
# SurfaceQuadraticFlux objective is the one to use when trying to minimize quadratic flux for a surface
qflux = SurfaceQuadraticFlux(
    surface0,
    field,
    eval_grid=LinearGrid(M=2 * surface0.M, N=2 * surface0.M, NFP=surface0.NFP),
    field_fixed=True,  # field is not being optimized
)
# Must include a ToroidalFlux or a Volume target to ensure we don't get a trivial solution of the surface collapsing to a point
target_psi = -0.035
tflux = ToroidalFlux(
    surface0,
    field,
    target=target_psi,  # the same toroidal flux as used in the free bdry eq
    eq_fixed=False,  # we will allow the thing passed in (QFM surface in this case) to vary
    field_fixed=True,  # field is not being optimized, so we fix it
)
obj = ObjectiveFunction(qflux)

opt = Optimizer("lsq-auglag")

(qfm_surf,), _ = opt.optimize(
    surface0,
    objective=obj,
    constraints=(tflux,),
    ftol=1e-5,
    maxiter=500,
    verbose=3,
    copy=True,
)
Building objective: Surface Quadratic Flux
Precomputing transforms
Timer: Precomputing transforms = 1.02 sec
Timer: Objective build = 1.03 sec
Building objective: toroidal-flux
Precomputing transforms
Timer: Precomputing transforms = 442 ms
Timer: Objective build = 1.32 sec
Number of parameters: 169
Number of objectives: 625
Number of equality constraints: 1
Number of inequality constraints: 0
Timer: Initializing the optimization = 2.44 sec

Starting optimization
Using method: lsq-auglag
   Iteration     Total nfev        Cost      Cost reduction    Step norm     Optimality    Constr viol.   Penalty param  max(|mltplr|)
       0              1          6.632e+01                                    2.104e+03      1.383e-02      1.000e+01      0.000e+00
       1              2          6.099e+01      5.329e+00      2.309e-03      2.006e+03      1.441e-02      1.000e+01      0.000e+00
       2              3          4.257e+01      1.843e+01      9.279e-03      1.634e+03      1.665e-02      1.000e+01      0.000e+00
       3              4          5.031e+00      3.754e+01      3.739e-02      4.605e+02      2.437e-02      1.000e+01      0.000e+00
       4              5          5.032e+00     -5.593e-04      1.384e-01      6.829e+02      2.530e-03      1.000e+01      0.000e+00
       5              6          1.301e-01      4.902e+00      2.761e-02      1.545e+02      1.653e-04      1.000e+01      0.000e+00
       6              8          3.489e-03      1.266e-01      8.836e-03      1.881e+01      8.797e-04      1.000e+01      0.000e+00
       7             10          6.393e-04      2.850e-03      3.736e-03      6.773e+00      1.053e-03      1.000e+01      0.000e+00
       8             12          3.011e-04      3.382e-04      3.605e-03      5.149e+00      7.633e-04      1.000e+01      0.000e+00
       9             13          1.259e-04      1.752e-04      3.131e-03      4.394e+00      3.205e-04      1.000e+01      0.000e+00
      10             15          2.756e-05      9.835e-05      6.664e-04      4.466e-01      2.356e-04      1.000e+01      0.000e+00
      11             17          2.582e-05      1.739e-06      5.895e-04      5.394e-01      1.918e-04      1.000e+01      0.000e+00
      12             18          2.444e-05      1.385e-06      5.742e-04      3.878e-01      1.702e-04      1.000e+01      0.000e+00
      13             20          2.341e-05      1.022e-06      6.493e-04      2.401e-01      1.584e-04      1.000e+01      0.000e+00
      14             22          2.259e-05      8.222e-07      6.590e-04      1.766e-01      1.499e-04      1.000e+01      0.000e+00
      15             24          2.184e-05      7.512e-07      6.695e-04      2.146e-01      1.425e-04      1.000e+01      0.000e+00
      16             26          2.126e-05      5.819e-07      7.306e-04      2.684e-01      1.356e-04      1.000e+01      0.000e+00
      17             27          2.076e-05      4.956e-07      7.722e-04      2.277e-01      1.292e-04      1.000e+01      0.000e+00
      18             28          2.027e-05      4.947e-07      7.612e-04      2.088e-01      1.236e-04      1.000e+01      0.000e+00
      19             29          1.978e-05      4.910e-07      7.302e-04      2.367e-01      1.188e-04      1.000e+01      0.000e+00
      20             30          1.929e-05      4.909e-07      6.950e-04      2.560e-01      1.147e-04      1.000e+01      0.000e+00
      21             31          1.880e-05      4.833e-07      6.653e-04      2.674e-01      1.110e-04      1.000e+01      0.000e+00
      22             32          1.836e-05      4.374e-07      6.569e-04      2.798e-01      1.074e-04      1.000e+01      0.000e+00
      23             33          1.799e-05      3.705e-07      6.684e-04      2.892e-01      1.038e-04      1.000e+01      0.000e+00
      24             34          1.767e-05      3.214e-07      6.786e-04      2.792e-01      1.002e-04      1.000e+01      0.000e+00
      25             35          1.739e-05      2.831e-07      6.812e-04      2.525e-01      9.675e-05      1.000e+01      0.000e+00
      26             36          1.714e-05      2.505e-07      6.813e-04      2.202e-01      9.349e-05      1.000e+01      0.000e+00
      27             37          1.691e-05      2.251e-07      6.825e-04      1.880e-01      9.047e-05      1.000e+01      0.000e+00
      28             38          1.671e-05      2.084e-07      6.856e-04      1.814e-01      8.763e-05      1.000e+01      0.000e+00
      29             39          1.643e-05      2.784e-07      1.706e-04      1.131e-02      8.660e-05      1.000e+01      8.660e-04
      30             40          1.649e-05     -6.093e-08      7.438e-04      1.716e-01      1.049e-06      1.000e+01      8.660e-04
      31             41          1.625e-05      2.413e-07      1.719e-04      1.122e-02      2.143e-06      1.000e+01      8.660e-04
      32             43          1.620e-05      4.927e-08      1.718e-04      1.087e-02      3.019e-06      1.000e+01      8.660e-04
      33             45          1.615e-05      4.865e-08      1.722e-04      1.070e-02      3.635e-06      1.000e+01      8.660e-04
      34             47          1.610e-05      4.798e-08      1.725e-04      1.057e-02      4.216e-06      1.000e+01      8.660e-04
      35             49          1.605e-05      4.733e-08      1.728e-04      1.045e-02      4.787e-06      1.000e+01      8.660e-04
      36             51          1.601e-05      4.670e-08      1.731e-04      1.033e-02      5.348e-06      1.000e+01      8.660e-04
      37             53          1.596e-05      4.607e-08      1.735e-04      1.022e-02      5.903e-06      1.000e+01      8.660e-04
      38             55          1.592e-05      4.544e-08      1.738e-04      1.010e-02      6.450e-06      1.000e+01      8.660e-04
      39             57          1.587e-05      4.481e-08      1.742e-04      9.986e-03      6.991e-06      1.000e+01      7.961e-04
      40             59          1.582e-05      4.900e-08      1.735e-04      9.898e-03      1.351e-06      1.000e+01      7.961e-04
      41             61          1.578e-05      4.406e-08      1.748e-04      9.775e-03      1.204e-06      1.000e+01      7.961e-04
      42             63          1.573e-05      4.294e-08      1.753e-04      9.667e-03      1.652e-06      1.000e+01      7.961e-04
      43             65          1.569e-05      4.225e-08      1.757e-04      9.542e-03      2.145e-06      1.000e+01      7.961e-04
      44             67          1.565e-05      4.160e-08      1.760e-04      9.420e-03      2.638e-06      1.000e+01      7.961e-04
      45             69          1.561e-05      4.095e-08      1.764e-04      9.291e-03      3.123e-06      1.000e+01      7.961e-04
      46             71          1.557e-05      4.030e-08      1.768e-04      9.164e-03      3.600e-06      1.000e+01      7.961e-04
      47             73          1.553e-05      3.966e-08      1.773e-04      9.045e-03      4.072e-06      1.000e+01      7.961e-04
      48             75          1.549e-05      3.903e-08      1.777e-04      8.936e-03      4.539e-06      1.000e+01      7.961e-04
      49             77          1.545e-05      3.839e-08      1.782e-04      8.832e-03      5.001e-06      1.000e+01      7.961e-04
      50             79          1.541e-05      3.776e-08      1.786e-04      8.723e-03      5.455e-06      1.000e+01      7.961e-04
      51             81          1.538e-05      3.713e-08      1.791e-04      8.612e-03      5.904e-06      1.000e+01      7.961e-04
      52             83          1.534e-05      3.651e-08      1.796e-04      8.502e-03      6.354e-06      1.000e+01      7.961e-04
      53             85          1.531e-05      3.592e-08      1.802e-04      8.396e-03      6.806e-06      1.000e+01      7.961e-04
      54             87          1.527e-05      3.536e-08      1.808e-04      8.298e-03      7.254e-06      1.000e+01      7.961e-04
      55             89          1.524e-05      3.482e-08      1.814e-04      8.186e-03      7.690e-06      1.000e+01      7.961e-04
      56             91          1.520e-05      3.430e-08      1.821e-04      8.072e-03      8.123e-06      1.000e+01      7.961e-04
      57             93          1.517e-05      3.381e-08      1.829e-04      7.932e-03      8.530e-06      1.000e+01      7.961e-04
      58             95          1.513e-05      3.331e-08      1.836e-04      7.797e-03      8.928e-06      1.000e+01      7.961e-04
      59             97          1.510e-05      3.284e-08      1.842e-04      7.668e-03      9.317e-06      1.000e+01      7.961e-04
      60             99          1.507e-05      3.241e-08      1.850e-04      7.525e-03      9.696e-06      1.000e+01      7.961e-04
      61             101         1.504e-05      3.199e-08      1.858e-04      8.042e-03      1.007e-05      1.000e+01      7.961e-04
      62             103         1.500e-05      3.159e-08      1.865e-04      8.669e-03      1.045e-05      1.000e+01      7.961e-04
      63             105         1.497e-05      3.122e-08      1.873e-04      9.381e-03      1.084e-05      1.000e+01      7.961e-04
      64             107         1.494e-05      3.086e-08      1.882e-04      1.017e-02      1.124e-05      1.000e+01      7.961e-04
      65             109         1.491e-05      3.048e-08      1.887e-04      1.105e-02      1.164e-05      1.000e+01      7.961e-04
      66             111         1.488e-05      3.009e-08      1.890e-04      1.197e-02      1.207e-05      1.000e+01      7.961e-04
      67             113         1.485e-05      2.966e-08      1.891e-04      1.289e-02      1.251e-05      1.000e+01      7.961e-04
      68             115         1.482e-05      2.921e-08      1.887e-04      1.379e-02      1.295e-05      1.000e+01      7.961e-04
      69             117         1.479e-05      2.871e-08      1.881e-04      1.464e-02      1.340e-05      1.000e+01      7.961e-04
      70             119         1.477e-05      2.817e-08      1.872e-04      1.540e-02      1.385e-05      1.000e+01      7.961e-04
      71             121         1.474e-05      2.758e-08      1.860e-04      1.606e-02      1.431e-05      1.000e+01      7.961e-04
      72             123         1.471e-05      2.696e-08      1.845e-04      1.657e-02      1.478e-05      1.000e+01      7.961e-04
      73             125         1.469e-05      2.630e-08      1.828e-04      1.690e-02      1.526e-05      1.000e+01      7.961e-04
      74             127         1.466e-05      2.563e-08      1.809e-04      1.701e-02      1.574e-05      1.000e+01      7.961e-04
      75             129         1.464e-05      2.495e-08      1.790e-04      1.694e-02      1.620e-05      1.000e+01      7.961e-04
      76             131         1.461e-05      2.427e-08      1.771e-04      1.662e-02      1.667e-05      1.000e+01      7.961e-04
      77             133         1.459e-05      2.361e-08      1.753e-04      1.606e-02      1.712e-05      1.000e+01      7.961e-04
      78             135         1.456e-05      2.299e-08      1.735e-04      1.523e-02      1.756e-05      1.000e+01      7.961e-04
      79             137         1.454e-05      2.241e-08      1.719e-04      1.468e-02      1.799e-05      1.000e+01      7.961e-04
      80             139         1.452e-05      2.190e-08      1.708e-04      1.558e-02      1.841e-05      1.000e+01      7.961e-04
      81             141         1.450e-05      2.144e-08      1.699e-04      1.649e-02      1.881e-05      1.000e+01      7.961e-04
      82             143         1.448e-05      2.104e-08      1.691e-04      1.739e-02      1.918e-05      1.000e+01      7.961e-04
      83             145         1.446e-05      2.070e-08      1.685e-04      1.826e-02      1.952e-05      1.000e+01      7.961e-04
      84             147         1.444e-05      2.041e-08      1.683e-04      1.908e-02      1.985e-05      1.000e+01      7.961e-04
      85             149         1.442e-05      2.016e-08      1.683e-04      1.980e-02      2.017e-05      1.000e+01      7.961e-04
      86             151         1.440e-05      1.994e-08      1.685e-04      2.039e-02      2.046e-05      1.000e+01      7.961e-04
      87             153         1.438e-05      1.974e-08      1.686e-04      2.085e-02      2.073e-05      1.000e+01      7.961e-04
      88             155         1.436e-05      1.954e-08      1.689e-04      2.111e-02      2.099e-05      1.000e+01      7.961e-04
      89             157         1.434e-05      1.935e-08      1.694e-04      2.114e-02      2.123e-05      1.000e+01      7.961e-04
      90             159         1.432e-05      1.918e-08      1.699e-04      2.099e-02      2.147e-05      1.000e+01      7.961e-04
      91             161         1.430e-05      1.902e-08      1.705e-04      2.064e-02      2.170e-05      1.000e+01      7.961e-04
      92             163         1.428e-05      1.888e-08      1.710e-04      2.014e-02      2.193e-05      1.000e+01      7.961e-04
      93             165         1.426e-05      1.876e-08      1.713e-04      1.953e-02      2.214e-05      1.000e+01      7.961e-04
      94             167         1.424e-05      1.866e-08      1.712e-04      1.884e-02      2.235e-05      1.000e+01      7.961e-04
      95             169         1.422e-05      1.861e-08      1.708e-04      1.810e-02      2.254e-05      1.000e+01      7.961e-04
      96             171         1.421e-05      1.859e-08      1.700e-04      1.735e-02      2.273e-05      1.000e+01      7.961e-04
      97             173         1.419e-05      1.862e-08      1.688e-04      1.663e-02      2.290e-05      1.000e+01      7.961e-04
      98             175         1.417e-05      1.868e-08      1.671e-04      1.597e-02      2.306e-05      1.000e+01      7.961e-04
      99             177         1.415e-05      1.879e-08      1.653e-04      1.537e-02      2.323e-05      1.000e+01      7.961e-04
      100            179         1.413e-05      1.892e-08      1.634e-04      1.486e-02      2.339e-05      1.000e+01      7.961e-04
      101            181         1.411e-05      1.908e-08      1.614e-04      1.442e-02      2.354e-05      1.000e+01      7.961e-04
      102            183         1.409e-05      1.924e-08      1.594e-04      1.403e-02      2.367e-05      1.000e+01      7.961e-04
      103            185         1.407e-05      1.939e-08      1.575e-04      1.367e-02      2.379e-05      1.000e+01      7.961e-04
      104            187         1.405e-05      1.950e-08      1.558e-04      1.333e-02      2.390e-05      1.000e+01      7.961e-04
      105            189         1.403e-05      1.956e-08      1.544e-04      1.299e-02      2.401e-05      1.000e+01      7.961e-04
      106            191         1.401e-05      1.955e-08      1.532e-04      1.263e-02      2.412e-05      1.000e+01      7.961e-04
      107            193         1.400e-05      1.949e-08      1.522e-04      1.223e-02      2.422e-05      1.000e+01      7.961e-04
      108            195         1.398e-05      1.934e-08      1.517e-04      1.178e-02      2.433e-05      1.000e+01      7.961e-04
      109            197         1.396e-05      1.910e-08      1.514e-04      1.127e-02      2.445e-05      1.000e+01      7.961e-04
      110            199         1.394e-05      1.878e-08      1.511e-04      1.070e-02      2.456e-05      1.000e+01      7.961e-04
      111            201         1.392e-05      1.839e-08      1.509e-04      1.008e-02      2.468e-05      1.000e+01      7.961e-04
      112            203         1.390e-05      1.793e-08      1.510e-04      9.380e-03      2.480e-05      1.000e+01      7.961e-04
      113            205         1.388e-05      1.742e-08      1.511e-04      9.108e-03      2.491e-05      1.000e+01      7.961e-04
      114            207         1.387e-05      1.687e-08      1.513e-04      9.679e-03      2.504e-05      1.000e+01      7.961e-04
      115            209         1.385e-05      1.630e-08      1.516e-04      1.025e-02      2.516e-05      1.000e+01      7.961e-04
      116            211         1.384e-05      1.571e-08      1.521e-04      1.080e-02      2.528e-05      1.000e+01      7.961e-04
      117            213         1.382e-05      1.511e-08      1.529e-04      1.135e-02      2.541e-05      1.000e+01      7.961e-04
      118            215         1.381e-05      1.452e-08      1.543e-04      1.182e-02      2.553e-05      1.000e+01      7.961e-04
      119            217         1.379e-05      1.392e-08      1.563e-04      1.220e-02      2.565e-05      1.000e+01      7.961e-04
      120            219         1.378e-05      1.334e-08      1.588e-04      1.250e-02      2.577e-05      1.000e+01      7.961e-04
      121            221         1.377e-05      1.278e-08      1.619e-04      1.270e-02      2.588e-05      1.000e+01      7.961e-04
      122            223         1.375e-05      1.225e-08      1.654e-04      1.277e-02      2.598e-05      1.000e+01      7.961e-04
      123            225         1.374e-05      1.175e-08      1.690e-04      1.308e-02      2.608e-05      1.000e+01      7.961e-04
      124            227         1.373e-05      1.127e-08      1.729e-04      1.470e-02      2.618e-05      1.000e+01      7.961e-04
      125            229         1.372e-05      1.083e-08      1.767e-04      1.648e-02      2.626e-05      1.000e+01      7.961e-04
      126            231         1.371e-05      1.043e-08      1.806e-04      1.835e-02      2.634e-05      1.000e+01      7.961e-04
      127            233         1.370e-05      1.008e-08      1.844e-04      2.014e-02      2.642e-05      1.000e+01      7.961e-04
      128            235         1.369e-05      9.764e-09      1.880e-04      2.186e-02      2.649e-05      1.000e+01      7.961e-04
      129            237         1.368e-05      9.483e-09      1.913e-04      2.338e-02      2.656e-05      1.000e+01      7.961e-04
      130            239         1.367e-05      9.248e-09      1.943e-04      2.486e-02      2.662e-05      1.000e+01      7.961e-04
      131            241         1.366e-05      9.054e-09      1.969e-04      2.620e-02      2.669e-05      1.000e+01      7.961e-04
      132            243         1.365e-05      8.888e-09      1.991e-04      2.742e-02      2.675e-05      1.000e+01      7.961e-04
      133            245         1.364e-05      8.745e-09      2.010e-04      2.849e-02      2.681e-05      1.000e+01      7.961e-04
      134            247         1.364e-05      8.615e-09      2.026e-04      2.941e-02      2.687e-05      1.000e+01      7.961e-04
      135            249         1.363e-05      8.479e-09      2.039e-04      3.004e-02      2.692e-05      1.000e+01      7.961e-04
      136            251         1.362e-05      8.372e-09      2.047e-04      3.050e-02      2.697e-05      1.000e+01      7.961e-04
      137            253         1.361e-05      8.260e-09      2.055e-04      3.085e-02      2.703e-05      1.000e+01      7.961e-04
      138            255         1.360e-05      8.184e-09      2.061e-04      3.108e-02      2.709e-05      1.000e+01      7.961e-04
      139            257         1.359e-05      8.121e-09      2.063e-04      3.117e-02      2.716e-05      1.000e+01      7.961e-04
      140            259         1.359e-05      8.036e-09      2.064e-04      3.122e-02      2.723e-05      1.000e+01      7.961e-04
      141            261         1.358e-05      7.953e-09      2.065e-04      3.120e-02      2.731e-05      1.000e+01      7.961e-04
      142            263         1.357e-05      7.882e-09      2.064e-04      3.108e-02      2.739e-05      1.000e+01      7.961e-04
      143            265         1.356e-05      7.832e-09      2.064e-04      3.091e-02      2.748e-05      1.000e+01      7.961e-04
      144            267         1.355e-05      7.769e-09      2.064e-04      3.076e-02      2.758e-05      1.000e+01      7.961e-04
      145            269         1.355e-05      7.713e-09      2.062e-04      3.053e-02      2.769e-05      1.000e+01      7.961e-04
      146            271         1.354e-05      7.682e-09      2.060e-04      3.015e-02      2.779e-05      1.000e+01      7.961e-04
      147            273         1.353e-05      7.612e-09      2.058e-04      2.974e-02      2.791e-05      1.000e+01      7.961e-04
      148            275         1.352e-05      7.540e-09      2.056e-04      2.944e-02      2.804e-05      1.000e+01      7.961e-04
      149            277         1.352e-05      7.480e-09      2.054e-04      2.909e-02      2.818e-05      1.000e+01      7.961e-04
      150            279         1.351e-05      7.422e-09      2.051e-04      2.869e-02      2.831e-05      1.000e+01      7.961e-04
      151            281         1.350e-05      7.358e-09      2.049e-04      2.825e-02      2.844e-05      1.000e+01      7.961e-04
      152            283         1.349e-05      7.293e-09      2.048e-04      2.776e-02      2.857e-05      1.000e+01      7.961e-04
      153            285         1.349e-05      7.223e-09      2.047e-04      2.728e-02      2.870e-05      1.000e+01      7.961e-04
      154            287         1.348e-05      7.150e-09      2.047e-04      2.679e-02      2.883e-05      1.000e+01      7.961e-04
      155            289         1.347e-05      7.076e-09      2.048e-04      2.630e-02      2.896e-05      1.000e+01      7.961e-04
      156            291         1.347e-05      7.000e-09      2.050e-04      2.586e-02      2.909e-05      1.000e+01      7.961e-04
      157            293         1.346e-05      6.913e-09      2.053e-04      2.543e-02      2.923e-05      1.000e+01      7.961e-04
      158            295         1.345e-05      6.809e-09      2.056e-04      2.502e-02      2.937e-05      1.000e+01      7.961e-04
      159            297         1.345e-05      6.665e-09      2.055e-04      2.489e-02      2.951e-05      1.000e+01      7.961e-04
      160            299         1.344e-05      6.518e-09      2.050e-04      2.511e-02      2.964e-05      1.000e+01      7.961e-04
      161            301         1.343e-05      6.366e-09      2.048e-04      2.527e-02      2.976e-05      1.000e+01      7.961e-04
      162            303         1.343e-05      6.186e-09      2.045e-04      2.538e-02      2.988e-05      1.000e+01      7.961e-04
      163            305         1.342e-05      6.013e-09      2.043e-04      2.555e-02      2.999e-05      1.000e+01      7.961e-04
      164            307         1.341e-05      5.861e-09      2.050e-04      2.541e-02      3.009e-05      1.000e+01      7.961e-04
      165            309         1.341e-05      5.670e-09      2.054e-04      2.560e-02      3.017e-05      1.000e+01      7.961e-04
      166            311         1.340e-05      5.477e-09      2.055e-04      2.603e-02      3.024e-05      1.000e+01      7.961e-04
      167            313         1.340e-05      5.252e-09      2.053e-04      2.671e-02      3.031e-05      1.000e+01      7.961e-04
      168            315         1.339e-05      5.009e-09      2.043e-04      2.768e-02      3.037e-05      1.000e+01      7.961e-04
      169            317         1.339e-05      4.769e-09      2.034e-04      2.866e-02      3.042e-05      1.000e+01      7.961e-04
      170            319         1.338e-05      4.538e-09      2.030e-04      2.973e-02      3.047e-05      1.000e+01      7.961e-04
      171            321         1.338e-05      4.329e-09      2.028e-04      3.070e-02      3.053e-05      1.000e+01      7.961e-04
      172            323         1.338e-05      4.146e-09      2.027e-04      3.140e-02      3.058e-05      1.000e+01      7.961e-04
      173            325         1.337e-05      3.961e-09      2.023e-04      3.198e-02      3.064e-05      1.000e+01      7.961e-04
      174            327         1.337e-05      3.822e-09      2.022e-04      3.248e-02      3.068e-05      1.000e+01      7.961e-04
      175            329         1.336e-05      3.687e-09      2.023e-04      3.282e-02      3.073e-05      1.000e+01      7.961e-04
      176            330         1.336e-05      3.559e-09      2.020e-04      3.295e-02      3.077e-05      1.000e+01      7.961e-04
      177            331         1.336e-05      3.440e-09      2.018e-04      3.311e-02      3.079e-05      1.000e+01      7.961e-04
      178            332         1.335e-05      3.341e-09      2.015e-04      3.329e-02      3.079e-05      1.000e+01      7.961e-04
      179            333         1.335e-05      3.291e-09      2.016e-04      3.357e-02      3.079e-05      1.000e+01      7.961e-04
      180            334         1.335e-05      3.232e-09      2.022e-04      3.376e-02      3.080e-05      1.000e+01      7.961e-04
      181            335         1.334e-05      3.111e-09      2.025e-04      3.401e-02      3.082e-05      1.000e+01      7.961e-04
      182            336         1.334e-05      3.019e-09      2.026e-04      3.436e-02      3.083e-05      1.000e+01      7.961e-04
      183            337         1.334e-05      2.934e-09      2.025e-04      3.481e-02      3.083e-05      1.000e+01      7.961e-04
      184            338         1.333e-05      2.866e-09      2.023e-04      3.526e-02      3.083e-05      1.000e+01      7.961e-04
      185            339         1.333e-05      2.776e-09      2.022e-04      3.588e-02      3.084e-05      1.000e+01      7.961e-04
      186            340         1.333e-05      2.714e-09      2.020e-04      3.647e-02      3.085e-05      1.000e+01      7.961e-04
      187            341         1.333e-05      2.684e-09      2.018e-04      3.688e-02      3.087e-05      1.000e+01      7.961e-04
      188            342         1.332e-05      2.634e-09      2.018e-04      3.737e-02      3.087e-05      1.000e+01      7.961e-04
      189            343         1.332e-05      2.564e-09      2.020e-04      3.795e-02      3.087e-05      1.000e+01      7.961e-04
      190            344         1.332e-05      2.528e-09      2.021e-04      3.848e-02      3.088e-05      1.000e+01      7.961e-04
      191            345         1.332e-05      2.540e-09      2.024e-04      3.888e-02      3.089e-05      1.000e+01      7.961e-04
      192            346         1.331e-05      2.527e-09      2.026e-04      3.920e-02      3.090e-05      1.000e+01      7.961e-04
      193            347         1.331e-05      2.527e-09      2.028e-04      3.942e-02      3.091e-05      1.000e+01      7.961e-04
      194            348         1.331e-05      2.560e-09      2.026e-04      3.936e-02      3.094e-05      1.000e+01      7.961e-04
      195            349         1.331e-05      2.510e-09      2.027e-04      3.945e-02      3.096e-05      1.000e+01      7.961e-04
      196            350         1.330e-05      2.492e-09      2.030e-04      3.950e-02      3.098e-05      1.000e+01      7.961e-04
      197            351         1.330e-05      2.539e-09      2.026e-04      3.912e-02      3.100e-05      1.000e+01      7.961e-04
      198            352         1.330e-05      2.510e-09      2.023e-04      3.878e-02      3.102e-05      1.000e+01      7.961e-04
      199            353         1.330e-05      2.499e-09      2.023e-04      3.859e-02      3.104e-05      1.000e+01      7.961e-04
      200            354         1.329e-05      2.524e-09      2.024e-04      3.843e-02      3.105e-05      1.000e+01      7.961e-04
      201            355         1.329e-05      2.551e-09      2.024e-04      3.829e-02      3.107e-05      1.000e+01      7.961e-04
      202            356         1.329e-05      2.564e-09      2.027e-04      3.823e-02      3.109e-05      1.000e+01      7.961e-04
      203            357         1.329e-05      2.619e-09      2.028e-04      3.799e-02      3.111e-05      1.000e+01      7.961e-04
      204            358         1.328e-05      2.640e-09      2.029e-04      3.781e-02      3.113e-05      1.000e+01      7.961e-04
      205            359         1.328e-05      2.681e-09      2.027e-04      3.753e-02      3.115e-05      1.000e+01      7.961e-04
      206            360         1.328e-05      2.730e-09      2.023e-04      3.709e-02      3.116e-05      1.000e+01      7.961e-04
      207            361         1.328e-05      2.746e-09      2.024e-04      3.697e-02      3.118e-05      1.000e+01      7.961e-04
      208            362         1.327e-05      2.805e-09      2.020e-04      3.665e-02      3.121e-05      1.000e+01      7.961e-04
      209            363         1.327e-05      2.794e-09      2.017e-04      3.642e-02      3.123e-05      1.000e+01      7.961e-04
      210            364         1.327e-05      2.775e-09      2.017e-04      3.639e-02      3.126e-05      1.000e+01      7.961e-04
      211            365         1.326e-05      2.806e-09      2.015e-04      3.625e-02      3.129e-05      1.000e+01      7.961e-04
      212            366         1.326e-05      2.787e-09      2.017e-04      3.624e-02      3.131e-05      1.000e+01      7.961e-04
      213            367         1.326e-05      2.780e-09      2.017e-04      3.630e-02      3.134e-05      1.000e+01      7.961e-04
      214            368         1.326e-05      2.784e-09      2.015e-04      3.627e-02      3.136e-05      1.000e+01      7.961e-04
      215            369         1.325e-05      2.740e-09      2.016e-04      3.661e-02      3.135e-05      1.000e+01      7.961e-04
      216            370         1.325e-05      2.767e-09      2.019e-04      3.682e-02      3.134e-05      1.000e+01      7.961e-04
      217            371         1.325e-05      2.810e-09      2.014e-04      3.661e-02      3.134e-05      1.000e+01      7.961e-04
      218            372         1.324e-05      2.774e-09      2.007e-04      3.627e-02      3.134e-05      1.000e+01      7.961e-04
      219            373         1.324e-05      2.744e-09      2.001e-04      3.595e-02      3.135e-05      1.000e+01      7.961e-04
      220            374         1.324e-05      2.712e-09      1.995e-04      3.575e-02      3.136e-05      1.000e+01      7.961e-04
      221            375         1.324e-05      2.637e-09      1.996e-04      3.613e-02      3.136e-05      1.000e+01      7.961e-04
      222            376         1.323e-05      2.613e-09      1.997e-04      3.665e-02      3.138e-05      1.000e+01      7.961e-04
      223            377         1.323e-05      2.601e-09      2.000e-04      3.730e-02      3.138e-05      1.000e+01      7.961e-04
      224            378         1.323e-05      2.596e-09      2.006e-04      3.802e-02      3.138e-05      1.000e+01      7.961e-04
      225            379         1.323e-05      2.678e-09      2.007e-04      3.848e-02      3.137e-05      1.000e+01      7.961e-04
      226            380         1.322e-05      2.763e-09      2.004e-04      3.870e-02      3.134e-05      1.000e+01      7.961e-04
      227            381         1.322e-05      2.800e-09      1.998e-04      3.874e-02      3.131e-05      1.000e+01      7.961e-04
      228            382         1.322e-05      2.850e-09      1.994e-04      3.880e-02      3.128e-05      1.000e+01      7.961e-04
      229            383         1.321e-05      2.949e-09      1.991e-04      3.891e-02      3.124e-05      1.000e+01      7.961e-04
      230            384         1.321e-05      3.145e-09      1.984e-04      3.882e-02      3.120e-05      1.000e+01      7.961e-04
      231            385         1.321e-05      3.428e-09      1.968e-04      3.821e-02      3.114e-05      1.000e+01      7.961e-04
      232            386         1.320e-05      3.782e-09      1.945e-04      3.709e-02      3.107e-05      1.000e+01      7.961e-04
      233            387         1.320e-05      4.250e-09      1.913e-04      3.526e-02      3.098e-05      1.000e+01      7.961e-04
      234            389         1.320e-05      4.961e-09      1.865e-04      3.238e-02      3.088e-05      1.000e+01      7.961e-04
      235            391         1.319e-05      5.837e-09      1.796e-04      2.987e-02      3.075e-05      1.000e+01      7.961e-04
      236            393         1.318e-05      6.843e-09      1.703e-04      2.703e-02      3.062e-05      1.000e+01      7.961e-04
      237            395         1.317e-05      7.805e-09      1.610e-04      2.780e-02      3.048e-05      1.000e+01      7.961e-04
      238            397         1.317e-05      8.604e-09      1.532e-04      2.802e-02      3.035e-05      1.000e+01      7.961e-04
      239            399         1.316e-05      9.007e-09      1.481e-04      2.666e-02      3.022e-05      1.000e+01      7.961e-04
      240            401         1.315e-05      8.845e-09      1.471e-04      2.393e-02      3.010e-05      1.000e+01      7.961e-04
      241            403         1.314e-05      8.148e-09      1.486e-04      2.015e-02      3.001e-05      1.000e+01      7.961e-04
      242            405         1.313e-05      7.109e-09      1.520e-04      1.584e-02      2.994e-05      1.000e+01      7.961e-04
      243            407         1.313e-05      5.958e-09      1.573e-04      1.166e-02      2.990e-05      1.000e+01      7.961e-04
      244            409         1.312e-05      4.819e-09      1.660e-04      9.503e-03      2.988e-05      1.000e+01      7.961e-04
      245            411         1.312e-05      3.733e-09      1.795e-04      1.160e-02      2.987e-05      1.000e+01      7.961e-04
      246            413         1.312e-05      2.743e-09      1.972e-04      1.422e-02      2.986e-05      1.000e+01      7.961e-04
      247            415         1.311e-05      1.836e-09      2.263e-04      1.842e-02      2.988e-05      1.000e+01      7.961e-04
      248            416         1.311e-05      1.392e-09      2.602e-04      2.275e-02      2.992e-05      1.000e+01      7.961e-04
      249            417         1.311e-05      2.770e-09      6.804e-05      1.975e-03      2.990e-05      1.000e+01      7.961e-04
      250            419         1.311e-05      4.485e-10      7.019e-05      2.117e-03      2.990e-05      1.000e+01      7.961e-04
      251            421         1.311e-05      4.262e-10      7.202e-05      2.189e-03      2.990e-05      1.000e+01      7.961e-04
      252            423         1.311e-05      4.126e-10      7.338e-05      2.250e-03      2.991e-05      1.000e+01      7.961e-04
      253            425         1.311e-05      4.019e-10      7.448e-05      2.314e-03      2.991e-05      1.000e+01      7.961e-04
      254            427         1.311e-05      3.900e-10      7.560e-05      2.376e-03      2.992e-05      1.000e+01      7.961e-04
      255            429         1.311e-05      3.832e-10      7.643e-05      2.435e-03      2.993e-05      1.000e+01      7.961e-04
      256            431         1.311e-05      3.790e-10      7.703e-05      2.490e-03      2.995e-05      1.000e+01      7.961e-04
      257            433         1.311e-05      3.778e-10      7.750e-05      2.537e-03      2.997e-05      1.000e+01      7.961e-04
      258            435         1.311e-05      3.775e-10      7.802e-05      2.584e-03      2.999e-05      1.000e+01      7.961e-04
      259            437         1.311e-05      3.763e-10      7.840e-05      2.599e-03      3.001e-05      1.000e+01      7.961e-04
      260            439         1.311e-05      3.757e-10      7.851e-05      2.630e-03      3.003e-05      1.000e+01      7.961e-04
      261            441         1.310e-05      3.764e-10      7.841e-05      2.646e-03      3.004e-05      1.000e+01      7.961e-04
      262            443         1.310e-05      3.768e-10      7.814e-05      2.643e-03      3.005e-05      1.000e+01      7.961e-04
      263            445         1.310e-05      3.749e-10      7.792e-05      2.637e-03      3.006e-05      1.000e+01      7.961e-04
      264            447         1.310e-05      3.739e-10      7.758e-05      2.629e-03      3.007e-05      1.000e+01      7.961e-04
      265            449         1.310e-05      3.740e-10      7.743e-05      2.621e-03      3.008e-05      1.000e+01      7.961e-04
      266            451         1.310e-05      3.764e-10      7.754e-05      2.626e-03      3.008e-05      1.000e+01      7.961e-04
      267            453         1.310e-05      3.774e-10      7.769e-05      2.634e-03      3.008e-05      1.000e+01      7.961e-04
      268            455         1.310e-05      3.722e-10      7.771e-05      2.662e-03      3.009e-05      1.000e+01      7.961e-04
      269            457         1.310e-05      3.717e-10      7.781e-05      2.691e-03      3.010e-05      1.000e+01      7.961e-04
      270            459         1.310e-05      3.735e-10      7.805e-05      2.723e-03      3.011e-05      1.000e+01      7.961e-04
      271            461         1.310e-05      3.780e-10      7.844e-05      2.778e-03      3.012e-05      1.000e+01      7.961e-04
      272            463         1.310e-05      3.844e-10      7.893e-05      2.829e-03      3.013e-05      1.000e+01      7.961e-04
      273            465         1.310e-05      3.922e-10      7.934e-05      2.881e-03      3.015e-05      1.000e+01      7.961e-04
      274            467         1.310e-05      3.989e-10      7.963e-05      2.932e-03      3.018e-05      1.000e+01      7.961e-04
      275            469         1.310e-05      4.078e-10      8.002e-05      2.980e-03      3.021e-05      1.000e+01      7.961e-04
      276            471         1.310e-05      4.191e-10      8.030e-05      3.032e-03      3.024e-05      1.000e+01      7.961e-04
      277            473         1.310e-05      4.321e-10      8.052e-05      3.083e-03      3.027e-05      1.000e+01      7.961e-04
      278            475         1.310e-05      4.461e-10      8.081e-05      3.112e-03      3.030e-05      1.000e+01      7.961e-04
      279            477         1.310e-05      4.625e-10      8.109e-05      3.126e-03      3.033e-05      1.000e+01      7.961e-04
      280            479         1.310e-05      4.780e-10      8.137e-05      3.152e-03      3.035e-05      1.000e+01      7.961e-04
      281            481         1.310e-05      4.955e-10      8.166e-05      3.185e-03      3.038e-05      1.000e+01      7.961e-04
      282            483         1.310e-05      5.243e-10      8.227e-05      3.184e-03      3.042e-05      1.000e+01      7.961e-04
      283            485         1.310e-05      5.592e-10      8.280e-05      3.187e-03      3.045e-05      1.000e+01      7.961e-04
      284            487         1.310e-05      5.955e-10      8.316e-05      3.197e-03      3.049e-05      1.000e+01      7.961e-04
      285            489         1.309e-05      6.325e-10      8.349e-05      3.200e-03      3.053e-05      1.000e+01      7.961e-04
      286            491         1.309e-05      6.701e-10      8.372e-05      3.197e-03      3.057e-05      1.000e+01      7.961e-04
      287            493         1.309e-05      7.061e-10      8.389e-05      3.188e-03      3.062e-05      1.000e+01      7.961e-04
      288            495         1.309e-05      7.415e-10      8.403e-05      3.178e-03      3.067e-05      1.000e+01      7.961e-04
      289            497         1.309e-05      7.753e-10      8.400e-05      3.175e-03      3.071e-05      1.000e+01      7.961e-04
      290            499         1.309e-05      8.063e-10      8.392e-05      3.161e-03      3.074e-05      1.000e+01      7.961e-04
      291            501         1.309e-05      8.279e-10      8.382e-05      3.145e-03      3.078e-05      1.000e+01      7.961e-04
      292            503         1.309e-05      8.478e-10      8.368e-05      3.133e-03      3.082e-05      1.000e+01      7.961e-04
      293            505         1.309e-05      8.692e-10      8.356e-05      3.119e-03      3.086e-05      1.000e+01      7.961e-04
      294            507         1.309e-05      8.907e-10      8.347e-05      3.102e-03      3.090e-05      1.000e+01      7.961e-04
      295            509         1.309e-05      9.103e-10      8.341e-05      3.084e-03      3.094e-05      1.000e+01      7.961e-04
      296            511         1.309e-05      9.226e-10      8.330e-05      3.074e-03      3.098e-05      1.000e+01      7.961e-04
      297            513         1.308e-05      9.385e-10      8.321e-05      3.060e-03      3.103e-05      1.000e+01      7.961e-04
      298            515         1.308e-05      9.518e-10      8.317e-05      3.041e-03      3.108e-05      1.000e+01      7.961e-04
      299            517         1.308e-05      9.665e-10      8.314e-05      3.019e-03      3.113e-05      1.000e+01      7.961e-04
      300            519         1.308e-05      9.814e-10      8.310e-05      2.997e-03      3.118e-05      1.000e+01      7.961e-04
      301            521         1.308e-05      9.945e-10      8.307e-05      2.975e-03      3.123e-05      1.000e+01      7.961e-04
      302            523         1.308e-05      1.009e-09      8.297e-05      2.957e-03      3.126e-05      1.000e+01      7.961e-04
      303            525         1.308e-05      1.015e-09      8.289e-05      2.930e-03      3.129e-05      1.000e+01      7.961e-04
      304            527         1.308e-05      1.027e-09      8.284e-05      2.894e-03      3.133e-05      1.000e+01      7.961e-04
      305            529         1.308e-05      1.034e-09      8.288e-05      2.847e-03      3.138e-05      1.000e+01      7.961e-04
      306            531         1.308e-05      1.037e-09      8.267e-05      2.832e-03      3.142e-05      1.000e+01      7.961e-04
      307            533         1.307e-05      1.047e-09      8.256e-05      2.809e-03      3.145e-05      1.000e+01      7.961e-04
      308            534         1.307e-05     -2.436e-11      3.256e-04      4.065e-02      3.161e-05      1.000e+01      7.961e-04
      309            535         1.307e-05      5.311e-09      8.337e-05      2.620e-03      3.150e-05      1.000e+01      7.961e-04
      310            536         1.307e-05      2.343e-10      3.263e-04      3.779e-02      3.163e-05      1.000e+01      7.961e-04
      311            537         1.306e-05      5.034e-09      8.342e-05      2.411e-03      3.151e-05      1.000e+01      7.961e-04
      312            538         1.306e-05      2.689e-10      3.246e-04      3.436e-02      3.164e-05      1.000e+01      7.961e-04
      313            539         1.306e-05      4.808e-09      8.302e-05      2.163e-03      3.152e-05      1.000e+01      7.961e-04
      314            540         1.306e-05      1.828e-10      3.213e-04      3.043e-02      3.165e-05      1.000e+01      7.961e-04
      315            541         1.305e-05      4.619e-09      8.256e-05      1.859e-03      3.151e-05      1.000e+01      7.961e-04
      316            543         1.305e-05      9.176e-10      8.181e-05      1.801e-03      3.150e-05      1.000e+01      7.961e-04
      317            545         1.305e-05      8.967e-10      8.128e-05      1.735e-03      3.150e-05      1.000e+01      7.961e-04
      318            547         1.305e-05      8.781e-10      8.081e-05      1.777e-03      3.149e-05      1.000e+01      7.961e-04
      319            549         1.305e-05      8.598e-10      8.043e-05      1.809e-03      3.148e-05      1.000e+01      7.961e-04
      320            551         1.305e-05      8.416e-10      8.018e-05      1.831e-03      3.148e-05      1.000e+01      7.961e-04
      321            553         1.305e-05      8.252e-10      7.995e-05      1.848e-03      3.148e-05      1.000e+01      7.961e-04
      322            555         1.305e-05      8.101e-10      7.976e-05      1.862e-03      3.147e-05      1.000e+01      7.961e-04
      323            557         1.305e-05      7.942e-10      7.959e-05      1.871e-03      3.147e-05      1.000e+01      7.961e-04
      324            559         1.305e-05      7.779e-10      7.940e-05      1.876e-03      3.146e-05      1.000e+01      7.961e-04
      325            561         1.305e-05      7.632e-10      7.923e-05      1.882e-03      3.146e-05      1.000e+01      7.961e-04
      326            563         1.305e-05      7.430e-10      7.921e-05      1.891e-03      3.147e-05      1.000e+01      7.961e-04
      327            565         1.304e-05      7.295e-10      7.917e-05      1.896e-03      3.148e-05      1.000e+01      7.961e-04
      328            567         1.304e-05      7.217e-10      7.918e-05      1.877e-03      3.149e-05      1.000e+01      7.961e-04
      329            569         1.304e-05      7.046e-10      7.905e-05      1.854e-03      3.150e-05      1.000e+01      7.961e-04
      330            571         1.304e-05      6.812e-10      7.873e-05      1.837e-03      3.152e-05      1.000e+01      7.961e-04
      331            573         1.304e-05      6.624e-10      7.830e-05      1.816e-03      3.154e-05      1.000e+01      7.961e-04
      332            575         1.304e-05      6.447e-10      7.794e-05      1.796e-03      3.156e-05      1.000e+01      7.961e-04
      333            577         1.304e-05      6.294e-10      7.758e-05      1.771e-03      3.158e-05      1.000e+01      7.961e-04
      334            579         1.304e-05      6.110e-10      7.725e-05      1.738e-03      3.162e-05      1.000e+01      7.961e-04
      335            581         1.304e-05      5.988e-10      7.689e-05      1.709e-03      3.165e-05      1.000e+01      7.961e-04
      336            583         1.304e-05      5.899e-10      7.658e-05      1.682e-03      3.168e-05      1.000e+01      7.961e-04
      337            585         1.304e-05      5.748e-10      7.625e-05      1.656e-03      3.171e-05      1.000e+01      7.961e-04
      338            587         1.304e-05      5.586e-10      7.578e-05      1.622e-03      3.174e-05      1.000e+01      7.961e-04
      339            589         1.304e-05      5.406e-10      7.519e-05      1.582e-03      3.177e-05      1.000e+01      7.961e-04
      340            591         1.304e-05      5.235e-10      7.450e-05      1.534e-03      3.181e-05      1.000e+01      7.961e-04
      341            593         1.304e-05      5.052e-10      7.378e-05      1.486e-03      3.184e-05      1.000e+01      7.961e-04
      342            595         1.304e-05      4.819e-10      7.286e-05      1.437e-03      3.188e-05      1.000e+01      7.961e-04
      343            597         1.303e-05      4.624e-10      7.193e-05      1.383e-03      3.192e-05      1.000e+01      7.961e-04
      344            599         1.303e-05      4.430e-10      7.099e-05      1.325e-03      3.197e-05      1.000e+01      7.961e-04
      345            601         1.303e-05      4.216e-10      6.984e-05      1.263e-03      3.201e-05      1.000e+01      7.961e-04
      346            603         1.303e-05      4.000e-10      6.859e-05      1.202e-03      3.205e-05      1.000e+01      7.961e-04
      347            605         1.303e-05      3.805e-10      6.736e-05      1.142e-03      3.208e-05      1.000e+01      7.961e-04
      348            607         1.303e-05      3.612e-10      6.622e-05      1.084e-03      3.212e-05      1.000e+01      7.961e-04
      349            609         1.303e-05      3.418e-10      6.505e-05      1.025e-03      3.216e-05      1.000e+01      7.961e-04
      350            611         1.303e-05      3.236e-10      6.387e-05      9.643e-04      3.219e-05      1.000e+01      4.742e-04
      351            612         1.302e-05      1.412e-08      2.486e-04      1.336e-02      3.029e-07      1.000e+01      4.742e-04
      352            613         1.302e-05      1.538e-09      2.197e-04      1.188e-02      2.563e-07      1.000e+01      4.742e-04
      353            614         1.302e-05      8.966e-10      2.075e-04      1.268e-02      3.157e-07      1.000e+01      4.742e-04
      354            615         1.301e-05      1.627e-09      5.203e-05      8.506e-04      2.878e-07      1.000e+01      4.742e-04
      355            617         1.301e-05      1.648e-10      5.118e-05      9.522e-04      3.032e-07      1.000e+01      4.742e-04
      356            619         1.301e-05      1.581e-10      5.106e-05      1.023e-03      3.205e-07      1.000e+01      4.742e-04
      357            621         1.301e-05      1.532e-10      5.126e-05      1.074e-03      3.387e-07      1.000e+01      4.742e-04
      358            623         1.301e-05      1.497e-10      5.138e-05      1.130e-03      3.560e-07      1.000e+01      4.742e-04
      359            625         1.301e-05      1.464e-10      5.146e-05      1.188e-03      3.726e-07      1.000e+01      4.742e-04
      360            627         1.301e-05      1.440e-10      5.165e-05      1.239e-03      3.892e-07      1.000e+01      4.742e-04
      361            629         1.301e-05      1.416e-10      5.208e-05      1.273e-03      4.070e-07      1.000e+01      4.742e-04
      362            631         1.301e-05      1.400e-10      5.242e-05      1.309e-03      4.248e-07      1.000e+01      4.742e-04
      363            633         1.301e-05      1.393e-10      5.272e-05      1.347e-03      4.424e-07      1.000e+01      4.742e-04
      364            635         1.301e-05      1.388e-10      5.318e-05      1.388e-03      4.612e-07      1.000e+01      4.742e-04
      365            637         1.301e-05      1.387e-10      5.364e-05      1.423e-03      4.789e-07      1.000e+01      4.742e-04
      366            639         1.301e-05      1.389e-10      5.326e-05      1.504e-03      4.916e-07      1.000e+01      4.742e-04
      367            641         1.301e-05      1.370e-10      5.290e-05      1.579e-03      5.028e-07      1.000e+01      4.742e-04
      368            643         1.301e-05      1.360e-10      5.278e-05      1.634e-03      5.112e-07      1.000e+01      4.742e-04
      369            645         1.301e-05      1.342e-10      5.272e-05      1.684e-03      5.191e-07      1.000e+01      4.742e-04
      370            647         1.301e-05      1.324e-10      5.274e-05      1.725e-03      5.268e-07      1.000e+01      4.742e-04
      371            649         1.301e-05      1.308e-10      5.279e-05      1.762e-03      5.346e-07      1.000e+01      4.742e-04
      372            651         1.301e-05      1.297e-10      5.291e-05      1.792e-03      5.419e-07      1.000e+01      4.742e-04
Optimization terminated successfully.
`ftol` condition satisfied.
         Current function value: 1.301e-05
         Constraint violation: 5.419e-07
         Total delta_x: 9.170e-02
         Iterations: 372
         Function evaluations: 651
         Jacobian evaluations: 375
Timer: Solution time = 5.35 min
Timer: Avg time per step = 861 ms
==============================================================================================================
                                                                 Start  -->   End
Total (sum of squares):                                      6.632e+01  -->   1.301e-05,
Maximum absolute QFM surface normal field error:             3.970e-02  -->   5.303e-05 (T m^2)
Minimum absolute QFM surface normal field error:             9.255e-18  -->   1.114e-17 (T m^2)
Average absolute QFM surface normal field error:             1.676e-02  -->   4.209e-06 (T m^2)
Maximum absolute QFM surface normal field error:             5.672e-01  -->   7.576e-04 (normalized)
Minimum absolute QFM surface normal field error:             1.322e-16  -->   1.591e-16 (normalized)
Average absolute QFM surface normal field error:             2.394e-01  -->   6.013e-05 (normalized)
Maximum Toroidal Flux:                                      -2.117e-02  -->  -3.500e-02 (Wb)
Minimum Toroidal Flux:                                      -2.117e-02  -->  -3.500e-02 (Wb)
Average Toroidal Flux:                                      -2.117e-02  -->  -3.500e-02 (Wb)
Maximum Toroidal Flux:                                      -2.117e-02  -->  -3.500e-02 (normalized)
Minimum Toroidal Flux:                                      -2.117e-02  -->  -3.500e-02 (normalized)
Average Toroidal Flux:                                      -2.117e-02  -->  -3.500e-02 (normalized)
==============================================================================================================

We can see that after the optimization, the normal field error is quite small

[7]:
plot_2d(qfm_surf, "B*n", field=field, cmap="viridis", log=True);
../../_images/notebooks_tutorials_QFM_surface_12_0.png

We also see that the optimized surface is now a good approximation of a flux surface in this vacuum field

[6]:
data = qfm_surf.compute(["R", "Z"], grid=LinearGrid(rho=1.0, theta=0, zeta=0))
fig, ax = plot_surfaces(qfm_surf, rho=1.0, theta=0)
poincare_plot(
    field, R0=np.append(data["R"], np.linspace(0.7, 0.8, 9)), Z0=np.zeros(10), ax=ax
);
../../_images/notebooks_tutorials_QFM_surface_14_0.png

We can use this QFM surface as the surface for a fixed-boundary DESC equilibrium solve, to find the equilibrium field which matches the vacuum field inside this surface. (Alternatively, one could also perform a free-boundary solve, though we know the surface should not change much from this QFM surface)

[7]:
from desc.equilibrium import Equilibrium

eq = Equilibrium(surface=qfm_surf, Psi=-0.035, L=8, M=6, N=6)
eq.solve(verbose=3, ftol=1e-8);
Building objective: force
Precomputing transforms
Timer: Precomputing transforms = 432 ms
Timer: Objective build = 696 ms
Building objective: lcfs R
Building objective: lcfs Z
Building objective: fixed Psi
Building objective: fixed pressure
Building objective: fixed current
Building objective: fixed sheet current
Building objective: self_consistency R
Building objective: self_consistency Z
Building objective: lambda gauge
Building objective: axis R self consistency
Building objective: axis Z self consistency
Timer: Objective build = 517 ms
Timer: Linear constraint projection build = 2.88 sec
Number of parameters: 628
Number of objectives: 3250
Timer: Initializing the optimization = 4.12 sec

Starting optimization
Using method: lsq-exact
   Iteration     Total nfev        Cost      Cost reduction    Step norm     Optimality
       0              1          3.077e-01                                    1.318e+02
       1              2          1.532e-02      2.924e-01      3.456e-01      1.998e+01
       2              3          2.502e-04      1.507e-02      8.742e-02      2.972e+00
       3              4          1.785e-05      2.324e-04      4.781e-02      1.069e+00
       4              6          1.077e-06      1.677e-05      2.240e-02      1.615e-01
       5              8          1.693e-07      9.082e-07      1.696e-02      1.260e-01
       6             10          8.032e-08      8.894e-08      8.395e-03      4.990e-02
       7             12          7.171e-08      8.603e-09      4.109e-03      1.261e-02
       8             14          7.046e-08      1.251e-09      2.091e-03      2.995e-03
       9             15          6.913e-08      1.335e-09      4.134e-03      9.426e-03
      10             16          6.902e-08      1.079e-10      7.997e-03      2.686e-02
      11             17          6.534e-08      3.681e-09      1.926e-03      1.536e-03
      12             18          6.421e-08      1.132e-09      3.788e-03      4.386e-03
      13             19          6.340e-08      8.082e-10      7.313e-03      1.146e-02
      14             20          6.113e-08      2.267e-09      7.081e-03      7.488e-03
      15             21          5.921e-08      1.917e-09      6.946e-03      5.354e-03
      16             22          5.753e-08      1.683e-09      6.875e-03      4.841e-03
      17             23          5.604e-08      1.492e-09      6.854e-03      5.263e-03
      18             24          5.472e-08      1.323e-09      6.878e-03      6.351e-03
      19             25          5.355e-08      1.167e-09      6.924e-03      7.539e-03
      20             26          5.253e-08      1.022e-09      6.953e-03      8.220e-03
      21             27          5.163e-08      8.997e-10      6.947e-03      7.957e-03
      22             28          5.082e-08      8.046e-10      6.948e-03      6.748e-03
      23             29          5.012e-08      7.085e-10      7.009e-03      4.981e-03
      24             30          4.952e-08      5.909e-10      7.125e-03      3.173e-03
      25             31          4.906e-08      4.650e-10      7.249e-03      1.706e-03
      26             33          4.878e-08      2.789e-10      3.656e-03      2.598e-04
      27             34          4.856e-08      2.176e-10      7.385e-03      5.874e-04
      28             36          4.839e-08      1.736e-10      3.715e-03      1.522e-04
      29             37          4.822e-08      1.659e-10      7.458e-03      8.609e-04
      30             39          4.809e-08      1.381e-10      3.740e-03      2.143e-04
      31             40          4.798e-08      1.014e-10      7.495e-03      1.038e-03
      32             41          4.786e-08      1.218e-10      7.474e-03      1.086e-03
      33             42          4.779e-08      7.661e-11      7.516e-03      1.135e-03
      34             43          4.774e-08      4.621e-11      7.517e-03      1.182e-03
      35             44          4.769e-08      4.505e-11      6.471e-03      8.956e-04
      36             45          4.764e-08      5.289e-11      6.638e-04      5.596e-05
      37             46          4.764e-08      6.661e-13      8.618e-04      1.944e-05
      38             47          4.764e-08      2.355e-13      1.423e-04      7.326e-06
      39             48          4.764e-08      6.031e-14      2.527e-04      2.656e-06
      40             49          4.764e-08      1.945e-14      3.577e-05      1.134e-06
      41             50          4.764e-08      6.202e-15      8.630e-05      4.266e-07
      42             51          4.764e-08      2.045e-15      1.261e-05      2.039e-07
      43             52          4.764e-08      6.851e-16      3.179e-05      8.505e-08
      44             53          4.764e-08      2.363e-16      6.586e-06      4.203e-08
Optimization terminated successfully.
`ftol` condition satisfied.
         Current function value: 4.764e-08
         Total delta_x: 4.081e-01
         Iterations: 44
         Function evaluations: 53
         Jacobian evaluations: 45
Timer: Solution time = 34.1 sec
Timer: Avg time per step = 759 ms
==============================================================================================================
                                                                 Start  -->   End
Total (sum of squares):                                      3.077e-01  -->   4.764e-08,
Maximum absolute Force error:                                7.821e+04  -->   5.930e+01 (N)
Minimum absolute Force error:                                1.817e+00  -->   8.899e-05 (N)
Average absolute Force error:                                4.273e+03  -->   1.593e+00 (N)
Maximum absolute Force error:                                1.823e-01  -->   1.383e-04 (normalized)
Minimum absolute Force error:                                4.236e-06  -->   2.075e-10 (normalized)
Average absolute Force error:                                9.963e-03  -->   3.714e-06 (normalized)
R boundary error:                                            0.000e+00  -->   2.190e-19 (m)
Z boundary error:                                            0.000e+00  -->   4.375e-19 (m)
Fixed Psi error:                                             0.000e+00  -->   0.000e+00 (Wb)
Fixed pressure profile error:                                0.000e+00  -->   0.000e+00 (Pa)
Fixed current profile error:                                 0.000e+00  -->   0.000e+00 (A)
Fixed sheet current error:                                   0.000e+00  -->   0.000e+00 (~)
==============================================================================================================

Finally, we compare the solve equilibrium’s flux surfaces with the vacuum field Poincare plot and confirm that indeed, the equilibrium matches the vacuum field as expected.

[8]:
grid = LinearGrid(L=5)
data = eq.compute(["R", "Z"], grid=grid)
fig, ax = plot_surfaces(eq, rho=grid.nodes[:, 0], rho_lw=2)
poincare_plot(field, R0=data["R"], Z0=data["Z"], ax=ax, NFP=eq.NFP, size=10);
../../_images/notebooks_tutorials_QFM_surface_18_0.png