{ "cells": [ { "cell_type": "markdown", "source": [ "# Gross-Pitaevskii equation with magnetism" ], "metadata": {} }, { "cell_type": "markdown", "source": [ "We solve the 2D Gross-Pitaevskii equation with a magnetic field.\n", "This is similar to the\n", "previous example (Gross-Pitaevskii equation in one dimension),\n", "but with an extra term for the magnetic field.\n", "We reproduce here the results of https://arxiv.org/pdf/1611.02045.pdf Fig. 10" ], "metadata": {} }, { "outputs": [], "cell_type": "code", "source": [ "using DFTK\n", "using StaticArrays\n", "using Plots" ], "metadata": {}, "execution_count": 1 }, { "cell_type": "markdown", "source": [ "Unit cell. Having one of the lattice vectors as zero means a 2D system" ], "metadata": {} }, { "outputs": [], "cell_type": "code", "source": [ "a = 15\n", "lattice = a .* [[1 0 0.]; [0 1 0]; [0 0 0]];" ], "metadata": {}, "execution_count": 2 }, { "cell_type": "markdown", "source": [ "Confining scalar potential, and magnetic vector potential" ], "metadata": {} }, { "outputs": [], "cell_type": "code", "source": [ "pot(x, y, z) = ((x - a/2)^2 + (y - a/2)^2)/2\n", "ω = .6\n", "Apot(x, y, z) = ω * @SVector [y - a/2, -(x - a/2), 0]\n", "Apot(X) = Apot(X...);" ], "metadata": {}, "execution_count": 3 }, { "cell_type": "markdown", "source": [ "Parameters" ], "metadata": {} }, { "outputs": [], "cell_type": "code", "source": [ "Ecut = 20 # Increase this for production\n", "η = 500\n", "C = η/2\n", "α = 2\n", "n_electrons = 1; # Increase this for fun" ], "metadata": {}, "execution_count": 4 }, { "cell_type": "markdown", "source": [ "Collect all the terms, build and run the model" ], "metadata": {} }, { "outputs": [ { "name": "stdout", "output_type": "stream", "text": [ "Iter Function value Gradient norm \n", " 0 3.182901e+01 7.795833e+00\n", " * time: 0.0015950202941894531\n", " 1 2.798890e+01 4.956841e+00\n", " * time: 0.0071070194244384766\n", " 2 1.969671e+01 5.009689e+00\n", " * time: 0.012188196182250977\n", " 3 1.282973e+01 3.257868e+00\n", " * time: 0.016198158264160156\n", " 4 1.058469e+01 1.491212e+00\n", " * time: 0.02001810073852539\n", " 5 9.702154e+00 1.997822e+00\n", " * time: 0.023205041885375977\n", " 6 9.254038e+00 1.151561e+00\n", " * time: 0.026545047760009766\n", " 7 8.963358e+00 7.520703e-01\n", " * time: 0.029702186584472656\n", " 8 8.650594e+00 7.655641e-01\n", " * time: 0.03285408020019531\n", " 9 8.408267e+00 6.017257e-01\n", " * time: 0.036518096923828125\n", " 10 8.271961e+00 6.117114e-01\n", " * time: 0.03993105888366699\n", " 11 8.188621e+00 5.625566e-01\n", " * time: 0.04308509826660156\n", " 12 8.135284e+00 4.317111e-01\n", " * time: 0.04674100875854492\n", " 13 8.102130e+00 6.246954e-01\n", " * time: 0.04923415184020996\n", " 14 8.068053e+00 5.492248e-01\n", " * time: 0.0516970157623291\n", " 15 8.025554e+00 4.863287e-01\n", " * time: 0.10075712203979492\n", " 16 7.993303e+00 6.007184e-01\n", " * time: 0.10330700874328613\n", " 17 7.985327e+00 6.639576e-01\n", " * time: 0.10592508316040039\n", " 18 7.933416e+00 5.297995e-01\n", " * time: 0.10845518112182617\n", " 19 7.912533e+00 6.157943e-01\n", " * time: 0.11095619201660156\n", " 20 7.905912e+00 6.547221e-01\n", " * time: 0.1134340763092041\n", " 21 7.871480e+00 4.694006e-01\n", " * time: 0.11611008644104004\n", " 22 7.843980e+00 5.159290e-01\n", " * time: 0.11857318878173828\n", " 23 7.840577e+00 7.385688e-01\n", " * time: 0.12112212181091309\n", " 24 7.796935e+00 3.897199e-01\n", " * time: 0.1244041919708252\n", " 25 7.763582e+00 4.413576e-01\n", " * time: 0.12701010704040527\n", " 26 7.751453e+00 4.666119e-01\n", " * time: 0.12949013710021973\n", " 27 7.730208e+00 3.057094e-01\n", " * time: 0.13274502754211426\n", " 28 7.708048e+00 2.099653e-01\n", " * time: 0.13609910011291504\n", " 29 7.693347e+00 1.816581e-01\n", " * time: 0.1392500400543213\n", " 30 7.688766e+00 3.647389e-01\n", " * time: 0.14177799224853516\n", " 31 7.676902e+00 2.190269e-01\n", " * time: 0.1449570655822754\n", " 32 7.672153e+00 2.567602e-01\n", " * time: 0.14786911010742188\n", " 33 7.669442e+00 2.991194e-01\n", " * time: 0.15035510063171387\n", " 34 7.666644e+00 1.768711e-01\n", " * time: 0.15282607078552246\n", " 35 7.654275e+00 1.469596e-01\n", " * time: 0.1555311679840088\n", " 36 7.648596e+00 3.127774e-01\n", " * time: 0.1580820083618164\n", " 37 7.639257e+00 1.720795e-01\n", " * time: 0.16156911849975586\n", " 38 7.637666e+00 2.462429e-01\n", " * time: 0.16434597969055176\n", " 39 7.633834e+00 1.873826e-01\n", " * time: 0.17045807838439941\n", " 40 7.630676e+00 1.907696e-01\n", " * time: 0.1729731559753418\n", " 41 7.627276e+00 1.216255e-01\n", " * time: 0.17716002464294434\n", " 42 7.625329e+00 1.120364e-01\n", " * time: 0.17985010147094727\n", " 43 7.625260e+00 1.344570e-01\n", " * time: 0.18230819702148438\n", " 44 7.625175e+00 1.650475e-01\n", " * time: 0.18477702140808105\n", " 45 7.623656e+00 8.448788e-02\n", " * time: 0.18832111358642578\n", " 46 7.621858e+00 9.490464e-02\n", " * time: 0.19078612327575684\n", " 47 7.620198e+00 6.964938e-02\n", " * time: 0.1932840347290039\n", " 48 7.619273e+00 7.693805e-02\n", " * time: 0.19625520706176758\n", " 49 7.619174e+00 1.024584e-01\n", " * time: 0.1987450122833252\n", " 50 7.618532e+00 7.846299e-02\n", " * time: 0.20122408866882324\n", " 51 7.617676e+00 5.774121e-02\n", " * time: 0.20453810691833496\n", " 52 7.617220e+00 5.871266e-02\n", " * time: 0.20714402198791504\n", " 53 7.616509e+00 7.402475e-02\n", " * time: 0.2098691463470459\n", " 54 7.615856e+00 5.584623e-02\n", " * time: 0.21361207962036133\n", " 55 7.615180e+00 1.991162e-02\n", " * time: 0.21724319458007812\n", " 56 7.614999e+00 5.794120e-02\n", " * time: 0.24823617935180664\n", " 57 7.614607e+00 3.400781e-02\n", " * time: 0.25087714195251465\n", " 58 7.614333e+00 3.286529e-02\n", " * time: 0.2541041374206543\n", " 59 7.614191e+00 6.456124e-02\n", " * time: 0.2568662166595459\n", " 60 7.613795e+00 4.241773e-02\n", " * time: 0.26003098487854004\n", " 61 7.613759e+00 5.302181e-02\n", " * time: 0.2625131607055664\n", " 62 7.613444e+00 3.546896e-02\n", " * time: 0.26500606536865234\n", " 63 7.613181e+00 3.568412e-02\n", " * time: 0.26836204528808594\n", " 64 7.613113e+00 4.186827e-02\n", " * time: 0.270855188369751\n", " 65 7.612850e+00 2.751318e-02\n", " * time: 0.2733910083770752\n", " 66 7.612661e+00 3.530788e-02\n", " * time: 0.2758781909942627\n", " 67 7.612502e+00 5.803999e-02\n", " * time: 0.2795531749725342\n", " 68 7.612432e+00 3.986693e-02\n", " * time: 0.28203606605529785\n", " 69 7.612256e+00 3.069685e-02\n", " * time: 0.2845320701599121\n", " 70 7.612052e+00 2.478624e-02\n", " * time: 0.2877640724182129\n", " 71 7.611846e+00 3.526024e-02\n", " * time: 0.2902381420135498\n", " 72 7.611808e+00 5.641826e-02\n", " * time: 0.292741060256958\n", " 73 7.611669e+00 3.760128e-02\n", " * time: 0.29518699645996094\n", " 74 7.611489e+00 3.921610e-02\n", " * time: 0.29811716079711914\n", " 75 7.611255e+00 2.570178e-02\n", " * time: 0.3013191223144531\n", " 76 7.611249e+00 4.516344e-02\n", " * time: 0.3038320541381836\n", " 77 7.611247e+00 4.865136e-02\n", " * time: 0.30628514289855957\n", " 78 7.611073e+00 4.837257e-02\n", " * time: 0.30893898010253906\n", " 79 7.610860e+00 3.213950e-02\n", " * time: 0.3120880126953125\n", " 80 7.610694e+00 4.415006e-02\n", " * time: 0.3145902156829834\n", " 81 7.610480e+00 3.869551e-02\n", " * time: 0.317249059677124\n", " 82 7.610466e+00 4.853458e-02\n", " * time: 0.31983304023742676\n", " 83 7.610169e+00 4.608561e-02\n", " * time: 0.3229491710662842\n", " 84 7.610115e+00 4.571226e-02\n", " * time: 0.3254671096801758\n", " 85 7.610068e+00 3.800216e-02\n", " * time: 0.32854700088500977\n", " 86 7.609864e+00 3.433130e-02\n", " * time: 0.33103203773498535\n", " 87 7.609557e+00 3.257779e-02\n", " * time: 0.334240198135376\n", " 88 7.609286e+00 1.800476e-02\n", " * time: 0.33776211738586426\n", " 89 7.609003e+00 3.259305e-02\n", " * time: 0.340238094329834\n", " 90 7.608850e+00 5.413609e-02\n", " * time: 0.34267616271972656\n", " 91 7.608618e+00 3.242661e-02\n", " * time: 0.3464012145996094\n", " 92 7.608509e+00 4.729983e-02\n", " * time: 0.3493931293487549\n", " 93 7.608368e+00 4.219664e-02\n", " * time: 0.3525660037994385\n", " 94 7.608137e+00 3.481083e-02\n", " * time: 0.35571718215942383\n", " 95 7.607720e+00 4.960533e-02\n", " * time: 0.3584151268005371\n", " 96 7.607265e+00 3.568045e-02\n", " * time: 0.3616490364074707\n", " 97 7.606896e+00 3.645053e-02\n", " * time: 0.3878641128540039\n", " 98 7.606616e+00 6.424043e-02\n", " * time: 0.3910250663757324\n", " 99 7.606402e+00 3.628539e-02\n", " * time: 0.3941609859466553\n", " 100 7.606284e+00 5.187189e-02\n", " * time: 0.39662599563598633\n", " 101 7.606106e+00 3.630876e-02\n", " * time: 0.3995201587677002\n", " 102 7.605952e+00 6.238896e-02\n", " * time: 0.4019811153411865\n", " 103 7.605201e+00 4.605068e-02\n", " * time: 0.4044811725616455\n", " 104 7.604930e+00 2.125700e-02\n", " * time: 0.40774106979370117\n", " 105 7.604794e+00 4.266766e-02\n", " * time: 0.41025710105895996\n", " 106 7.604500e+00 3.235220e-02\n", " * time: 0.4131321907043457\n", " 107 7.604314e+00 3.402249e-02\n", " * time: 0.41560816764831543\n", " 108 7.604218e+00 3.828807e-02\n", " * time: 0.4184300899505615\n", " 109 7.603939e+00 2.880304e-02\n", " * time: 0.4211289882659912\n", " 110 7.603680e+00 3.570032e-02\n", " * time: 0.423626184463501\n", " 111 7.603661e+00 5.223243e-02\n", " * time: 0.42611002922058105\n", " 112 7.603573e+00 4.781460e-02\n", " * time: 0.4288899898529053\n", " 113 7.603511e+00 5.308732e-02\n", " * time: 0.4313681125640869\n", " 114 7.603218e+00 2.934813e-02\n", " * time: 0.43389320373535156\n", " 115 7.602998e+00 4.714035e-02\n", " * time: 0.43636417388916016\n", " 116 7.602779e+00 4.436420e-02\n", " * time: 0.4392821788787842\n", " 117 7.602540e+00 2.649035e-02\n", " * time: 0.44249510765075684\n", " 118 7.602269e+00 3.206203e-02\n", " * time: 0.4457371234893799\n", " 119 7.602057e+00 1.525701e-02\n", " * time: 0.4492931365966797\n", " 120 7.601916e+00 1.808723e-02\n", " * time: 0.45178914070129395\n", " 121 7.601725e+00 2.235921e-02\n", " * time: 0.4542710781097412\n", " 122 7.601540e+00 2.605546e-02\n", " * time: 0.45746707916259766\n", " 123 7.601372e+00 2.081683e-02\n", " * time: 0.46089911460876465\n", " 124 7.601361e+00 3.519971e-02\n", " * time: 0.46361303329467773\n", " 125 7.601237e+00 2.963502e-02\n", " * time: 0.46613121032714844\n", " 126 7.601113e+00 4.504419e-02\n", " * time: 0.4687201976776123\n", " 127 7.600856e+00 3.194459e-02\n", " * time: 0.47191715240478516\n", " 128 7.600688e+00 4.435267e-02\n", " * time: 0.4743931293487549\n", " 129 7.600584e+00 3.807013e-02\n", " * time: 0.47687602043151855\n", " 130 7.600405e+00 1.986216e-02\n", " * time: 0.48204708099365234\n", " 131 7.600350e+00 3.975766e-02\n", " * time: 0.4845280647277832\n", " 132 7.600168e+00 2.307156e-02\n", " * time: 0.48699307441711426\n", " 133 7.599986e+00 2.683787e-02\n", " * time: 0.4895491600036621\n", " 134 7.599839e+00 3.495979e-02\n", " * time: 0.49206018447875977\n", " 135 7.599664e+00 2.017059e-02\n", " * time: 0.49516916275024414\n", " 136 7.599588e+00 2.447524e-02\n", " * time: 0.4976620674133301\n", " 137 7.599492e+00 2.536040e-02\n", " * time: 0.5007021427154541\n", " 138 7.599341e+00 2.911457e-02\n", " * time: 0.5032320022583008\n", " 139 7.599167e+00 1.657637e-02\n", " * time: 0.5178442001342773\n", " 140 7.599140e+00 4.894781e-02\n", " * time: 0.5207371711730957\n", " 141 7.599083e+00 5.652759e-02\n", " * time: 0.5232131481170654\n", " 142 7.599049e+00 3.108235e-02\n", " * time: 0.5256941318511963\n", " 143 7.598828e+00 3.971102e-02\n", " * time: 0.5281581878662109\n", " 144 7.598669e+00 4.291273e-02\n", " * time: 0.530764102935791\n", " 145 7.598515e+00 3.655640e-02\n", " * time: 0.5332331657409668\n", " 146 7.598321e+00 3.458225e-02\n", " * time: 0.535736083984375\n", " 147 7.598163e+00 3.773841e-02\n", " * time: 0.5383071899414062\n", " 148 7.597995e+00 2.708749e-02\n", " * time: 0.5416920185089111\n", " 149 7.597961e+00 4.778295e-02\n", " * time: 0.5441761016845703\n", " 150 7.597921e+00 5.273311e-02\n", " * time: 0.5466911792755127\n", " 151 7.597653e+00 2.963431e-02\n", " * time: 0.550321102142334\n", " 152 7.597628e+00 3.952414e-02\n", " * time: 0.5528440475463867\n", " 153 7.597499e+00 3.415718e-02\n", " * time: 0.5553441047668457\n", " 154 7.597309e+00 3.217545e-02\n", " * time: 0.557833194732666\n", " 155 7.597068e+00 2.679157e-02\n", " * time: 0.5611810684204102\n", " 156 7.596879e+00 2.136610e-02\n", " * time: 0.5643270015716553\n", " 157 7.596676e+00 1.526044e-02\n", " * time: 0.5675060749053955\n", " 158 7.596658e+00 3.343681e-02\n", " * time: 0.5733461380004883\n", " 159 7.596648e+00 3.243151e-02\n", " * time: 0.5769190788269043\n", " 160 7.596594e+00 4.235168e-02\n", " * time: 0.5793859958648682\n", " 161 7.596431e+00 3.235905e-02\n", " * time: 0.5834751129150391\n", " 162 7.596411e+00 3.665062e-02\n", " * time: 0.5861070156097412\n", " 163 7.596396e+00 6.312340e-02\n", " * time: 0.588935136795044\n", " 164 7.596349e+00 4.656405e-02\n", " * time: 0.5918810367584229\n", " 165 7.596157e+00 3.916277e-02\n", " * time: 0.5945100784301758\n", " 166 7.595950e+00 3.717835e-02\n", " * time: 0.5971870422363281\n", " 167 7.595838e+00 4.562296e-02\n", " * time: 0.6003291606903076\n", " 168 7.595681e+00 2.792892e-02\n", " * time: 0.6030020713806152\n", " 169 7.595471e+00 3.492325e-02\n", " * time: 0.6063439846038818\n", " 170 7.595432e+00 4.008381e-02\n", " * time: 0.6088321208953857\n", " 171 7.595385e+00 3.147767e-02\n", " * time: 0.6114530563354492\n", " 172 7.595315e+00 3.703344e-02\n", " * time: 0.6139659881591797\n", " 173 7.595098e+00 3.107451e-02\n", " * time: 0.6172080039978027\n", " 174 7.594905e+00 2.908897e-02\n", " * time: 0.6205980777740479\n", " 175 7.594661e+00 1.938092e-02\n", " * time: 0.6237621307373047\n", " 176 7.594588e+00 2.449097e-02\n", " * time: 0.626270055770874\n", " 177 7.594533e+00 4.594181e-02\n", " * time: 0.6287860870361328\n", " 178 7.594502e+00 3.678008e-02\n", " * time: 0.6314060688018799\n", " 179 7.594475e+00 3.162107e-02\n", " * time: 0.6339080333709717\n", " 180 7.594475e+00 2.947044e-02\n", " * time: 0.6364831924438477\n", " 181 7.594238e+00 3.069006e-02\n", " * time: 0.6508641242980957\n", " 182 7.594183e+00 3.919755e-02\n", " * time: 0.6533160209655762\n", " 183 7.594036e+00 3.039133e-02\n", " * time: 0.6557660102844238\n", " 184 7.593930e+00 2.458984e-02\n", " * time: 0.6582322120666504\n", " 185 7.593836e+00 3.060697e-02\n", " * time: 0.6610691547393799\n", " 186 7.593726e+00 3.207243e-02\n", " * time: 0.6636030673980713\n", " 187 7.593601e+00 1.303089e-02\n", " * time: 0.6668531894683838\n", " 188 7.593514e+00 1.554783e-02\n", " * time: 0.6701090335845947\n", " 189 7.593466e+00 1.778889e-02\n", " * time: 0.6727910041809082\n", " 190 7.593460e+00 2.528457e-02\n", " * time: 0.6752719879150391\n", " 191 7.593383e+00 1.752822e-02\n", " * time: 0.6785240173339844\n", " 192 7.593311e+00 1.495942e-02\n", " * time: 0.6816670894622803\n", " 193 7.593263e+00 2.459590e-02\n", " * time: 0.6843180656433105\n", " 194 7.593235e+00 2.024434e-02\n", " * time: 0.6868062019348145\n", " 195 7.593175e+00 1.062793e-02\n", " * time: 0.6899580955505371\n", " 196 7.593119e+00 1.566207e-02\n", " * time: 0.6928291320800781\n", " 197 7.593080e+00 9.183803e-03\n", " * time: 0.69606614112854\n", " 198 7.593029e+00 1.006380e-02\n", " * time: 0.6985161304473877\n", " 199 7.592992e+00 1.523107e-02\n", " * time: 0.7011620998382568\n", " 200 7.592943e+00 1.223783e-02\n", " * time: 0.7043380737304688\n", " 201 7.592896e+00 9.064214e-03\n", " * time: 0.7075140476226807\n", " 202 7.592889e+00 1.228219e-02\n", " * time: 0.7100281715393066\n", " 203 7.592868e+00 1.200123e-02\n", " * time: 0.7128970623016357\n", " 204 7.592833e+00 1.453247e-02\n", " * time: 0.7161011695861816\n", " 205 7.592797e+00 7.114914e-03\n", " * time: 0.7192440032958984\n", " 206 7.592757e+00 7.954386e-03\n", " * time: 0.7218871116638184\n", " 207 7.592734e+00 8.141967e-03\n", " * time: 0.7243821620941162\n", " 208 7.592719e+00 8.903407e-03\n", " * time: 0.7268610000610352\n", " 209 7.592687e+00 1.142010e-02\n", " * time: 0.7293779850006104\n", " 210 7.592658e+00 7.328099e-03\n", " * time: 0.7326741218566895\n", " 211 7.592632e+00 1.124453e-02\n", " * time: 0.7351620197296143\n", " 212 7.592616e+00 1.487056e-02\n", " * time: 0.7376441955566406\n", " 213 7.592590e+00 6.394042e-03\n", " * time: 0.7408850193023682\n", " 214 7.592587e+00 1.080734e-02\n", " * time: 0.7438621520996094\n", " 215 7.592572e+00 6.954836e-03\n", " * time: 0.7463181018829346\n", " 216 7.592556e+00 8.242226e-03\n", " * time: 0.7488231658935547\n", " 217 7.592549e+00 1.286166e-02\n", " * time: 0.7513670921325684\n", " 218 7.592543e+00 8.024781e-03\n", " * time: 0.7542610168457031\n", " 219 7.592533e+00 7.596814e-03\n", " * time: 0.7568001747131348\n", " 220 7.592527e+00 9.322897e-03\n", " * time: 0.7593450546264648\n", " 221 7.592518e+00 8.904697e-03\n", " * time: 0.7621901035308838\n", " 222 7.592510e+00 1.029235e-02\n", " * time: 0.7763280868530273\n", " 223 7.592506e+00 9.447667e-03\n", " * time: 0.783703088760376\n", " 224 7.592501e+00 8.012172e-03\n", " * time: 0.7862629890441895\n", " 225 7.592488e+00 5.456165e-03\n", " * time: 0.789445161819458\n", " 226 7.592481e+00 6.026109e-03\n", " * time: 0.792302131652832\n", " 227 7.592475e+00 7.154465e-03\n", " * time: 0.7947611808776855\n", " 228 7.592465e+00 4.711040e-03\n", " * time: 0.7979559898376465\n", " 229 7.592457e+00 3.543808e-03\n", " * time: 0.801145076751709\n", " 230 7.592455e+00 4.774953e-03\n", " * time: 0.8038861751556396\n", " 231 7.592450e+00 4.331014e-03\n", " * time: 0.8073110580444336\n", " 232 7.592449e+00 7.896324e-03\n", " * time: 0.8098690509796143\n", " 233 7.592448e+00 6.748606e-03\n", " * time: 0.8126401901245117\n", " 234 7.592446e+00 6.123885e-03\n", " * time: 0.8152501583099365\n", " 235 7.592444e+00 3.184057e-03\n", " * time: 0.8178400993347168\n", " 236 7.592440e+00 3.730683e-03\n", " * time: 0.8205389976501465\n", " 237 7.592438e+00 7.746129e-03\n", " * time: 0.8232321739196777\n", " 238 7.592435e+00 4.228656e-03\n", " * time: 0.8258349895477295\n", " 239 7.592431e+00 3.203411e-03\n", " * time: 0.8285400867462158\n", " 240 7.592428e+00 4.345044e-03\n", " * time: 0.8311021327972412\n", " 241 7.592424e+00 3.010871e-03\n", " * time: 0.8345901966094971\n", " 242 7.592421e+00 2.995295e-03\n", " * time: 0.8375091552734375\n", " 243 7.592419e+00 3.266745e-03\n", " * time: 0.8408980369567871\n", " 244 7.592418e+00 3.018062e-03\n", " * time: 0.844724178314209\n", " 245 7.592415e+00 2.565199e-03\n", " * time: 0.8480970859527588\n", " 246 7.592413e+00 1.303541e-03\n", " * time: 0.8513591289520264\n", " 247 7.592412e+00 2.781261e-03\n", " * time: 0.853978157043457\n", " 248 7.592411e+00 4.498880e-03\n", " * time: 0.8564791679382324\n", " 249 7.592411e+00 3.678001e-03\n", " * time: 0.858971118927002\n", " 250 7.592410e+00 4.114567e-03\n", " * time: 0.8614501953125\n", " 251 7.592409e+00 2.557394e-03\n", " * time: 0.864173173904419\n", " 252 7.592407e+00 3.293757e-03\n", " * time: 0.8666410446166992\n", " 253 7.592407e+00 3.555445e-03\n", " * time: 0.8691201210021973\n", " 254 7.592404e+00 3.071663e-03\n", " * time: 0.8716111183166504\n", " 255 7.592401e+00 5.019996e-03\n", " * time: 0.8742220401763916\n", " 256 7.592399e+00 3.249414e-03\n", " * time: 0.8774850368499756\n", " 257 7.592397e+00 3.178999e-03\n", " * time: 0.8806281089782715\n", " 258 7.592396e+00 2.642970e-03\n", " * time: 0.8838441371917725\n", " 259 7.592395e+00 3.039102e-03\n", " * time: 0.8870551586151123\n", " 260 7.592394e+00 2.429890e-03\n", " * time: 0.8902251720428467\n", " 261 7.592393e+00 4.555303e-03\n", " * time: 0.893118143081665\n", " 262 7.592391e+00 1.971631e-03\n", " * time: 0.8962790966033936\n", " 263 7.592390e+00 2.490422e-03\n", " * time: 0.910128116607666\n", " 264 7.592390e+00 3.095748e-03\n", " * time: 0.9127390384674072\n", " 265 7.592389e+00 2.287251e-03\n", " * time: 0.9151589870452881\n", " 266 7.592389e+00 3.250358e-03\n", " * time: 0.9176521301269531\n", " 267 7.592387e+00 1.086930e-03\n", " * time: 0.9201281070709229\n", " 268 7.592387e+00 2.389749e-03\n", " * time: 0.9233160018920898\n", " 269 7.592385e+00 2.605243e-03\n", " * time: 0.9258191585540771\n", " 270 7.592385e+00 3.167433e-03\n", " * time: 0.9286150932312012\n", " 271 7.592384e+00 2.271481e-03\n", " * time: 0.9310932159423828\n", " 272 7.592383e+00 1.904539e-03\n", " * time: 0.9344501495361328\n", " 273 7.592383e+00 2.516242e-03\n", " * time: 0.9369959831237793\n", " 274 7.592382e+00 1.915901e-03\n", " * time: 0.9395689964294434\n", " 275 7.592382e+00 3.998503e-03\n", " * time: 0.9421160221099854\n", " 276 7.592382e+00 3.543687e-03\n", " * time: 0.945275068283081\n", " 277 7.592381e+00 4.142895e-03\n", " * time: 0.947857141494751\n", " 278 7.592380e+00 2.404400e-03\n", " * time: 0.9503741264343262\n", " 279 7.592379e+00 2.089347e-03\n", " * time: 0.9536821842193604\n", " 280 7.592379e+00 3.896822e-03\n", " * time: 0.9562242031097412\n", " 281 7.592377e+00 2.080646e-03\n", " * time: 0.9594151973724365\n", " 282 7.592376e+00 2.576326e-03\n", " * time: 0.9619441032409668\n", " 283 7.592375e+00 2.689579e-03\n", " * time: 0.964928150177002\n", " 284 7.592374e+00 1.710743e-03\n", " * time: 0.9681351184844971\n", " 285 7.592374e+00 2.549059e-03\n", " * time: 0.9705832004547119\n", " 286 7.592374e+00 3.727877e-03\n", " * time: 0.9731721878051758\n", " 287 7.592373e+00 3.644222e-03\n", " * time: 0.9756321907043457\n", " 288 7.592372e+00 3.301444e-03\n", " * time: 0.9788269996643066\n", " 289 7.592371e+00 2.771627e-03\n", " * time: 0.9813570976257324\n", " 290 7.592370e+00 3.069738e-03\n", " * time: 0.9843740463256836\n", " 291 7.592369e+00 3.914468e-03\n", " * time: 0.9868249893188477\n", " 292 7.592367e+00 2.279698e-03\n", " * time: 0.9900281429290771\n", " 293 7.592366e+00 3.409123e-03\n", " * time: 0.9925611019134521\n", " 294 7.592364e+00 3.276240e-03\n", " * time: 0.995474100112915\n", " 295 7.592363e+00 3.444372e-03\n", " * time: 0.998021125793457\n", " 296 7.592362e+00 1.972917e-03\n", " * time: 1.00120210647583\n", " 297 7.592361e+00 1.913391e-03\n", " * time: 1.00447416305542\n", " 298 7.592359e+00 1.454386e-03\n", " * time: 1.0076069831848145\n", " 299 7.592358e+00 2.394969e-03\n", " * time: 1.0100622177124023\n", " 300 7.592357e+00 4.046493e-03\n", " * time: 1.0125541687011719\n", " 301 7.592357e+00 3.027718e-03\n", " * time: 1.015120029449463\n", " 302 7.592355e+00 2.004382e-03\n", " * time: 1.0183181762695312\n", " 303 7.592353e+00 2.166716e-03\n", " * time: 1.0208580493927002\n", " 304 7.592352e+00 3.967950e-03\n", " * time: 1.0235190391540527\n", " 305 7.592350e+00 2.466333e-03\n", " * time: 1.0382001399993896\n", " 306 7.592350e+00 3.163434e-03\n", " * time: 1.0406811237335205\n", " 307 7.592348e+00 2.513103e-03\n", " * time: 1.0431389808654785\n", " 308 7.592346e+00 2.931750e-03\n", " * time: 1.0479331016540527\n", " 309 7.592345e+00 2.945443e-03\n", " * time: 1.0510931015014648\n", " 310 7.592344e+00 3.276465e-03\n", " * time: 1.0538501739501953\n", " 311 7.592343e+00 2.991313e-03\n", " * time: 1.0570580959320068\n", " 312 7.592342e+00 1.897087e-03\n", " * time: 1.06028413772583\n", " 313 7.592340e+00 2.653658e-03\n", " * time: 1.0627610683441162\n", " 314 7.592339e+00 2.507921e-03\n", " * time: 1.0654690265655518\n", " 315 7.592338e+00 2.971692e-03\n", " * time: 1.0679500102996826\n", " 316 7.592338e+00 2.476542e-03\n", " * time: 1.0704522132873535\n", " 317 7.592336e+00 1.830073e-03\n", " * time: 1.0736751556396484\n", " 318 7.592335e+00 2.240062e-03\n", " * time: 1.0762641429901123\n", " 319 7.592334e+00 1.748829e-03\n", " * time: 1.0787250995635986\n", " 320 7.592334e+00 2.795038e-03\n", " * time: 1.0812060832977295\n", " 321 7.592333e+00 1.743699e-03\n", " * time: 1.0854871273040771\n", " 322 7.592332e+00 1.605354e-03\n", " * time: 1.0898652076721191\n", " 323 7.592332e+00 2.720685e-03\n", " * time: 1.0932080745697021\n", " 324 7.592332e+00 2.057776e-03\n", " * time: 1.0963990688323975\n", " 325 7.592331e+00 2.083627e-03\n", " * time: 1.0990550518035889\n", " 326 7.592330e+00 3.403022e-03\n", " * time: 1.1016840934753418\n", " 327 7.592329e+00 2.212083e-03\n", " * time: 1.1064391136169434\n", " 328 7.592329e+00 2.986484e-03\n", " * time: 1.1089529991149902\n", " 329 7.592328e+00 2.726814e-03\n", " * time: 1.1122920513153076\n", " 330 7.592328e+00 3.368810e-03\n", " * time: 1.1150171756744385\n", " 331 7.592326e+00 1.090949e-03\n", " * time: 1.1182630062103271\n", " 332 7.592326e+00 1.972888e-03\n", " * time: 1.120743989944458\n", " 333 7.592325e+00 1.884706e-03\n", " * time: 1.123317003250122\n", " 334 7.592325e+00 1.451193e-03\n", " * time: 1.1267871856689453\n", " 335 7.592324e+00 1.281121e-03\n", " * time: 1.1299359798431396\n", " 336 7.592324e+00 2.201364e-03\n", " * time: 1.1324591636657715\n", " 337 7.592324e+00 1.125263e-03\n", " * time: 1.1356990337371826\n", " 338 7.592323e+00 1.908310e-03\n", " * time: 1.1382319927215576\n", " 339 7.592323e+00 1.308354e-03\n", " * time: 1.1407032012939453\n", " 340 7.592323e+00 2.303144e-03\n", " * time: 1.1432061195373535\n", " 341 7.592322e+00 1.140623e-03\n", " * time: 1.1460750102996826\n", " 342 7.592322e+00 1.746675e-03\n", " * time: 1.1485860347747803\n", " 343 7.592321e+00 1.111413e-03\n", " * time: 1.151757001876831\n", " 344 7.592321e+00 1.430306e-03\n", " * time: 1.1543850898742676\n", " 345 7.592321e+00 9.479341e-04\n", " * time: 1.157008171081543\n", " 346 7.592321e+00 1.280238e-03\n", " * time: 1.1709551811218262\n", " 347 7.592321e+00 9.913361e-04\n", " * time: 1.17411208152771\n", " 348 7.592320e+00 9.891854e-04\n", " * time: 1.1766581535339355\n", " 349 7.592320e+00 8.780981e-04\n", " * time: 1.179746150970459\n", " 350 7.592320e+00 6.577826e-04\n", " * time: 1.182232141494751\n", " 351 7.592320e+00 3.681961e-04\n", " * time: 1.1864721775054932\n", " 352 7.592320e+00 7.011231e-04\n", " * time: 1.1889681816101074\n", " 353 7.592320e+00 5.945074e-04\n", " * time: 1.191452980041504\n", " 354 7.592320e+00 4.895368e-04\n", " * time: 1.1939430236816406\n", " 355 7.592320e+00 5.529364e-04\n", " * time: 1.1968860626220703\n", " 356 7.592320e+00 6.976689e-04\n", " * time: 1.1993842124938965\n", " 357 7.592320e+00 6.627304e-04\n", " * time: 1.2018611431121826\n", " 358 7.592320e+00 6.710841e-04\n", " * time: 1.2043280601501465\n", " 359 7.592320e+00 5.770555e-04\n", " * time: 1.2069721221923828\n", " 360 7.592319e+00 4.518984e-04\n", " * time: 1.2094640731811523\n", " 361 7.592319e+00 5.736418e-04\n", " * time: 1.2119481563568115\n", " 362 7.592319e+00 4.935222e-04\n", " * time: 1.2147791385650635\n", " 363 7.592319e+00 4.858415e-04\n", " * time: 1.2180120944976807\n", " 364 7.592319e+00 7.582259e-04\n", " * time: 1.2204830646514893\n", " 365 7.592319e+00 6.689756e-04\n", " * time: 1.2229831218719482\n", " 366 7.592319e+00 7.358104e-04\n", " * time: 1.225966215133667\n", " 367 7.592319e+00 4.716570e-04\n", " * time: 1.229233980178833\n", " 368 7.592319e+00 4.285834e-04\n", " * time: 1.2324960231781006\n", " 369 7.592319e+00 3.625577e-04\n", " * time: 1.235748052597046\n", " 370 7.592319e+00 6.419600e-04\n", " * time: 1.2382700443267822\n", " 371 7.592319e+00 6.906244e-04\n", " * time: 1.2408020496368408\n", " 372 7.592319e+00 4.258819e-04\n", " * time: 1.2440311908721924\n", " 373 7.592319e+00 3.956212e-04\n", " * time: 1.24704909324646\n", " 374 7.592319e+00 6.088822e-04\n", " * time: 1.2495341300964355\n", " 375 7.592319e+00 9.562926e-04\n", " * time: 1.2520790100097656\n", " 376 7.592319e+00 6.559068e-04\n", " * time: 1.255411148071289\n", " 377 7.592319e+00 7.668409e-04\n", " * time: 1.2579271793365479\n", " 378 7.592319e+00 6.891165e-04\n", " * time: 1.2603909969329834\n", " 379 7.592319e+00 4.828292e-04\n", " * time: 1.2628810405731201\n", " 380 7.592319e+00 8.050982e-04\n", " * time: 1.2655541896820068\n", " 381 7.592318e+00 5.890305e-04\n", " * time: 1.2687771320343018\n", " 382 7.592318e+00 4.080247e-04\n", " * time: 1.2719151973724365\n", " 383 7.592318e+00 5.467551e-04\n", " * time: 1.274425983428955\n", " 384 7.592318e+00 4.462714e-04\n", " * time: 1.27708101272583\n", " 385 7.592318e+00 5.828566e-04\n", " * time: 1.2795600891113281\n", " 386 7.592318e+00 3.933699e-04\n", " * time: 1.282790184020996\n", " 387 7.592318e+00 4.883392e-04\n", " * time: 1.298793077468872\n", " 388 7.592318e+00 5.041946e-04\n", " * time: 1.3019862174987793\n", " 389 7.592318e+00 3.226990e-04\n", " * time: 1.3051111698150635\n", " 390 7.592318e+00 4.623229e-04\n", " * time: 1.3077571392059326\n", " 391 7.592318e+00 5.650981e-04\n", " * time: 1.3103480339050293\n", " 392 7.592318e+00 5.326197e-04\n", " * time: 1.3128712177276611\n", " 393 7.592318e+00 5.149945e-04\n", " * time: 1.3154051303863525\n", " 394 7.592318e+00 7.284988e-04\n", " * time: 1.318066120147705\n", " 395 7.592317e+00 4.029045e-04\n", " * time: 1.3212611675262451\n", " 396 7.592317e+00 7.994105e-04\n", " * time: 1.323777198791504\n", " 397 7.592317e+00 4.696496e-04\n", " * time: 1.3265411853790283\n", " 398 7.592317e+00 6.247333e-04\n", " * time: 1.3290271759033203\n", " 399 7.592317e+00 5.848055e-04\n", " * time: 1.3315601348876953\n", " 400 7.592317e+00 5.453018e-04\n", " * time: 1.3340439796447754\n", " 401 7.592317e+00 4.785905e-04\n", " * time: 1.336698055267334\n", " 402 7.592317e+00 5.078280e-04\n", " * time: 1.3401989936828613\n", " 403 7.592317e+00 7.941458e-04\n", " * time: 1.3426830768585205\n", " 404 7.592317e+00 1.392710e-03\n", " * time: 1.3452110290527344\n", " 405 7.592317e+00 1.151226e-03\n", " * time: 1.3482310771942139\n", " 406 7.592317e+00 1.012511e-03\n", " * time: 1.3508610725402832\n", " 407 7.592317e+00 6.313593e-04\n", " * time: 1.3542070388793945\n", " 408 7.592316e+00 5.515386e-04\n", " * time: 1.3569271564483643\n", " 409 7.592316e+00 6.551135e-04\n", " * time: 1.3601810932159424\n", " 410 7.592316e+00 1.104201e-03\n", " * time: 1.362701177597046\n", " 411 7.592316e+00 6.271316e-04\n", " * time: 1.3661961555480957\n", " 412 7.592316e+00 7.615330e-04\n", " * time: 1.3691520690917969\n", " 413 7.592316e+00 6.690091e-04\n", " * time: 1.371692180633545\n", " 414 7.592316e+00 9.317586e-04\n", " * time: 1.3743209838867188\n", " 415 7.592315e+00 6.491491e-04\n", " * time: 1.3777132034301758\n", " 416 7.592315e+00 5.900133e-04\n", " * time: 1.3809800148010254\n", " 417 7.592315e+00 5.557729e-04\n", " * time: 1.3842260837554932\n", " 418 7.592315e+00 7.658029e-04\n", " * time: 1.3875391483306885\n", " 419 7.592315e+00 6.111210e-04\n", " * time: 1.3901150226593018\n", " 420 7.592315e+00 6.068190e-04\n", " * time: 1.3926141262054443\n", " 421 7.592315e+00 7.821520e-04\n", " * time: 1.3951361179351807\n", " 422 7.592314e+00 7.522966e-04\n", " * time: 1.3981220722198486\n", " 423 7.592314e+00 1.008427e-03\n", " * time: 1.4006800651550293\n", " 424 7.592314e+00 9.539065e-04\n", " * time: 1.4031951427459717\n", " 425 7.592314e+00 6.395239e-04\n", " * time: 1.406574010848999\n", " 426 7.592313e+00 7.490034e-04\n", " * time: 1.4091711044311523\n", " 427 7.592313e+00 1.139770e-03\n", " * time: 1.4116911888122559\n", " 428 7.592313e+00 8.367085e-04\n", " * time: 1.4142570495605469\n", " 429 7.592312e+00 1.023910e-03\n", " * time: 1.4301412105560303\n", " 430 7.592312e+00 1.679015e-03\n", " * time: 1.432596206665039\n", " 431 7.592312e+00 1.400101e-03\n", " * time: 1.4350512027740479\n", " 432 7.592311e+00 1.561855e-03\n", " * time: 1.4379901885986328\n", " 433 7.592311e+00 1.066528e-03\n", " * time: 1.4411611557006836\n", " 434 7.592310e+00 1.295493e-03\n", " * time: 1.444310188293457\n", " 435 7.592310e+00 1.083817e-03\n", " * time: 1.4485831260681152\n", " 436 7.592310e+00 8.497657e-04\n", " * time: 1.451829195022583\n", " 437 7.592309e+00 1.508540e-03\n", " * time: 1.4542901515960693\n", " 438 7.592309e+00 9.784764e-04\n", " * time: 1.4568610191345215\n", " 439 7.592309e+00 1.180725e-03\n", " * time: 1.4593431949615479\n", " 440 7.592308e+00 1.890300e-03\n", " * time: 1.461874008178711\n", " 441 7.592308e+00 8.318850e-04\n", " * time: 1.4653642177581787\n", " 442 7.592307e+00 1.368542e-03\n", " * time: 1.4680960178375244\n", " 443 7.592307e+00 1.084386e-03\n", " * time: 1.470569133758545\n", " 444 7.592307e+00 1.257805e-03\n", " * time: 1.473107099533081\n", " 445 7.592307e+00 1.269790e-03\n", " * time: 1.4755611419677734\n", " 446 7.592306e+00 1.429827e-03\n", " * time: 1.4781529903411865\n", " 447 7.592306e+00 1.098817e-03\n", " * time: 1.4806849956512451\n", " 448 7.592306e+00 1.777893e-03\n", " * time: 1.4831881523132324\n", " 449 7.592306e+00 1.507221e-03\n", " * time: 1.4863309860229492\n", " 450 7.592306e+00 1.234109e-03\n", " * time: 1.4902541637420654\n", " 451 7.592305e+00 1.262794e-03\n", " * time: 1.492861032485962\n", " 452 7.592305e+00 1.371291e-03\n", " * time: 1.4954311847686768\n", " 453 7.592305e+00 1.788419e-03\n", " * time: 1.4984521865844727\n", " 454 7.592304e+00 1.226915e-03\n", " * time: 1.5010080337524414\n", " 455 7.592304e+00 2.247262e-03\n", " * time: 1.5035820007324219\n", " 456 7.592304e+00 1.611492e-03\n", " * time: 1.506620168685913\n", " 457 7.592304e+00 2.032061e-03\n", " * time: 1.5093770027160645\n", " 458 7.592304e+00 1.977606e-03\n", " * time: 1.5123741626739502\n", " 459 7.592304e+00 8.577466e-04\n", " * time: 1.515557050704956\n", " 460 7.592303e+00 1.147732e-03\n", " * time: 1.5181400775909424\n", " 461 7.592303e+00 1.305629e-03\n", " * time: 1.520658016204834\n", " 462 7.592303e+00 8.990719e-04\n", " * time: 1.5238289833068848\n", " 463 7.592302e+00 1.144577e-03\n", " * time: 1.5262751579284668\n", " 464 7.592302e+00 1.055130e-03\n", " * time: 1.5299310684204102\n", " 465 7.592302e+00 5.900112e-04\n", " * time: 1.5331389904022217\n", " 466 7.592302e+00 1.117077e-03\n", " * time: 1.5355820655822754\n", " 467 7.592302e+00 1.012849e-03\n", " * time: 1.538973093032837\n", " 468 7.592302e+00 7.924975e-04\n", " * time: 1.542168140411377\n", " 469 7.592302e+00 7.349133e-04\n", " * time: 1.5446829795837402\n", " 470 7.592302e+00 7.607808e-04\n", " * time: 1.5590441226959229\n", " 471 7.592302e+00 5.758567e-04\n", " * time: 1.5614981651306152\n", " 472 7.592302e+00 4.747820e-04\n", " * time: 1.5639660358428955\n", " 473 7.592302e+00 4.370551e-04\n", " * time: 1.5670580863952637\n", " 474 7.592301e+00 7.846466e-04\n", " * time: 1.573829174041748\n", " 475 7.592301e+00 6.452557e-04\n", " * time: 1.5765020847320557\n", " 476 7.592301e+00 5.090762e-04\n", " * time: 1.5825941562652588\n", " 477 7.592301e+00 8.151430e-04\n", " * time: 1.586292028427124\n", " 478 7.592301e+00 5.125390e-04\n", " * time: 1.5902111530303955\n", " 479 7.592301e+00 5.196586e-04\n", " * time: 1.5930461883544922\n", " 480 7.592301e+00 3.938551e-04\n", " * time: 1.5962541103363037\n", " 481 7.592301e+00 3.893078e-04\n", " * time: 1.6003801822662354\n", " 482 7.592301e+00 4.693960e-04\n", " * time: 1.6029791831970215\n", " 483 7.592301e+00 4.001399e-04\n", " * time: 1.6055400371551514\n", " 484 7.592301e+00 5.327558e-04\n", " * time: 1.6090500354766846\n", " 485 7.592301e+00 3.100162e-04\n", " * time: 1.612354040145874\n", " 486 7.592301e+00 3.741899e-04\n", " * time: 1.6156561374664307\n", " 487 7.592301e+00 5.377325e-04\n", " * time: 1.6182661056518555\n", " 488 7.592301e+00 4.218298e-04\n", " * time: 1.6216130256652832\n", " 489 7.592301e+00 2.363009e-04\n", " * time: 1.6248221397399902\n", " 490 7.592301e+00 3.952950e-04\n", " * time: 1.6272730827331543\n", " 491 7.592301e+00 3.678285e-04\n", " * time: 1.630005121231079\n", " 492 7.592301e+00 5.175131e-04\n", " * time: 1.6324610710144043\n", " 493 7.592301e+00 4.001153e-04\n", " * time: 1.6349091529846191\n", " 494 7.592301e+00 3.371032e-04\n", " * time: 1.6374270915985107\n", " 495 7.592301e+00 4.887440e-04\n", " * time: 1.6400129795074463\n", " 496 7.592301e+00 3.464450e-04\n", " * time: 1.6424560546875\n", " 497 7.592301e+00 4.743713e-04\n", " * time: 1.6449060440063477\n", " 498 7.592301e+00 3.262174e-04\n", " * time: 1.6486961841583252\n", " 499 7.592301e+00 3.302284e-04\n", " * time: 1.6513299942016602\n", " 500 7.592301e+00 2.816619e-04\n", " * time: 1.653839111328125\n", " 501 7.592301e+00 2.648276e-04\n", " * time: 1.6563730239868164\n" ] }, { "output_type": "execute_result", "data": { "text/plain": "Plot{Plots.GRBackend() n=1}", "image/png": "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", "text/html": [ "\n", "\n", "\n", " \n", " \n", " \n", "\n", "\n", "\n", " \n", " \n", " \n", "\n", "\n", "\n", " \n", " \n", " \n", "\n", "\n", "\n", "\n", "\n", "\n", "\n", "\n", "\n", "\n", "\n", "\n", "\n", "\n", "\n", "\n", "\n", "\n", "\n", "\n", "\n", "\n", "\n", "\n", "\n", "\n", "\n", "\n", "\n", "\n", "\n", " \n", " \n", " \n", "\n", "\n", "\n", "\n", "\n", "\n" ], "image/svg+xml": [ "\n", "\n", "\n", " \n", " \n", " \n", "\n", "\n", "\n", " \n", " \n", " \n", "\n", "\n", "\n", " \n", " \n", " \n", "\n", "\n", "\n", "\n", "\n", "\n", "\n", "\n", "\n", "\n", "\n", "\n", "\n", "\n", "\n", "\n", "\n", "\n", "\n", "\n", "\n", "\n", "\n", "\n", "\n", "\n", "\n", "\n", "\n", "\n", "\n", " \n", " \n", " \n", "\n", "\n", "\n", "\n", "\n", "\n" ] }, "metadata": {}, "execution_count": 5 } ], "cell_type": "code", "source": [ "terms = [Kinetic(),\n", " ExternalFromReal(X -> pot(X...)),\n", " PowerNonlinearity(C, α),\n", " Magnetic(Apot),\n", "]\n", "model = Model(lattice; n_electrons=n_electrons,\n", " terms=terms, spin_polarization=:spinless) # \"spinless electrons\"\n", "basis = PlaneWaveBasis(model, Ecut, kgrid=(1, 1, 1))\n", "scfres = direct_minimization(basis, tol=1e-5) # Reduce tol for production\n", "heatmap(scfres.ρ[:, :, 1, 1], c=:blues)" ], "metadata": {}, "execution_count": 5 } ], "nbformat_minor": 3, "metadata": { "language_info": { "file_extension": ".jl", "mimetype": "application/julia", "name": "julia", "version": "1.6.2" }, "kernelspec": { "name": "julia-1.6", "display_name": "Julia 1.6.2", "language": "julia" } }, "nbformat": 4 }