<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE article PUBLIC "-//NLM//DTD Journal Publishing DTD v2.3 20070202//EN" "journalpublishing.dtd">
<article article-type="research-article" dtd-version="2.3" xml:lang="EN" xmlns:mml="http://www.w3.org/1998/Math/MathML" xmlns:xlink="http://www.w3.org/1999/xlink">
<front>
<journal-meta>
<journal-id journal-id-type="publisher-id">Front. Astron. Space Sci.</journal-id>
<journal-title>Frontiers in Astronomy and Space Sciences</journal-title>
<abbrev-journal-title abbrev-type="pubmed">Front. Astron. Space Sci.</abbrev-journal-title>
<issn pub-type="epub">2296-987X</issn>
<publisher>
<publisher-name>Frontiers Media S.A.</publisher-name>
</publisher>
</journal-meta>
<article-meta>
<article-id pub-id-type="publisher-id">732275</article-id>
<article-id pub-id-type="doi">10.3389/fspas.2021.732275</article-id>
<article-categories>
<subj-group subj-group-type="heading">
<subject>Astronomy and Space Sciences</subject>
<subj-group>
<subject>Original Research</subject>
</subj-group>
</subj-group>
</article-categories>
<title-group>
<article-title>Neural Network Reconstruction of Plasma Space-Time</article-title>
<alt-title alt-title-type="left-running-head">Bard and Dorelli</alt-title>
<alt-title alt-title-type="right-running-head">Reconstruction of Plasma Space-Time</alt-title>
</title-group>
<contrib-group>
<contrib contrib-type="author" corresp="yes">
<name>
<surname>Bard</surname>
<given-names>C.</given-names>
</name>
<xref ref-type="corresp" rid="c001">&#x2a;</xref>
<uri xlink:href="https://loop.frontiersin.org/people/1380637/overview"/>
</contrib>
<contrib contrib-type="author">
<name>
<surname>Dorelli</surname>
<given-names>J.C.</given-names>
</name>
<uri xlink:href="https://loop.frontiersin.org/people/1436439/overview"/>
</contrib>
</contrib-group>
<aff>Geospace Physics Lab, NASA Goddard Space Flight Center, <addr-line>Greenbelt</addr-line>, <addr-line>MD</addr-line>, <country>United&#x20;States</country>
</aff>
<author-notes>
<fn fn-type="edited-by">
<p>
<bold>Edited by:</bold> <ext-link ext-link-type="uri" xlink:href="https://loop.frontiersin.org/people/910136/overview">Francesco Malara</ext-link>, University of Calabria, Italy</p>
</fn>
<fn fn-type="edited-by">
<p>
<bold>Reviewed by:</bold> <ext-link ext-link-type="uri" xlink:href="https://loop.frontiersin.org/people/533275/overview">Stefano Markidis</ext-link>, KTH Royal Institute of Technology, Sweden</p>
<p>
<ext-link ext-link-type="uri" xlink:href="https://loop.frontiersin.org/people/737177/overview">Emanuele Papini</ext-link>, University of Florence, Italy</p>
</fn>
<corresp id="c001">&#x2a;Correspondence: C. Bard, <email>christopher.bard@nasa.gov</email>
</corresp>
<fn fn-type="other">
<p>This article was submitted to Space Physics, a section of the journal Frontiers in Astronomy and Space Sciences</p>
</fn>
</author-notes>
<pub-date pub-type="epub">
<day>01</day>
<month>09</month>
<year>2021</year>
</pub-date>
<pub-date pub-type="collection">
<year>2021</year>
</pub-date>
<volume>8</volume>
<elocation-id>732275</elocation-id>
<history>
<date date-type="received">
<day>28</day>
<month>06</month>
<year>2021</year>
</date>
<date date-type="accepted">
<day>16</day>
<month>08</month>
<year>2021</year>
</date>
</history>
<permissions>
<copyright-statement>Copyright &#xa9; 2021 Bard and Dorelli.</copyright-statement>
<copyright-year>2021</copyright-year>
<copyright-holder>Bard and Dorelli</copyright-holder>
<license xlink:href="http://creativecommons.org/licenses/by/4.0/">
<p>This is an open-access article distributed under the terms of the Creative Commons Attribution License (CC BY). The use, distribution or reproduction in other forums is permitted, provided the original author(s) and the copyright owner(s) are credited and that the original publication in this journal is cited, in accordance with accepted academic practice. No use, distribution or reproduction is permitted which does not comply with these&#x20;terms.</p>
</license>
</permissions>
<abstract>
<p>We explore the use of Physics-Informed Neural Networks (PINNs) for reconstructing full magnetohydrodynamic solutions from partial samples, mimicking the recreation of space-time environments around spacecraft observations. We use one-dimensional magneto- and hydrodynamic benchmarks, namely the Sod, Ryu-Jones, and Brio-Wu shock tubes, to obtain the plasma state variables along linear trajectories in space-time. These simulated spacecraft measurements are used as constraining boundary data for a PINN which incorporates the full set of one-dimensional (magneto) hydrodynamics equations in its loss function. We find that the PINN is able to reconstruct the full 1D solution of these shock tubes even in the presence of Gaussian noise. However, our chosen PINN transformer architecture does not appear to scale well to higher dimensions. Nonetheless, PINNs in general could turn out to be a promising mechanism for reconstructing simple magnetic structures and dynamics from satellite observations in geospace.</p>
</abstract>
<kwd-group>
<kwd>space physics</kwd>
<kwd>reconstruction</kwd>
<kwd>physics-informed neural network</kwd>
<kwd>MHD</kwd>
<kwd>computational methods</kwd>
</kwd-group>
<contract-sponsor id="cn001">Goddard Space Flight Center<named-content content-type="fundref-id">10.13039/100006198</named-content>
</contract-sponsor>
</article-meta>
</front>
<body>
<sec id="s1">
<title>1 Introduction</title>
<p>Machine learning techniques for space science have grown popular in recent years, with diverse applications across the coupled Sun-Earth system. These include coronal holes (<xref ref-type="bibr" rid="B7">Bloch et&#x20;al., 2020</xref>; <xref ref-type="bibr" rid="B20">Illarionov et&#x20;al., 2020</xref>), solar flare forecasting (<xref ref-type="bibr" rid="B25">Li X. et&#x20;al., 2020</xref>; <xref ref-type="bibr" rid="B46">Wang X. et&#x20;al., 2020</xref>), solar wind prediction (<xref ref-type="bibr" rid="B44">Upendran et&#x20;al., 2020</xref>), and space weather forecasting (<xref ref-type="bibr" rid="B11">Camporeale (2019)</xref> and references), among other applications. However, most of these applications use general neural network architectures, such as convolutional neural networks, which utilize large amounts of observed data for training and discovery. Although solar-disk based missions like the Solar Dynamics Observatory (<xref ref-type="bibr" rid="B32">Pesnell et&#x20;al., 2012</xref>) are able to provide this abundance of data, other spacecraft missions (especially in planetary magnetospheres) do not have such an abundance. Indeed, magnetospheric space-based missions suffer from a sparsity problem: the amount of information they are able to measure is very tiny relative to the full scale of information present within the global system.</p>
<p>The usual method of &#x201c;filling in the blank&#x201d; for missing magnetospheric information is to perform computer simulations. If we wish to provide global context, we use large-scale, computationally-intensive global magnetohydrodyamic simulations of the magnetosphere (e.g., SWMF (<xref ref-type="bibr" rid="B43">T&#xf3;th et&#x20;al., 2005</xref>), GAMERA (<xref ref-type="bibr" rid="B47">Zhang et&#x20;al., 2019</xref>), OpenGCCM (<xref ref-type="bibr" rid="B33">Raeder et&#x20;al., 2001</xref>), Gkeyll (<xref ref-type="bibr" rid="B16">Dong et&#x20;al., 2019</xref>)). These simulations are typically initialized with solar wind conditions closest to the time of interest, and then compared directly with the spacecraft observations after run completion. Global simulations, however, are not sophisticated enough to assimilate spacecraft observations and determine the most likely magnetosphere dynamics which produced these observations. Unfortunately, it is often too computationally expensive to run multiple iterations in order to best fit the data, especially for more advanced simulations which extend beyond ideal&#x20;MHD.</p>
<p>There have recently been great strides in using data-mining methods for this type of reconstruction. <xref ref-type="bibr" rid="B37">Sitnov et&#x20;al. (2021)</xref> fuse nearest-neighbor regression of historical data with global magnetic field models in order to reconstruct the full magnetospheric magnetic field surrounding a particular event. However, their estimates for the plasma dynamics or the magnetic field evolution of the system are based on previous observations, and not do necessarily provide the actual time evolution of the system. Another example of combining data-mining and dynamic modeling is <xref ref-type="bibr" rid="B14">Chu et&#x20;al. (2017)</xref>, who present a neural-network-based dynamic electron density model derived from data across multiple space missions within the inner magnetosphere. This model is able to reproduce key features of plasmaspheric evolution during the erosion and refilling cycle, but it is limited to electron density.</p>
<p>We need a method which simultaneously provides an accurate fit to observed data but also provides a full, precise reconstruction of plasma states. We want to fully understand how events arise and will proceed within the temporal evolution of the magnetosphere. In order words, we need to be able to reconstruct the full picture surrounding spacecraft measurements, in both space and&#x20;time.</p>
<p>In this paper, we explore the use of Physics-Informed Neural Networks (PINNs) for reconstructing information from simulated spacecraft measurements within one-dimensional hydrodynamic (HD) and magnetohydrodynamic (MHD) benchmark problems. Recently, there has been much interest in the literature about using multi-layer perceptron networks as a mesh-free method to solve partial differential equations (PDEs) at given time snapshots, akin to a least-squares finite element method. These results (e.g., <xref ref-type="bibr" rid="B36">Sirignano and Spiliopoulos (2018)</xref>; <xref ref-type="bibr" rid="B34">Raissi et&#x20;al. (2019)</xref>; <xref ref-type="bibr" rid="B29">Michoski et&#x20;al. (2020)</xref>; <xref ref-type="bibr" rid="B45">Wang S. et&#x20;al. (2020)</xref>; <xref ref-type="bibr" rid="B26">Li Z. et&#x20;al. (2020)</xref>) demonstrate the remarkable potential of utilizing PINNs to determine the solution to a PDE at an arbitrary time <italic>t</italic> given an initial (<italic>t</italic>&#x20;&#x3d; 0) and boundary conditions. The PINNs are able to incorporate the PDE behavior into their loss function, and train the model such that the output is constrained to follow this equation-defined behavior. Indeed, some authors have even begun to explore how PINNs can supplement rather than replace traditional linear solvers (<xref ref-type="bibr" rid="B28">Markidis, 2021</xref>). While this is a great success, much is still unknown about how well this framework scales up to more complicated situations, especially from scalar functions (like Burgers&#x2019; equation) to vector conservation laws (like the system of MHD equations). This is especially important in the context of spacecraft data reconstruction, which are often interpreted using some variety of MHD. We would eventually like to know whether or not it is possible to use one-dimensional plasma data to precisely reconstruct two- or even three-dimensional structures and environments. Although it is reasonable to assume that 1D spatio-temporal data can be used to reconstruct a 2D (1 space &#x2b; 1 time) domain, it is unknown how well 1D data can apply to 3- or even 4D space-time domains.</p>
<p>Here, we begin this investigation by adapting a PINN model to our hypothetical (M)HD spacecraft scenario. Instead of specifying the solution at the edges of the space-time domain, we sample linear trajectories of data throughout the full domain. The observations provide a data matrix <inline-formula id="inf1">
<mml:math id="m1">
<mml:mrow>
<mml:mover accent="true">
<mml:mrow>
<mml:mi>D</mml:mi>
</mml:mrow>
<mml:mo>&#x304;</mml:mo>
</mml:mover>
</mml:mrow>
<mml:mo>&#x3d;</mml:mo>
<mml:mfenced open="[" close="]">
<mml:mrow>
<mml:msub>
<mml:mrow>
<mml:mi mathvariant="bold">U</mml:mi>
</mml:mrow>
<mml:mrow>
<mml:mn>1</mml:mn>
</mml:mrow>
</mml:msub>
<mml:mo>,</mml:mo>
<mml:msub>
<mml:mrow>
<mml:mi mathvariant="bold">U</mml:mi>
</mml:mrow>
<mml:mrow>
<mml:mn>2</mml:mn>
</mml:mrow>
</mml:msub>
<mml:mo>,</mml:mo>
<mml:mo>&#x2026;</mml:mo>
<mml:mo>,</mml:mo>
<mml:msub>
<mml:mrow>
<mml:mi mathvariant="bold">U</mml:mi>
</mml:mrow>
<mml:mrow>
<mml:mi>n</mml:mi>
</mml:mrow>
</mml:msub>
</mml:mrow>
</mml:mfenced>
</mml:math>
</inline-formula> for (M)HD state variables <bold>U</bold> at each sampled point (<italic>x</italic>
<sub>
<italic>n</italic>
</sub>, <italic>t</italic>
<sub>
<italic>n</italic>
</sub>) within the space-time domain. <inline-formula id="inf2">
<mml:math id="m2">
<mml:mrow>
<mml:mover accent="true">
<mml:mrow>
<mml:mi>D</mml:mi>
</mml:mrow>
<mml:mo>&#x304;</mml:mo>
</mml:mover>
</mml:mrow>
</mml:math>
</inline-formula> provides the boundary constraint for our PINN, while we constrain the output via a loss-function which incorporates the (M)HD equations. The resulting solutions are then consistent with both the (M)HD equations and the spacecraft data. We note that we are not attempting to solve the underlying (M)HD equations in the same manner as more traditional computer simulations; instead, we are adapting PINN-based PDE solver techniques to our reconstructions. Similar physics-based reconstruction efforts (not using PINNs) have been applied for flux ropes and flux transfer events (<xref ref-type="bibr" rid="B39">Slavin et&#x20;al., 2003</xref>; <xref ref-type="bibr" rid="B41">Sonnerup et&#x20;al., 2004</xref>; <xref ref-type="bibr" rid="B15">DiBraccio et&#x20;al., 2015</xref>), magnetopause structures (<xref ref-type="bibr" rid="B18">Hasegawa et&#x20;al., 2006</xref>; <xref ref-type="bibr" rid="B13">Chen and Hau, 2018</xref>) and reconnection (<xref ref-type="bibr" rid="B42">Teh and &#xc3;-. Sonnerup, 2008</xref>), and coronal mass ejections (<xref ref-type="bibr" rid="B31">Nieves-Chinchilla et&#x20;al., 2018</xref>).</p>
<p>The paper is presented as follows: <xref ref-type="sec" rid="s2">Section 2</xref> provides an overview of the PINN reconstruction method, including the architecture (<xref ref-type="fig" rid="F1">Figure&#x20;1</xref>) and loss function composition; <xref ref-type="sec" rid="s3">Sections 3.1&#x2013;3.3</xref> detail our experience and results with the (M)HD reconstruction; and we provide a brief discussion about extension to multiple dimensions in <xref ref-type="sec" rid="s4">Section&#x20;4</xref>.</p>
<fig id="F1" position="float">
<label>FIGURE 1</label>
<caption>
<p>Cartoon of PINN transformer architecture described in <xref ref-type="disp-formula" rid="e5">Eqs. 5</xref>&#x2013;<xref ref-type="disp-formula" rid="e9">9</xref> for an example two-layer network (<italic>L</italic>&#x20;&#x3d; 2), going left to right. The yellow boxes denote fully-connected linear layers with trainable tanh activation functions. The blue spheres denote elementwise operations (&#x0298; and &#x2b;) on their inputs.</p>
</caption>
<graphic xlink:href="fspas-08-732275-g001.tif"/>
</fig>
</sec>
<sec id="s2">
<title>2 Neural Network Reconstruction Method</title>
<p>Following <xref ref-type="bibr" rid="B34">Raissi et&#x20;al. (2019)</xref>, we create a physics-informed neural network (PINN) in order to find a solution <bold>U</bold>
<sub>
<italic>net</italic>
</sub> (<italic>&#x3b8;</italic>; <italic>x</italic>, <italic>t</italic>) which follows both a physical constraint<disp-formula id="e1">
<mml:math id="m3">
<mml:msub>
<mml:mrow>
<mml:mi>f</mml:mi>
</mml:mrow>
<mml:mrow>
<mml:mi>n</mml:mi>
<mml:mi>e</mml:mi>
<mml:mi>t</mml:mi>
</mml:mrow>
</mml:msub>
<mml:mo>&#x2254;</mml:mo>
<mml:mfrac>
<mml:mrow>
<mml:mi>&#x2202;</mml:mi>
<mml:msub>
<mml:mrow>
<mml:mi mathvariant="bold">U</mml:mi>
</mml:mrow>
<mml:mrow>
<mml:mi>n</mml:mi>
<mml:mi>e</mml:mi>
<mml:mi>t</mml:mi>
</mml:mrow>
</mml:msub>
</mml:mrow>
<mml:mrow>
<mml:mi>&#x2202;</mml:mi>
<mml:mi>t</mml:mi>
</mml:mrow>
</mml:mfrac>
<mml:mo>&#x2b;</mml:mo>
<mml:mfrac>
<mml:mrow>
<mml:mi>&#x2202;</mml:mi>
<mml:mi>F</mml:mi>
<mml:mrow>
<mml:mo stretchy="false">(</mml:mo>
<mml:mrow>
<mml:msub>
<mml:mrow>
<mml:mi mathvariant="bold">U</mml:mi>
</mml:mrow>
<mml:mrow>
<mml:mi>n</mml:mi>
<mml:mi>e</mml:mi>
<mml:mi>t</mml:mi>
</mml:mrow>
</mml:msub>
</mml:mrow>
<mml:mo stretchy="false">)</mml:mo>
</mml:mrow>
</mml:mrow>
<mml:mrow>
<mml:mi>&#x2202;</mml:mi>
<mml:mi>x</mml:mi>
</mml:mrow>
</mml:mfrac>
<mml:mo>&#x3d;</mml:mo>
<mml:mn>0</mml:mn>
</mml:math>
<label>(1)</label>
</disp-formula>and a boundary data constraint<disp-formula id="e2">
<mml:math id="m4">
<mml:msub>
<mml:mrow>
<mml:mi mathvariant="bold">U</mml:mi>
</mml:mrow>
<mml:mrow>
<mml:mi>n</mml:mi>
<mml:mi>e</mml:mi>
<mml:mi>t</mml:mi>
</mml:mrow>
</mml:msub>
<mml:mrow>
<mml:mo stretchy="false">(</mml:mo>
<mml:mrow>
<mml:msub>
<mml:mrow>
<mml:mi>x</mml:mi>
</mml:mrow>
<mml:mrow>
<mml:mi>i</mml:mi>
</mml:mrow>
</mml:msub>
<mml:mo>,</mml:mo>
<mml:msub>
<mml:mrow>
<mml:mi>t</mml:mi>
</mml:mrow>
<mml:mrow>
<mml:mi>i</mml:mi>
</mml:mrow>
</mml:msub>
</mml:mrow>
<mml:mo stretchy="false">)</mml:mo>
</mml:mrow>
<mml:mo>&#x3d;</mml:mo>
<mml:mi mathvariant="bold">U</mml:mi>
<mml:mrow>
<mml:mo stretchy="false">(</mml:mo>
<mml:mrow>
<mml:msub>
<mml:mrow>
<mml:mi>x</mml:mi>
</mml:mrow>
<mml:mrow>
<mml:mi>i</mml:mi>
</mml:mrow>
</mml:msub>
<mml:mo>,</mml:mo>
<mml:msub>
<mml:mrow>
<mml:mi>t</mml:mi>
</mml:mrow>
<mml:mrow>
<mml:mi>i</mml:mi>
</mml:mrow>
</mml:msub>
</mml:mrow>
<mml:mo stretchy="false">)</mml:mo>
</mml:mrow>
<mml:mo>,</mml:mo>
<mml:mspace width="0.3333em" class="nbsp"/>
<mml:mi>i</mml:mi>
<mml:mo>&#x3d;</mml:mo>
<mml:mn>1</mml:mn>
<mml:mo>&#x2026;</mml:mo>
<mml:msub>
<mml:mrow>
<mml:mi>N</mml:mi>
</mml:mrow>
<mml:mrow>
<mml:mi>b</mml:mi>
</mml:mrow>
</mml:msub>
</mml:math>
<label>(2)</label>
</disp-formula>for <italic>N</italic>
<sub>
<italic>b</italic>
</sub> coordinates of (<italic>x</italic>
<sub>
<italic>i</italic>
</sub>, <italic>t</italic>
<sub>
<italic>i</italic>
</sub>) in a space-time domain. In our application, <bold>U</bold> &#x3d; (<italic>&#x3c1;</italic>, <italic>v</italic>
<sub>
<italic>x</italic>
</sub>, <italic>v</italic>
<sub>
<italic>y</italic>
</sub>, <italic>v</italic>
<sub>
<italic>z</italic>
</sub>, <italic>P</italic>, <italic>B</italic>
<sub>
<italic>x</italic>
</sub>, <italic>B</italic>
<sub>
<italic>y</italic>
</sub>, <italic>B</italic>
<sub>
<italic>z</italic>
</sub>) is the MHD state vector, <italic>F</italic> is the one-dimensional MHD fluxes and <italic>&#x3b8;</italic> represents the parameters of the neural network <bold>U</bold>
<sub>
<italic>net</italic>
</sub>. The parameters <italic>&#x3b8;</italic> of the PINN can be learned by minimizing the mean squared error loss <italic>MSE</italic> &#x3d; <italic>L</italic>
<sub>
<italic>b</italic>
</sub> &#x2b; <italic>&#x3bb;L</italic>
<sub>
<italic>f</italic>
</sub>, where<disp-formula id="e3">
<mml:math id="m5">
<mml:msub>
<mml:mrow>
<mml:mi>L</mml:mi>
</mml:mrow>
<mml:mrow>
<mml:mi>b</mml:mi>
</mml:mrow>
</mml:msub>
<mml:mo>&#x3d;</mml:mo>
<mml:mfrac>
<mml:mrow>
<mml:mn>1</mml:mn>
</mml:mrow>
<mml:mrow>
<mml:msub>
<mml:mrow>
<mml:mi>N</mml:mi>
</mml:mrow>
<mml:mrow>
<mml:mi>b</mml:mi>
</mml:mrow>
</mml:msub>
</mml:mrow>
</mml:mfrac>
<mml:munderover accentunder="false" accent="false">
<mml:mrow>
<mml:mo>&#x2211;</mml:mo>
</mml:mrow>
<mml:mrow>
<mml:mi>i</mml:mi>
<mml:mo>&#x3d;</mml:mo>
<mml:mn>1</mml:mn>
</mml:mrow>
<mml:mrow>
<mml:msub>
<mml:mrow>
<mml:mi>N</mml:mi>
</mml:mrow>
<mml:mrow>
<mml:mi>b</mml:mi>
</mml:mrow>
</mml:msub>
</mml:mrow>
</mml:munderover>
<mml:mo stretchy="false">&#x2016;</mml:mo>
<mml:mi mathvariant="bold">U</mml:mi>
<mml:mrow>
<mml:mo stretchy="false">(</mml:mo>
<mml:mrow>
<mml:msub>
<mml:mrow>
<mml:mi>x</mml:mi>
</mml:mrow>
<mml:mrow>
<mml:mi>i</mml:mi>
</mml:mrow>
</mml:msub>
<mml:mo>,</mml:mo>
<mml:msub>
<mml:mrow>
<mml:mi>t</mml:mi>
</mml:mrow>
<mml:mrow>
<mml:mi>i</mml:mi>
</mml:mrow>
</mml:msub>
</mml:mrow>
<mml:mo stretchy="false">)</mml:mo>
</mml:mrow>
<mml:mo>&#x2212;</mml:mo>
<mml:msub>
<mml:mrow>
<mml:mi mathvariant="bold">U</mml:mi>
</mml:mrow>
<mml:mrow>
<mml:mi>n</mml:mi>
<mml:mi>e</mml:mi>
<mml:mi>t</mml:mi>
</mml:mrow>
</mml:msub>
<mml:mrow>
<mml:mo stretchy="false">(</mml:mo>
<mml:mrow>
<mml:msub>
<mml:mrow>
<mml:mi>x</mml:mi>
</mml:mrow>
<mml:mrow>
<mml:mi>i</mml:mi>
</mml:mrow>
</mml:msub>
<mml:mo>,</mml:mo>
<mml:msub>
<mml:mrow>
<mml:mi>t</mml:mi>
</mml:mrow>
<mml:mrow>
<mml:mi>i</mml:mi>
</mml:mrow>
</mml:msub>
</mml:mrow>
<mml:mo stretchy="false">)</mml:mo>
</mml:mrow>
<mml:msup>
<mml:mrow>
<mml:mo stretchy="false">&#x2016;</mml:mo>
</mml:mrow>
<mml:mrow>
<mml:mn>2</mml:mn>
</mml:mrow>
</mml:msup>
</mml:math>
<label>(3)</label>
</disp-formula>is the boundary data loss and<disp-formula id="e4">
<mml:math id="m6">
<mml:msub>
<mml:mrow>
<mml:mi>L</mml:mi>
</mml:mrow>
<mml:mrow>
<mml:mi>f</mml:mi>
</mml:mrow>
</mml:msub>
<mml:mo>&#x3d;</mml:mo>
<mml:mfrac>
<mml:mrow>
<mml:mn>1</mml:mn>
</mml:mrow>
<mml:mrow>
<mml:msub>
<mml:mrow>
<mml:mi>N</mml:mi>
</mml:mrow>
<mml:mrow>
<mml:mi>c</mml:mi>
</mml:mrow>
</mml:msub>
</mml:mrow>
</mml:mfrac>
<mml:munderover accentunder="false" accent="false">
<mml:mrow>
<mml:mo>&#x2211;</mml:mo>
</mml:mrow>
<mml:mrow>
<mml:mi>c</mml:mi>
<mml:mo>&#x3d;</mml:mo>
<mml:mn>1</mml:mn>
</mml:mrow>
<mml:mrow>
<mml:msub>
<mml:mrow>
<mml:mi>N</mml:mi>
</mml:mrow>
<mml:mrow>
<mml:mi>c</mml:mi>
</mml:mrow>
</mml:msub>
</mml:mrow>
</mml:munderover>
<mml:munderover accentunder="false" accent="false">
<mml:mrow>
<mml:mo>&#x2211;</mml:mo>
</mml:mrow>
<mml:mrow>
<mml:mi>q</mml:mi>
<mml:mo>&#x3d;</mml:mo>
<mml:mn>1</mml:mn>
</mml:mrow>
<mml:mrow>
<mml:msub>
<mml:mrow>
<mml:mi>N</mml:mi>
</mml:mrow>
<mml:mrow>
<mml:mi>q</mml:mi>
</mml:mrow>
</mml:msub>
</mml:mrow>
</mml:munderover>
<mml:mo stretchy="false">&#x2016;</mml:mo>
<mml:msub>
<mml:mrow>
<mml:mi>f</mml:mi>
</mml:mrow>
<mml:mrow>
<mml:mi>q</mml:mi>
<mml:mo>,</mml:mo>
<mml:mi>n</mml:mi>
<mml:mi>e</mml:mi>
<mml:mi>t</mml:mi>
</mml:mrow>
</mml:msub>
<mml:mrow>
<mml:mo stretchy="false">(</mml:mo>
<mml:mrow>
<mml:msub>
<mml:mrow>
<mml:mi>x</mml:mi>
</mml:mrow>
<mml:mrow>
<mml:mi>c</mml:mi>
</mml:mrow>
</mml:msub>
<mml:mo>,</mml:mo>
<mml:msub>
<mml:mrow>
<mml:mi>t</mml:mi>
</mml:mrow>
<mml:mrow>
<mml:mi>c</mml:mi>
</mml:mrow>
</mml:msub>
</mml:mrow>
<mml:mo stretchy="false">)</mml:mo>
</mml:mrow>
<mml:msup>
<mml:mrow>
<mml:mo stretchy="false">&#x2016;</mml:mo>
</mml:mrow>
<mml:mrow>
<mml:mn>2</mml:mn>
</mml:mrow>
</mml:msup>
</mml:math>
<label>(4)</label>
</disp-formula>is the physical constraint loss. <italic>&#x3bb;</italic> is the tradeoff parameter which balances the different scales between the data and physics losses. In our experiments, we found that setting <italic>&#x3bb;</italic> &#x3d; 1 was sufficient; however, we note that there are methods to find a more appropriate value for <italic>&#x3bb;</italic>, e.g., grid search or other hyperparameter optimization techniques. We use the ADAM optimizer (<xref ref-type="bibr" rid="B24">Kingma and Ba, 2014</xref>) for the minimization with an initial learning rate of 1 &#xd7; 10<sup>&#x2013;3</sup> and epsilon set to 1 &#xd7; 10<sup>&#x2013;4</sup>. We note that, although we did not use them in this paper, higher order optimizers, such as L-BFGS-B (<xref ref-type="bibr" rid="B48">Zhu et&#x20;al., 1997</xref>), are likely to be necessary for more complicated reconstructions. Indeed, <xref ref-type="bibr" rid="B28">Markidis (2021)</xref> (using DeepXDE: (<xref ref-type="bibr" rid="B27">Lu et&#x20;al., 2021</xref>)) demonstrate that using ADAM and then L-BFGS-B produces higher quality solutions than ADAM&#x20;alone.</p>
<p>
<italic>N</italic>
<sub>
<italic>q</italic>
</sub> here represents the total number of physical equations which constrain the PINN output (see <xref ref-type="sec" rid="s2-2">Section 2.2</xref>; <italic>N</italic>
<sub>
<italic>q</italic>
</sub> &#x3d; 9 for 1D MHD). (<italic>x</italic>
<sub>
<italic>c</italic>
</sub>, <italic>t</italic>
<sub>
<italic>c</italic>
</sub>) represent so-called &#x201c;collocation points&#x201d; (c.f. <xref ref-type="bibr" rid="B34">Raissi et&#x20;al. (2019)</xref>); these points, distributed throughout the reconstruction domain, are where the physics residuals (<xref ref-type="disp-formula" rid="e4">Eq. 4</xref>) are evaluated during the training process. <italic>N</italic>
<sub>
<italic>c</italic>
</sub> denotes the number of collocation points used in the loss calculation during each step. For each of the individual equations, the associated loss term is created by evaluating the time and spatial derivative of each state variable with respect to the input collocation point. Minimizing the residual to zero for each of the physics loss terms is identical to having the PINN output satisfy the set of equations over the full domain. It is not enough to simply fit the data and hope the output extrapolates well to the rest of the region; forcing the learning to account for the physics residuals allows the reconstruction to capture the intended structure.</p>
<p>In order to appropriately cover the reconstruction domain, we generate collocation points using Latin Hypercube sampling (<xref ref-type="bibr" rid="B21">Iman et&#x20;al., 1981</xref>); we use a implementation based on the library function pydoe2.lhs (<xref ref-type="bibr" rid="B38">Sj&#xf6;gren et&#x20;al., 2018</xref>). This sampling method allows for a relatively even spread of points throughout the domain. We repeat this sampling for each training step; frequently randomizing the collocation points allows for a fuller coverage of space-time throughout training. Collocation point densities reported in this paper follow the format <italic>N</italic>
<sup>2</sup>, where <italic>N</italic> is the number of evenly-distributed spaces along each of the space and time dimensions; the hypercube sampling generates one randomly selected point in each of the <italic>N</italic>
<sup>2</sup> boxes which make up the full sampling grid. We note that we have not attempted any sort of refinement of collocation point coverage, e.g., adding a higher density of points around steeper gradients (<xref ref-type="bibr" rid="B27">Lu et&#x20;al., 2021</xref>).</p>
<p>At first, we used automatic differentiation (AD; see, e.g., history and review in <xref ref-type="bibr" rid="B5">Baydin et&#x20;al. (2018)</xref>) to get the derivatives of the output <bold>U</bold> state vector with respect to the input (<italic>x</italic>, <italic>t</italic>) collocation points (as in <xref ref-type="disp-formula" rid="e1">Eq. 1</xref>). It is essential to get the individual derivatives since we wish for the individual equations to be satisfied independently, i.e.,&#x20;<italic>f</italic>
<sub>
<italic>q</italic>,<italic>net</italic>
</sub> &#x3d; 0 for all <italic>q</italic>. However, we found that typical AD algorithms (including those in tensorflow) calculate the sum of the derivatives of the input matrix, since they use matrix-vector products. Thus, in order to get individual derivatives, we have to run the AD algorithm once per variable (8 evaluations for MHD). Otherwise, we end up with a sum of all the derivatives (i.e.,&#x20;<italic>&#x2202;&#x3c1;</italic>/<italic>&#x2202;x</italic> &#x2b; <italic>&#x2202;v</italic>
<sub>
<italic>x</italic>
</sub>/<italic>&#x2202;x</italic> &#x2b; &#x2026; for&#x20;MHD).</p>
<p>As a result, we found that it was faster to use the network output to approximate the gradient at the collocation points. To do this, we use the central difference formula <italic>&#x2202;U</italic>/<italic>&#x2202;x</italic> &#x2248; [<italic>U</italic> (<italic>x</italic>&#x20;&#x2b; &#x394;<italic>x</italic>) &#x2212; <italic>U</italic>(<italic>x</italic>&#x20;&#x2212;&#x394;<italic>x</italic>)]/2&#x394;<italic>x</italic> (and similar for <italic>&#x2202;U</italic>/<italic>&#x2202;t</italic>). For a given set of collocation points (<italic>x</italic>
<sub>
<italic>i</italic>
</sub>, <italic>t</italic>
<sub>
<italic>i</italic>
</sub>), we make four forward passes through the network for <bold>U</bold>(<italic>x</italic>
<sub>
<italic>i</italic>
</sub> &#xb1;&#x394;<italic>x</italic>, <italic>t</italic>
<sub>
<italic>i</italic>
</sub>) and <bold>U</bold>(<italic>x</italic>
<sub>
<italic>i</italic>
</sub>, <italic>t</italic>
<sub>
<italic>i</italic>
</sub> &#xb1;&#x394;<italic>t</italic>); these values are used to calculate the spatial and temporal derivatives according to the above formulae. The MHD equations (<xref ref-type="sec" rid="s2-2">Section 2.2</xref>) also require knowing the values of <italic>U</italic> at the collocation point, so another forward pass is required to get <bold>U</bold>(<italic>x</italic>
<sub>
<italic>i</italic>
</sub>, <italic>t</italic>
<sub>
<italic>i</italic>
</sub>). These five forward passes provide all the relevant information necessary to evaluate the residuals for MHD (<italic>L</italic>
<sub>
<italic>f</italic>
</sub> ; <xref ref-type="disp-formula" rid="e4">Eq. 4</xref>). We arbitrarily define &#x394;<italic>x</italic>&#x20;&#x3d; &#x394;<italic>t</italic>&#x20;&#x3d; 0.001; there is no effect on runtime for different values since the forward pass does not depend on &#x394;<italic>x</italic> or &#x394;<italic>t</italic>. However, the choice must be sufficient to accurately resolve the physical structures present. Although we use numerical differentiation to calculate the MHD residuals <italic>L</italic>
<sub>
<italic>f</italic>
</sub>, we still use automatic differentiation to calculate the overall loss gradient with respect to the PINN parameters <italic>&#x3b8;</italic>.</p>
<p>We note that the boundary conditions <bold>U</bold>(<italic>x</italic>
<sub>
<italic>i</italic>
</sub>, <italic>t</italic>
<sub>
<italic>i</italic>
</sub>) do not necessarily need to be defined in the traditional sense, i.e.,&#x20;on fixed exterior edges within the space-time domain. These would be defined at all <italic>x</italic> at <italic>t</italic>&#x20;&#x3d; 0 and/or for all <italic>t</italic> at particular x edges, e.g., <italic>x</italic>&#x20;&#x3d; <italic>x</italic>
<sub>
<italic>L</italic>
</sub> and <italic>x</italic>&#x20;&#x3d; <italic>x</italic>
<sub>
<italic>R</italic>
</sub>. Since we are imitating spacecraft data sampling, our boundary conditions cut across the <italic>x</italic>&#x20;&#x2212; <italic>t</italic> domain (e.g., black trajectory lines in <xref ref-type="fig" rid="F2">Figure&#x20;2</xref>) and we do not specify edge behavior.</p>
<fig id="F2" position="float">
<label>FIGURE 2</label>
<caption>
<p>
<bold>(A)</bold>: Snapshot of Sod shocktube density at <italic>t</italic>&#x20;&#x3d; 0.2. <bold>(B)</bold>: Full space-time picture of density; white line indicates <italic>t</italic>&#x20;&#x3d; 0.2; black lines represent trajectories of data sampling for neural network boundary&#x20;fits.</p>
</caption>
<graphic xlink:href="fspas-08-732275-g002.tif"/>
</fig>
<sec id="s2-1">
<title>2.1 Architecture</title>
<p>Recent studies in PINNs (e.g., <xref ref-type="bibr" rid="B45">Wang S. et&#x20;al. (2020)</xref> and references thereof) are unclear as to the best approach for solving PDEs: most rely on the capacity of over-parameterized networks in order to reconstruct the appropriate solution of a given PDE. After experimenting with several types of fully-connected layers, including a multi-layer perceptron (<xref ref-type="bibr" rid="B34">Raissi et&#x20;al., 2019</xref>), we found that the fully-connected transformer network presented in <xref ref-type="bibr" rid="B45">Wang S. et&#x20;al. (2020)</xref> was the quickest to train and best reproduced the complex solutions to the benchmarks in this paper. We note that this does not necessarily mean that our choice of architecture is the best for PINNs in general. Indeed, we had difficulty adapting this network to higher dimensional reconstructions (see discussion in <xref ref-type="sec" rid="s4-1">Section&#x20;4.1</xref>), which suggests that other kinds of architectures need to be explored in future&#x20;work.</p>
<p>This transformer neural network architecture is designed to take advantage of residual connections within the hidden layers and multiplicative interactions between the input dimensions:<disp-formula id="e5">
<mml:math id="m7">
<mml:mtable class="align" columnalign="left">
<mml:mtr>
<mml:mtd columnalign="right">
<mml:msub>
<mml:mrow>
<mml:mi>U</mml:mi>
</mml:mrow>
<mml:mrow>
<mml:mi>t</mml:mi>
</mml:mrow>
</mml:msub>
<mml:mo>&#x3d;</mml:mo>
</mml:mtd>
<mml:mtd columnalign="left">
<mml:mi>&#x3d5;</mml:mi>
<mml:mrow>
<mml:mo stretchy="false">(</mml:mo>
<mml:mrow>
<mml:mi>X</mml:mi>
<mml:msup>
<mml:mrow>
<mml:mi>W</mml:mi>
</mml:mrow>
<mml:mrow>
<mml:mn>1</mml:mn>
</mml:mrow>
</mml:msup>
<mml:mo>&#x2b;</mml:mo>
<mml:msup>
<mml:mrow>
<mml:mi>B</mml:mi>
</mml:mrow>
<mml:mrow>
<mml:mn>1</mml:mn>
</mml:mrow>
</mml:msup>
</mml:mrow>
<mml:mo stretchy="false">)</mml:mo>
</mml:mrow>
<mml:mo>;</mml:mo>
<mml:mspace width="0.3333em" class="nbsp"/>
<mml:msub>
<mml:mrow>
<mml:mi>V</mml:mi>
</mml:mrow>
<mml:mrow>
<mml:mi>t</mml:mi>
</mml:mrow>
</mml:msub>
<mml:mo>&#x3d;</mml:mo>
<mml:mi>&#x3d5;</mml:mi>
<mml:mrow>
<mml:mo stretchy="false">(</mml:mo>
<mml:mrow>
<mml:mi>X</mml:mi>
<mml:msup>
<mml:mrow>
<mml:mi>W</mml:mi>
</mml:mrow>
<mml:mrow>
<mml:mn>2</mml:mn>
</mml:mrow>
</mml:msup>
<mml:mo>&#x2b;</mml:mo>
<mml:msup>
<mml:mrow>
<mml:mi>B</mml:mi>
</mml:mrow>
<mml:mrow>
<mml:mn>2</mml:mn>
</mml:mrow>
</mml:msup>
</mml:mrow>
<mml:mo stretchy="false">)</mml:mo>
</mml:mrow>
</mml:mtd>
</mml:mtr>
</mml:mtable>
</mml:math>
<label>(5)</label>
</disp-formula>
<disp-formula id="e6">
<mml:math id="m8">
<mml:mtable class="align" columnalign="left">
<mml:mtr>
<mml:mtd columnalign="right">
<mml:msup>
<mml:mrow>
<mml:mi>H</mml:mi>
</mml:mrow>
<mml:mrow>
<mml:mrow>
<mml:mo stretchy="false">(</mml:mo>
<mml:mrow>
<mml:mn>1</mml:mn>
</mml:mrow>
<mml:mo stretchy="false">)</mml:mo>
</mml:mrow>
</mml:mrow>
</mml:msup>
</mml:mtd>
<mml:mtd columnalign="left">
<mml:mo>&#x3d;</mml:mo>
<mml:mi>&#x3d5;</mml:mi>
<mml:mrow>
<mml:mo stretchy="false">(</mml:mo>
<mml:mrow>
<mml:mi>X</mml:mi>
<mml:msup>
<mml:mrow>
<mml:mi>W</mml:mi>
</mml:mrow>
<mml:mrow>
<mml:mi>z</mml:mi>
<mml:mo>,</mml:mo>
<mml:mn>1</mml:mn>
</mml:mrow>
</mml:msup>
<mml:mo>&#x2b;</mml:mo>
<mml:msup>
<mml:mrow>
<mml:mi>B</mml:mi>
</mml:mrow>
<mml:mrow>
<mml:mi>z</mml:mi>
<mml:mo>,</mml:mo>
<mml:mn>1</mml:mn>
</mml:mrow>
</mml:msup>
</mml:mrow>
<mml:mo stretchy="false">)</mml:mo>
</mml:mrow>
</mml:mtd>
</mml:mtr>
</mml:mtable>
</mml:math>
<label>(6)</label>
</disp-formula>
<disp-formula id="e7">
<mml:math id="m9">
<mml:mtable class="align" columnalign="left">
<mml:mtr>
<mml:mtd columnalign="right">
<mml:msup>
<mml:mrow>
<mml:mi>Z</mml:mi>
</mml:mrow>
<mml:mrow>
<mml:mi>k</mml:mi>
</mml:mrow>
</mml:msup>
</mml:mtd>
<mml:mtd columnalign="left">
<mml:mo>&#x3d;</mml:mo>
<mml:mi>&#x3d5;</mml:mi>
<mml:mrow>
<mml:mo stretchy="false">(</mml:mo>
<mml:mrow>
<mml:msup>
<mml:mrow>
<mml:mi>H</mml:mi>
</mml:mrow>
<mml:mrow>
<mml:mi>k</mml:mi>
</mml:mrow>
</mml:msup>
<mml:msup>
<mml:mrow>
<mml:mi>W</mml:mi>
</mml:mrow>
<mml:mrow>
<mml:mi>z</mml:mi>
<mml:mo>,</mml:mo>
<mml:mi>k</mml:mi>
</mml:mrow>
</mml:msup>
<mml:mo>&#x2b;</mml:mo>
<mml:msup>
<mml:mrow>
<mml:mi>B</mml:mi>
</mml:mrow>
<mml:mrow>
<mml:mi>z</mml:mi>
<mml:mo>,</mml:mo>
<mml:mi>k</mml:mi>
</mml:mrow>
</mml:msup>
</mml:mrow>
<mml:mo stretchy="false">)</mml:mo>
</mml:mrow>
</mml:mtd>
</mml:mtr>
</mml:mtable>
</mml:math>
<label>(7)</label>
</disp-formula>
<disp-formula id="e8">
<mml:math id="m10">
<mml:mtable class="align" columnalign="left">
<mml:mtr>
<mml:mtd columnalign="right">
<mml:msup>
<mml:mrow>
<mml:mi>H</mml:mi>
</mml:mrow>
<mml:mrow>
<mml:mi>k</mml:mi>
<mml:mo>&#x2b;</mml:mo>
<mml:mn>1</mml:mn>
</mml:mrow>
</mml:msup>
</mml:mtd>
<mml:mtd columnalign="left">
<mml:mo>&#x3d;</mml:mo>
<mml:mrow>
<mml:mo stretchy="false">(</mml:mo>
<mml:mrow>
<mml:mn>1</mml:mn>
<mml:mo>&#x2212;</mml:mo>
<mml:msup>
<mml:mrow>
<mml:mi>Z</mml:mi>
</mml:mrow>
<mml:mrow>
<mml:mi>k</mml:mi>
</mml:mrow>
</mml:msup>
</mml:mrow>
<mml:mo stretchy="false">)</mml:mo>
</mml:mrow>
<mml:mo>&#x0298;</mml:mo>
<mml:msub>
<mml:mrow>
<mml:mi mathvariant="italic">U</mml:mi>
</mml:mrow>
<mml:mrow>
<mml:mi>t</mml:mi>
</mml:mrow>
</mml:msub>
<mml:mo>&#x2b;</mml:mo>
<mml:msup>
<mml:mrow>
<mml:mi>Z</mml:mi>
</mml:mrow>
<mml:mrow>
<mml:mi>k</mml:mi>
</mml:mrow>
</mml:msup>
<mml:mo>&#x0298;</mml:mo>
<mml:msub>
<mml:mrow>
<mml:mi>V</mml:mi>
</mml:mrow>
<mml:mrow>
<mml:mi>t</mml:mi>
</mml:mrow>
</mml:msub>
</mml:mtd>
</mml:mtr>
</mml:mtable>
</mml:math>
<label>(8)</label>
</disp-formula>
<disp-formula id="e9">
<mml:math id="m11">
<mml:mtable class="align" columnalign="left">
<mml:mtr>
<mml:mtd columnalign="right">
<mml:msub>
<mml:mrow>
<mml:mi>f</mml:mi>
</mml:mrow>
<mml:mrow>
<mml:mi>&#x3b8;</mml:mi>
</mml:mrow>
</mml:msub>
<mml:mrow>
<mml:mo stretchy="false">(</mml:mo>
<mml:mrow>
<mml:mi>X</mml:mi>
</mml:mrow>
<mml:mo stretchy="false">)</mml:mo>
</mml:mrow>
</mml:mtd>
<mml:mtd columnalign="left">
<mml:mo>&#x3d;</mml:mo>
<mml:msup>
<mml:mrow>
<mml:mi>H</mml:mi>
</mml:mrow>
<mml:mrow>
<mml:mi>L</mml:mi>
<mml:mo>&#x2b;</mml:mo>
<mml:mn>1</mml:mn>
</mml:mrow>
</mml:msup>
<mml:mi>W</mml:mi>
<mml:mo>&#x2b;</mml:mo>
<mml:mi>B</mml:mi>
<mml:mo>,</mml:mo>
</mml:mtd>
</mml:mtr>
</mml:mtable>
</mml:math>
<label>(9)</label>
</disp-formula>where <italic>k</italic>&#x20;&#x3d; 1&#x20;&#x2026; <italic>L</italic> is the <italic>n</italic>th layer of the network, <italic>L</italic> is the number of layers, <italic>X</italic> is the (<italic>n</italic>, <italic>d</italic>) input matrix of data points, <italic>&#x3d5;</italic> is the activation function, <italic>W</italic> and <italic>B</italic> are the weights and biases for each layer, and &#x0298; denotes element-wise multiplication. The input array <italic>X</italic> is an array of positions (x,t) in space-time and the output is the plasma state vector <bold>U</bold> &#x3d; (<italic>&#x3c1;</italic>, <italic>v</italic>
<sub>
<italic>x</italic>
</sub>, <italic>v</italic>
<sub>
<italic>y</italic>
</sub>, <italic>v</italic>
<sub>
<italic>z</italic>
</sub>, <italic>P</italic>, <italic>B</italic>
<sub>
<italic>x</italic>
</sub>, <italic>B</italic>
<sub>
<italic>y</italic>
</sub>, <italic>B</italic>
<sub>
<italic>z</italic>
</sub>). For the space-time reconstructions in this paper, <italic>d</italic>&#x20;&#x3d;&#x20;2.</p>
<p>Although <xref ref-type="bibr" rid="B45">Wang et&#x20;al. (2020a)</xref> used fixed hyperbolic tangent (tanh) activation functions, we found that using trainable tanh functions (e.g., <xref ref-type="bibr" rid="B12">Chen and Chang (1996)</xref>; <xref ref-type="bibr" rid="B22">Jagtap et&#x20;al. (2020)</xref>) delivered a more accurate reconstruction, i.e.,:<disp-formula id="e10">
<mml:math id="m12">
<mml:mi>&#x3d5;</mml:mi>
<mml:mrow>
<mml:mo stretchy="false">(</mml:mo>
<mml:mrow>
<mml:mi>x</mml:mi>
</mml:mrow>
<mml:mo stretchy="false">)</mml:mo>
</mml:mrow>
<mml:mo>&#x3d;</mml:mo>
<mml:mi>tanh</mml:mi>
<mml:mo>&#x2061;</mml:mo>
<mml:mi>&#x3b2;</mml:mi>
<mml:mi>x</mml:mi>
</mml:math>
<label>(10)</label>
</disp-formula>with <italic>&#x3b2;</italic> being an additional trainable parameter within each node of a hidden layer. We do not believe there is anything special about the trainable tanh functions that make it well suited for our particular class of problems; the added parameters simply allow for a greater flexibility in representing the final solution. We note that <xref ref-type="bibr" rid="B28">Markidis (2021)</xref> found that trainable sigmoid activation functions may work better for discontinuous source terms than trainable tanh activation functions. In general, we found that using these trainable activation functions reduced the number of steps needed for training. We refer the reader to, e.g., <xref ref-type="bibr" rid="B2">Apicella et&#x20;al. (2020)</xref> for a survey on trainable activation functions.</p>
<p>Finally, our implementation environment was run on a Dell Latitude E7450 with a Intel Core i7-5600 CPU @ 2.6&#xa0;GHz using Windows Subsystem for Linux. We used the tensorflow library v. 2.3.1 (<xref ref-type="bibr" rid="B1">Abadi et&#x20;al., 2015</xref>) and python version 3.6.9. We note that the default variable dtype in tensorflow is float64, but we set the dtype in our program to float32.</p>
<p>Tensorflow allows GPU acceleration, but we did not experiment with this. The anticipated speedup of using a GPU would be at least 3-6x, depending on the type of GPU&#x20;used.</p>
</sec>
<sec id="s2-2">
<title>2.2 Loss Function From Physics Constraints</title>
<p>We use the one-dimensional MHD equations in the derivation of our PINN physical constraint loss (<xref ref-type="disp-formula" rid="e4">Eq. 4</xref>). We use the primitive formulation along <italic>x</italic> assuming <italic>&#x2202;</italic>/<italic>&#x2202;y</italic> &#x3d; <italic>&#x2202;</italic>/<italic>&#x2202;z</italic> &#x3d; 0:<disp-formula id="e11">
<mml:math id="m13">
<mml:mtable class="align" columnalign="left">
<mml:mtr>
<mml:mtd columnalign="right">
<mml:mfrac>
<mml:mrow>
<mml:mi>&#x2202;</mml:mi>
<mml:mi>&#x3c1;</mml:mi>
</mml:mrow>
<mml:mrow>
<mml:mi>&#x2202;</mml:mi>
<mml:mi>t</mml:mi>
</mml:mrow>
</mml:mfrac>
<mml:mo>&#x2b;</mml:mo>
<mml:msub>
<mml:mrow>
<mml:mi>v</mml:mi>
</mml:mrow>
<mml:mrow>
<mml:mi>x</mml:mi>
</mml:mrow>
</mml:msub>
<mml:mfrac>
<mml:mrow>
<mml:mi>&#x2202;</mml:mi>
<mml:mi>&#x3c1;</mml:mi>
</mml:mrow>
<mml:mrow>
<mml:mi>&#x2202;</mml:mi>
<mml:mi>x</mml:mi>
</mml:mrow>
</mml:mfrac>
<mml:mo>&#x2b;</mml:mo>
<mml:mi>&#x3c1;</mml:mi>
<mml:mfrac>
<mml:mrow>
<mml:mi>&#x2202;</mml:mi>
<mml:msub>
<mml:mrow>
<mml:mi>v</mml:mi>
</mml:mrow>
<mml:mrow>
<mml:mi>x</mml:mi>
</mml:mrow>
</mml:msub>
</mml:mrow>
<mml:mrow>
<mml:mi>&#x2202;</mml:mi>
<mml:mi>x</mml:mi>
</mml:mrow>
</mml:mfrac>
<mml:mo>&#x3d;</mml:mo>
<mml:mn>0</mml:mn>
</mml:mtd>
</mml:mtr>
</mml:mtable>
</mml:math>
<label>(11)</label>
</disp-formula>
<disp-formula id="e12">
<mml:math id="m14">
<mml:mtable class="align" columnalign="left">
<mml:mtr>
<mml:mtd columnalign="right">
<mml:mi>&#x3c1;</mml:mi>
<mml:mfrac>
<mml:mrow>
<mml:mi>&#x2202;</mml:mi>
<mml:msub>
<mml:mrow>
<mml:mi>v</mml:mi>
</mml:mrow>
<mml:mrow>
<mml:mi>x</mml:mi>
</mml:mrow>
</mml:msub>
</mml:mrow>
<mml:mrow>
<mml:mi>&#x2202;</mml:mi>
<mml:mi>t</mml:mi>
</mml:mrow>
</mml:mfrac>
<mml:mo>&#x2b;</mml:mo>
<mml:mi>&#x3c1;</mml:mi>
<mml:msub>
<mml:mrow>
<mml:mi>v</mml:mi>
</mml:mrow>
<mml:mrow>
<mml:mi>x</mml:mi>
</mml:mrow>
</mml:msub>
<mml:mfrac>
<mml:mrow>
<mml:mi>&#x2202;</mml:mi>
<mml:msub>
<mml:mrow>
<mml:mi>v</mml:mi>
</mml:mrow>
<mml:mrow>
<mml:mi>x</mml:mi>
</mml:mrow>
</mml:msub>
</mml:mrow>
<mml:mrow>
<mml:mi>&#x2202;</mml:mi>
<mml:mi>x</mml:mi>
</mml:mrow>
</mml:mfrac>
<mml:mo>&#x2b;</mml:mo>
<mml:mfrac>
<mml:mrow>
<mml:mi>&#x2202;</mml:mi>
<mml:mi>P</mml:mi>
</mml:mrow>
<mml:mrow>
<mml:mi>&#x2202;</mml:mi>
<mml:mi>x</mml:mi>
</mml:mrow>
</mml:mfrac>
<mml:mo>&#x2b;</mml:mo>
<mml:msub>
<mml:mrow>
<mml:mi>B</mml:mi>
</mml:mrow>
<mml:mrow>
<mml:mi>y</mml:mi>
</mml:mrow>
</mml:msub>
<mml:mfrac>
<mml:mrow>
<mml:mi>&#x2202;</mml:mi>
<mml:msub>
<mml:mrow>
<mml:mi>B</mml:mi>
</mml:mrow>
<mml:mrow>
<mml:mi>y</mml:mi>
</mml:mrow>
</mml:msub>
</mml:mrow>
<mml:mrow>
<mml:mi>&#x2202;</mml:mi>
<mml:mi>x</mml:mi>
</mml:mrow>
</mml:mfrac>
<mml:mo>&#x2b;</mml:mo>
<mml:mi>B</mml:mi>
<mml:mi>z</mml:mi>
<mml:mfrac>
<mml:mrow>
<mml:mi>&#x2202;</mml:mi>
<mml:msub>
<mml:mrow>
<mml:mi>B</mml:mi>
</mml:mrow>
<mml:mrow>
<mml:mi>z</mml:mi>
</mml:mrow>
</mml:msub>
</mml:mrow>
<mml:mrow>
<mml:mi>&#x2202;</mml:mi>
<mml:mi>x</mml:mi>
</mml:mrow>
</mml:mfrac>
<mml:mo>&#x2212;</mml:mo>
<mml:mi>&#x3c1;</mml:mi>
<mml:mi>&#x3bd;</mml:mi>
<mml:mfrac>
<mml:mrow>
<mml:msup>
<mml:mrow>
<mml:mi>&#x2202;</mml:mi>
</mml:mrow>
<mml:mrow>
<mml:mn>2</mml:mn>
</mml:mrow>
</mml:msup>
<mml:msub>
<mml:mrow>
<mml:mi>v</mml:mi>
</mml:mrow>
<mml:mrow>
<mml:mi>x</mml:mi>
</mml:mrow>
</mml:msub>
</mml:mrow>
<mml:mrow>
<mml:mi>&#x2202;</mml:mi>
<mml:msup>
<mml:mrow>
<mml:mi>x</mml:mi>
</mml:mrow>
<mml:mrow>
<mml:mn>2</mml:mn>
</mml:mrow>
</mml:msup>
</mml:mrow>
</mml:mfrac>
<mml:mo>&#x3d;</mml:mo>
<mml:mn>0</mml:mn>
</mml:mtd>
</mml:mtr>
</mml:mtable>
</mml:math>
<label>(12)</label>
</disp-formula>
<disp-formula id="e13">
<mml:math id="m15">
<mml:mtable class="align" columnalign="left">
<mml:mtr>
<mml:mtd columnalign="right">
<mml:mi>&#x3c1;</mml:mi>
<mml:mfrac>
<mml:mrow>
<mml:mi>&#x2202;</mml:mi>
<mml:msub>
<mml:mrow>
<mml:mi>v</mml:mi>
</mml:mrow>
<mml:mrow>
<mml:mi>y</mml:mi>
</mml:mrow>
</mml:msub>
</mml:mrow>
<mml:mrow>
<mml:mi>&#x2202;</mml:mi>
<mml:mi>t</mml:mi>
</mml:mrow>
</mml:mfrac>
<mml:mo>&#x2b;</mml:mo>
<mml:mi>&#x3c1;</mml:mi>
<mml:msub>
<mml:mrow>
<mml:mi>v</mml:mi>
</mml:mrow>
<mml:mrow>
<mml:mi>x</mml:mi>
</mml:mrow>
</mml:msub>
<mml:mfrac>
<mml:mrow>
<mml:mi>&#x2202;</mml:mi>
<mml:msub>
<mml:mrow>
<mml:mi>v</mml:mi>
</mml:mrow>
<mml:mrow>
<mml:mi>y</mml:mi>
</mml:mrow>
</mml:msub>
</mml:mrow>
<mml:mrow>
<mml:mi>&#x2202;</mml:mi>
<mml:mi>x</mml:mi>
</mml:mrow>
</mml:mfrac>
<mml:mo>&#x2212;</mml:mo>
<mml:msub>
<mml:mrow>
<mml:mi>B</mml:mi>
</mml:mrow>
<mml:mrow>
<mml:mi>x</mml:mi>
</mml:mrow>
</mml:msub>
<mml:mfrac>
<mml:mrow>
<mml:mi>&#x2202;</mml:mi>
<mml:msub>
<mml:mrow>
<mml:mi>B</mml:mi>
</mml:mrow>
<mml:mrow>
<mml:mi>y</mml:mi>
</mml:mrow>
</mml:msub>
</mml:mrow>
<mml:mrow>
<mml:mi>&#x2202;</mml:mi>
<mml:mi>x</mml:mi>
</mml:mrow>
</mml:mfrac>
<mml:mo>&#x3d;</mml:mo>
<mml:mn>0</mml:mn>
</mml:mtd>
</mml:mtr>
</mml:mtable>
</mml:math>
<label>(13)</label>
</disp-formula>
<disp-formula id="e14">
<mml:math id="m16">
<mml:mtable class="align" columnalign="left">
<mml:mtr>
<mml:mtd columnalign="right">
<mml:mi>&#x3c1;</mml:mi>
<mml:mfrac>
<mml:mrow>
<mml:mi>&#x2202;</mml:mi>
<mml:msub>
<mml:mrow>
<mml:mi>v</mml:mi>
</mml:mrow>
<mml:mrow>
<mml:mi>z</mml:mi>
</mml:mrow>
</mml:msub>
</mml:mrow>
<mml:mrow>
<mml:mi>&#x2202;</mml:mi>
<mml:mi>t</mml:mi>
</mml:mrow>
</mml:mfrac>
<mml:mo>&#x2b;</mml:mo>
<mml:mi>&#x3c1;</mml:mi>
<mml:msub>
<mml:mrow>
<mml:mi>v</mml:mi>
</mml:mrow>
<mml:mrow>
<mml:mi>x</mml:mi>
</mml:mrow>
</mml:msub>
<mml:mfrac>
<mml:mrow>
<mml:mi>&#x2202;</mml:mi>
<mml:msub>
<mml:mrow>
<mml:mi>v</mml:mi>
</mml:mrow>
<mml:mrow>
<mml:mi>z</mml:mi>
</mml:mrow>
</mml:msub>
</mml:mrow>
<mml:mrow>
<mml:mi>&#x2202;</mml:mi>
<mml:mi>x</mml:mi>
</mml:mrow>
</mml:mfrac>
<mml:mo>&#x2212;</mml:mo>
<mml:msub>
<mml:mrow>
<mml:mi>B</mml:mi>
</mml:mrow>
<mml:mrow>
<mml:mi>x</mml:mi>
</mml:mrow>
</mml:msub>
<mml:mfrac>
<mml:mrow>
<mml:mi>&#x2202;</mml:mi>
<mml:msub>
<mml:mrow>
<mml:mi>B</mml:mi>
</mml:mrow>
<mml:mrow>
<mml:mi>z</mml:mi>
</mml:mrow>
</mml:msub>
</mml:mrow>
<mml:mrow>
<mml:mi>&#x2202;</mml:mi>
<mml:mi>x</mml:mi>
</mml:mrow>
</mml:mfrac>
<mml:mo>&#x3d;</mml:mo>
<mml:mn>0</mml:mn>
</mml:mtd>
</mml:mtr>
</mml:mtable>
</mml:math>
<label>(14)</label>
</disp-formula>
<disp-formula id="e15">
<mml:math id="m17">
<mml:mtable class="align" columnalign="left">
<mml:mtr>
<mml:mtd columnalign="right">
<mml:mfrac>
<mml:mrow>
<mml:mi>&#x2202;</mml:mi>
<mml:mi>P</mml:mi>
</mml:mrow>
<mml:mrow>
<mml:mi>&#x2202;</mml:mi>
<mml:mi>t</mml:mi>
</mml:mrow>
</mml:mfrac>
<mml:mo>&#x2b;</mml:mo>
<mml:mi>&#x3b3;</mml:mi>
<mml:mi>P</mml:mi>
<mml:mfrac>
<mml:mrow>
<mml:mi>&#x2202;</mml:mi>
<mml:msub>
<mml:mrow>
<mml:mi>v</mml:mi>
</mml:mrow>
<mml:mrow>
<mml:mi>x</mml:mi>
</mml:mrow>
</mml:msub>
</mml:mrow>
<mml:mrow>
<mml:mi>&#x2202;</mml:mi>
<mml:mi>x</mml:mi>
</mml:mrow>
</mml:mfrac>
<mml:mo>&#x2b;</mml:mo>
<mml:msub>
<mml:mrow>
<mml:mi>v</mml:mi>
</mml:mrow>
<mml:mrow>
<mml:mi>x</mml:mi>
</mml:mrow>
</mml:msub>
<mml:mfrac>
<mml:mrow>
<mml:mi>&#x2202;</mml:mi>
<mml:mi>P</mml:mi>
</mml:mrow>
<mml:mrow>
<mml:mi>&#x2202;</mml:mi>
<mml:mi>x</mml:mi>
</mml:mrow>
</mml:mfrac>
<mml:mo>&#x3d;</mml:mo>
<mml:mn>0</mml:mn>
</mml:mtd>
</mml:mtr>
</mml:mtable>
</mml:math>
<label>(15)</label>
</disp-formula>
<disp-formula id="e16">
<mml:math id="m18">
<mml:mtable class="align" columnalign="left">
<mml:mtr>
<mml:mtd columnalign="right">
<mml:mfrac>
<mml:mrow>
<mml:mi>&#x2202;</mml:mi>
<mml:msub>
<mml:mrow>
<mml:mi>B</mml:mi>
</mml:mrow>
<mml:mrow>
<mml:mi>x</mml:mi>
</mml:mrow>
</mml:msub>
</mml:mrow>
<mml:mrow>
<mml:mi>&#x2202;</mml:mi>
<mml:mi>t</mml:mi>
</mml:mrow>
</mml:mfrac>
<mml:mo>&#x3d;</mml:mo>
<mml:mn>0</mml:mn>
</mml:mtd>
</mml:mtr>
</mml:mtable>
</mml:math>
<label>(16)</label>
</disp-formula>
<disp-formula id="e17">
<mml:math id="m19">
<mml:mtable class="align" columnalign="left">
<mml:mtr>
<mml:mtd columnalign="right">
<mml:mfrac>
<mml:mrow>
<mml:mi>&#x2202;</mml:mi>
<mml:msub>
<mml:mrow>
<mml:mi>B</mml:mi>
</mml:mrow>
<mml:mrow>
<mml:mi>y</mml:mi>
</mml:mrow>
</mml:msub>
</mml:mrow>
<mml:mrow>
<mml:mi>&#x2202;</mml:mi>
<mml:mi>t</mml:mi>
</mml:mrow>
</mml:mfrac>
<mml:mo>&#x2b;</mml:mo>
<mml:msub>
<mml:mrow>
<mml:mi>v</mml:mi>
</mml:mrow>
<mml:mrow>
<mml:mi>x</mml:mi>
</mml:mrow>
</mml:msub>
<mml:mfrac>
<mml:mrow>
<mml:mi>&#x2202;</mml:mi>
<mml:msub>
<mml:mrow>
<mml:mi>B</mml:mi>
</mml:mrow>
<mml:mrow>
<mml:mi>y</mml:mi>
</mml:mrow>
</mml:msub>
</mml:mrow>
<mml:mrow>
<mml:mi>&#x2202;</mml:mi>
<mml:mi>x</mml:mi>
</mml:mrow>
</mml:mfrac>
<mml:mo>&#x2b;</mml:mo>
<mml:msub>
<mml:mrow>
<mml:mi>B</mml:mi>
</mml:mrow>
<mml:mrow>
<mml:mi>y</mml:mi>
</mml:mrow>
</mml:msub>
<mml:mfrac>
<mml:mrow>
<mml:mi>&#x2202;</mml:mi>
<mml:msub>
<mml:mrow>
<mml:mi>v</mml:mi>
</mml:mrow>
<mml:mrow>
<mml:mi>x</mml:mi>
</mml:mrow>
</mml:msub>
</mml:mrow>
<mml:mrow>
<mml:mi>&#x2202;</mml:mi>
<mml:mi>x</mml:mi>
</mml:mrow>
</mml:mfrac>
<mml:mo>&#x2212;</mml:mo>
<mml:msub>
<mml:mrow>
<mml:mi>B</mml:mi>
</mml:mrow>
<mml:mrow>
<mml:mi>x</mml:mi>
</mml:mrow>
</mml:msub>
<mml:mfrac>
<mml:mrow>
<mml:mi>&#x2202;</mml:mi>
<mml:msub>
<mml:mrow>
<mml:mi>v</mml:mi>
</mml:mrow>
<mml:mrow>
<mml:mi>y</mml:mi>
</mml:mrow>
</mml:msub>
</mml:mrow>
<mml:mrow>
<mml:mi>&#x2202;</mml:mi>
<mml:mi>x</mml:mi>
</mml:mrow>
</mml:mfrac>
<mml:mo>&#x3d;</mml:mo>
<mml:mn>0</mml:mn>
</mml:mtd>
</mml:mtr>
</mml:mtable>
</mml:math>
<label>(17)</label>
</disp-formula>
<disp-formula id="e18">
<mml:math id="m20">
<mml:mtable class="align" columnalign="left">
<mml:mtr>
<mml:mtd columnalign="right">
<mml:mfrac>
<mml:mrow>
<mml:mi>&#x2202;</mml:mi>
<mml:msub>
<mml:mrow>
<mml:mi>B</mml:mi>
</mml:mrow>
<mml:mrow>
<mml:mi>z</mml:mi>
</mml:mrow>
</mml:msub>
</mml:mrow>
<mml:mrow>
<mml:mi>&#x2202;</mml:mi>
<mml:mi>t</mml:mi>
</mml:mrow>
</mml:mfrac>
<mml:mo>&#x2b;</mml:mo>
<mml:msub>
<mml:mrow>
<mml:mi>v</mml:mi>
</mml:mrow>
<mml:mrow>
<mml:mi>x</mml:mi>
</mml:mrow>
</mml:msub>
<mml:mfrac>
<mml:mrow>
<mml:mi>&#x2202;</mml:mi>
<mml:msub>
<mml:mrow>
<mml:mi>B</mml:mi>
</mml:mrow>
<mml:mrow>
<mml:mi>z</mml:mi>
</mml:mrow>
</mml:msub>
</mml:mrow>
<mml:mrow>
<mml:mi>&#x2202;</mml:mi>
<mml:mi>x</mml:mi>
</mml:mrow>
</mml:mfrac>
<mml:mo>&#x2b;</mml:mo>
<mml:msub>
<mml:mrow>
<mml:mi>B</mml:mi>
</mml:mrow>
<mml:mrow>
<mml:mi>z</mml:mi>
</mml:mrow>
</mml:msub>
<mml:mfrac>
<mml:mrow>
<mml:mi>&#x2202;</mml:mi>
<mml:msub>
<mml:mrow>
<mml:mi>v</mml:mi>
</mml:mrow>
<mml:mrow>
<mml:mi>x</mml:mi>
</mml:mrow>
</mml:msub>
</mml:mrow>
<mml:mrow>
<mml:mi>&#x2202;</mml:mi>
<mml:mi>x</mml:mi>
</mml:mrow>
</mml:mfrac>
<mml:mo>&#x2212;</mml:mo>
<mml:msub>
<mml:mrow>
<mml:mi>B</mml:mi>
</mml:mrow>
<mml:mrow>
<mml:mi>x</mml:mi>
</mml:mrow>
</mml:msub>
<mml:mfrac>
<mml:mrow>
<mml:mi>&#x2202;</mml:mi>
<mml:msub>
<mml:mrow>
<mml:mi>v</mml:mi>
</mml:mrow>
<mml:mrow>
<mml:mi>z</mml:mi>
</mml:mrow>
</mml:msub>
</mml:mrow>
<mml:mrow>
<mml:mi>&#x2202;</mml:mi>
<mml:mi>x</mml:mi>
</mml:mrow>
</mml:mfrac>
<mml:mo>&#x3d;</mml:mo>
<mml:mn>0</mml:mn>
<mml:mo>,</mml:mo>
</mml:mtd>
</mml:mtr>
</mml:mtable>
</mml:math>
<label>(18)</label>
</disp-formula>where we have simplified whenever possible using the 1D divergence constraint <inline-formula id="inf3">
<mml:math id="m21">
<mml:mfrac>
<mml:mrow>
<mml:mi>&#x2202;</mml:mi>
<mml:msub>
<mml:mrow>
<mml:mi>B</mml:mi>
</mml:mrow>
<mml:mrow>
<mml:mi>x</mml:mi>
</mml:mrow>
</mml:msub>
</mml:mrow>
<mml:mrow>
<mml:mi>&#x2202;</mml:mi>
<mml:mi>x</mml:mi>
</mml:mrow>
</mml:mfrac>
<mml:mo>&#x3d;</mml:mo>
<mml:mn>0</mml:mn>
</mml:math>
</inline-formula>. Each of these <xref ref-type="disp-formula" rid="e11">Eqs. 11</xref>&#x2013;<xref ref-type="disp-formula" rid="e18">18</xref> as well as the divergence constraint constitutes one term in the loss function (<italic>N</italic>
<sub>
<italic>q</italic>
</sub> &#x3d; 9). Following <xref ref-type="bibr" rid="B29">Michoski et&#x20;al. (2020)</xref>, we add a viscosity term (<italic>&#x3bd;</italic>) to the <italic>v</italic>
<sub>
<italic>x</italic>
</sub> equation in order to ease issues with reconstructing shock fronts and discontinuities. We generally use <italic>&#x3bd;</italic> &#x3d; 0.005, unless otherwise stated.</p>
<p>We have used the primitive variables here as opposed to the conservative variables (momentum and energy); this allows the PINN to avoid potential issues with calculating negative pressures from a conserved energy variable.</p>
<p>Each of the individual <xref ref-type="disp-formula" rid="e11">Eqs. 11</xref>&#x2013;<xref ref-type="disp-formula" rid="e18">18</xref> as well as the divergence constraint contributes a term to the overall loss function (<xref ref-type="disp-formula" rid="e4">Eq. 4</xref>). Since these equations are written in conservative form, we can simply calculate the time and space derivatives and sum them, e.g., for density:<disp-formula id="e19">
<mml:math id="m22">
<mml:msub>
<mml:mrow>
<mml:mi>f</mml:mi>
</mml:mrow>
<mml:mrow>
<mml:mn>1</mml:mn>
<mml:mo>,</mml:mo>
<mml:mi>n</mml:mi>
<mml:mi>e</mml:mi>
<mml:mi>t</mml:mi>
</mml:mrow>
</mml:msub>
<mml:mo>&#x2254;</mml:mo>
<mml:mfrac>
<mml:mrow>
<mml:mi>&#x2202;</mml:mi>
<mml:msub>
<mml:mrow>
<mml:mi>&#x3c1;</mml:mi>
</mml:mrow>
<mml:mrow>
<mml:mi>n</mml:mi>
<mml:mi>e</mml:mi>
<mml:mi>t</mml:mi>
</mml:mrow>
</mml:msub>
</mml:mrow>
<mml:mrow>
<mml:mi>&#x2202;</mml:mi>
<mml:mi>t</mml:mi>
</mml:mrow>
</mml:mfrac>
<mml:mo>&#x2b;</mml:mo>
<mml:msub>
<mml:mrow>
<mml:mi>v</mml:mi>
</mml:mrow>
<mml:mrow>
<mml:mi>x</mml:mi>
<mml:mo>,</mml:mo>
<mml:mi>n</mml:mi>
<mml:mi>e</mml:mi>
<mml:mi>t</mml:mi>
</mml:mrow>
</mml:msub>
<mml:mfrac>
<mml:mrow>
<mml:mi>&#x2202;</mml:mi>
<mml:msub>
<mml:mrow>
<mml:mi>&#x3c1;</mml:mi>
</mml:mrow>
<mml:mrow>
<mml:mi>n</mml:mi>
<mml:mi>e</mml:mi>
<mml:mi>t</mml:mi>
</mml:mrow>
</mml:msub>
</mml:mrow>
<mml:mrow>
<mml:mi>&#x2202;</mml:mi>
<mml:mi>x</mml:mi>
</mml:mrow>
</mml:mfrac>
<mml:mo>&#x2b;</mml:mo>
<mml:msub>
<mml:mrow>
<mml:mi>&#x3c1;</mml:mi>
</mml:mrow>
<mml:mrow>
<mml:mi>n</mml:mi>
<mml:mi>e</mml:mi>
<mml:mi>t</mml:mi>
</mml:mrow>
</mml:msub>
<mml:mfrac>
<mml:mrow>
<mml:mi>&#x2202;</mml:mi>
<mml:msub>
<mml:mrow>
<mml:mi>v</mml:mi>
</mml:mrow>
<mml:mrow>
<mml:mi>x</mml:mi>
<mml:mo>,</mml:mo>
<mml:mi>n</mml:mi>
<mml:mi>e</mml:mi>
<mml:mi>t</mml:mi>
</mml:mrow>
</mml:msub>
</mml:mrow>
<mml:mrow>
<mml:mi>&#x2202;</mml:mi>
<mml:mi>x</mml:mi>
</mml:mrow>
</mml:mfrac>
</mml:math>
<label>(19)</label>
</disp-formula>where <italic>&#x3c1;</italic>
<sub>
<italic>net</italic>
</sub> and <italic>v</italic>
<sub>
<italic>x</italic>,<italic>net</italic>
</sub> are taken from the PINN-generated output vector <bold>U</bold>
<sub>
<italic>net</italic>
</sub>, and the derivatives are calculated numerically (as explained in <xref ref-type="sec" rid="s2">Section&#x20;2</xref>).</p>
<p>Similarly, the hydrodynamic equation loss function is derived by setting <bold>B</bold> &#x3d; 0 and removing the magnetic-related terms from the neural network output and loss function. For our hydrodynamic test problem (<xref ref-type="sec" rid="s3-1">Section&#x20;3.1</xref>), we also ignore the <italic>v</italic>
<sub>
<italic>y</italic>
</sub> and <italic>v</italic>
<sub>
<italic>z</italic>
</sub> terms, yielding a loss function comprising of three equations (<italic>&#x3c1;</italic>, <italic>v</italic>
<sub>
<italic>x</italic>
</sub>,&#x20;<italic>P</italic>).</p>
</sec>
</sec>
<sec id="s3">
<title>3 Results</title>
<sec id="s3-1">
<title>3.1 Sod Shock Tube</title>
<p>The Sod shock tube (<xref ref-type="bibr" rid="B40">Sod, 1978</xref>) is a well-known one-dimensional hydrodynamic benchmark, the solution of which comprises both shock and rarefaction waves. As such, it is an excellent problem to test the neural network reconstruction of hydrodynamic structures and waves. For the base simulation, we use a pre-existing GPU simulation code designed for solving MHD equations (<xref ref-type="bibr" rid="B3">Bard and Dorelli, 2014</xref>, <xref ref-type="bibr" rid="B4">Bard and Dorelli, 2018</xref>) and set up the Sod problem as follows:<disp-formula id="equ1">
<mml:math id="m23">
<mml:mtable class="align-star" columnalign="left">
<mml:mtr>
<mml:mtd columnalign="right">
<mml:msub>
<mml:mrow>
<mml:mi>&#x3c1;</mml:mi>
</mml:mrow>
<mml:mrow>
<mml:mi>L</mml:mi>
</mml:mrow>
</mml:msub>
<mml:mo>&#x3d;</mml:mo>
<mml:mn>1.0</mml:mn>
<mml:mo>;</mml:mo>
<mml:mspace width="0.3333em" class="nbsp"/>
<mml:msub>
<mml:mrow>
<mml:mi>&#x3c1;</mml:mi>
</mml:mrow>
<mml:mrow>
<mml:mi>R</mml:mi>
</mml:mrow>
</mml:msub>
<mml:mo>&#x3d;</mml:mo>
<mml:mn>0.125</mml:mn>
</mml:mtd>
</mml:mtr>
<mml:mtr>
<mml:mtd columnalign="right">
<mml:msub>
<mml:mrow>
<mml:mi>v</mml:mi>
</mml:mrow>
<mml:mrow>
<mml:mi>L</mml:mi>
</mml:mrow>
</mml:msub>
<mml:mo>&#x3d;</mml:mo>
<mml:msub>
<mml:mrow>
<mml:mi>v</mml:mi>
</mml:mrow>
<mml:mrow>
<mml:mi>R</mml:mi>
</mml:mrow>
</mml:msub>
<mml:mo>&#x3d;</mml:mo>
<mml:mn>0.0</mml:mn>
</mml:mtd>
</mml:mtr>
<mml:mtr>
<mml:mtd columnalign="right">
<mml:msub>
<mml:mrow>
<mml:mi>P</mml:mi>
</mml:mrow>
<mml:mrow>
<mml:mi>L</mml:mi>
</mml:mrow>
</mml:msub>
<mml:mo>&#x3d;</mml:mo>
<mml:mn>1.0</mml:mn>
<mml:mo>;</mml:mo>
<mml:mspace width="0.3333em" class="nbsp"/>
<mml:msub>
<mml:mrow>
<mml:mi>P</mml:mi>
</mml:mrow>
<mml:mrow>
<mml:mi>R</mml:mi>
</mml:mrow>
</mml:msub>
<mml:mo>&#x3d;</mml:mo>
<mml:mn>0.1</mml:mn>
<mml:mo>,</mml:mo>
</mml:mtd>
</mml:mtr>
</mml:mtable>
</mml:math>
</disp-formula>with a grid 0 &#x3c; <italic>x</italic>&#x20;&#x3c; 1 and a resolution &#x394;<italic>x</italic>&#x20;&#x3d; 1/8,192. The <italic>L</italic>-state was defined on 0 &#x3c; <italic>x</italic>&#x20;&#x3c; 0.5; the <italic>R</italic> state covered 0.5 &#x2264; <italic>x</italic>&#x20;&#x3c; 1. The simulation was run until <italic>t</italic>&#x20;&#x3d; 0.25<italic>t</italic>
<sub>0</sub>, writing output every &#x394;<italic>t</italic>&#x20;&#x3d; 0.001<italic>t</italic>
<sub>0</sub>; this provided a base space-time grid of 8,192 &#xd7; 250 points, each with a state vector <bold>U</bold>
<sub>
<italic>euler</italic>
</sub> &#x3d; (<italic>&#x3c1;</italic>, <italic>v</italic>, <italic>P</italic>), for comparison with the final neural network output.</p>
<p>
<xref ref-type="fig" rid="F2">Figure&#x20;2</xref> illustrates the overall space-time structure for the density with a sample cut showing a 1D structure snapshot. Data was sampled along four parallel trajectories (black lines in <xref ref-type="fig" rid="F2">Figure&#x20;2</xref>) and fed into the PINN as a boundary condition. Each trajectory consisted of 75 points, meaning that the boundary condition provided 300 measurements compared to the more than 2.04 million points within the overall space-time simulation grid that we saved to&#x20;file.</p>
<p>We note that the base simulation did not need to be so highly spatially resolved; however, we did not save all of the time snapshots required to progress the simulation to <italic>t</italic>&#x20;&#x3d; 0.25. If we had saved the output from every time step, the full space-time dimensions would have roughly been 8,192 &#xd7; 11,800 (&#x394;<italic>t</italic>&#x20;&#x2248; 2.12 &#xd7; 10<sup>&#x2013;5</sup> as per the CFL wave stability condition). Even a more modestly resolved simulation, e.g., <italic>nx</italic> &#x3d; 512 (&#x394;<italic>t</italic>&#x20;&#x2248; 3.4 &#xd7; 10<sup>&#x2013;4</sup>) would have full space-time dimensions of roughly 512 &#xd7; 740, or about 380,000 points. Thus, the 300 points comprising the PINN boundary conditions is rather sparse compared to the overall amount of information contained within the full simulation domain. Even the collocation points, although more densely sampled, are still relatively sparse. The maximum number we reach for the Sod reconstruction is 85<sup>2</sup> &#x3d; 7,225 points; the average spatial resolution between collocation points then is &#x394;<italic>x</italic>&#x20;&#x2248; 1/85 and the average time resolution is &#x394;<italic>t</italic>&#x20;&#x2248; 0.25/85 &#x2248; 2.9 &#xd7; 10<sup>&#x2013;3</sup>.</p>
<p>There is no special reason for the trajectories to be parallel. We chose these to emulate the near-parallel spacecraft trajectories of constellation missions within local environments (e.g., the Magnetosphere Multiscale Mission (<xref ref-type="bibr" rid="B10">Burch et&#x20;al., 2016</xref>) or a potential Geospace Dynamics Constellation mission (<xref ref-type="bibr" rid="B23">Jaynes et&#x20;al., 2019</xref>)). Generally, when spacecraft measure plasma structures, it is usually the plasma that is moving much faster than the spacecraft in a solar or geospace frame of reference. Assuming a fixed plasma velocity, it is possible to translate to the plasma frame of reference; the spacecraft motions within this frame will appear as straight lines (e.g., <xref ref-type="bibr" rid="B41">Sonnerup et&#x20;al. (2004)</xref>). We note that any contiguous (or non-contiguous) sample of data points should work with the PINN reconstruction. (See <xref ref-type="sec" rid="s3-2">Section&#x20;3.2</xref> for an example with non-parallel trajectories.).</p>
<p>More information via additional trajectories could also be provided to ensure a stronger reconstruction fit. However, our goal was to try to reproduce the simulation space-time given sparse&#x20;data.</p>
<p>The PINN was initialized with 4 layers of 16 nodes each, following the architecture presented in <xref ref-type="sec" rid="s2-1">Section&#x20;2.1</xref>. After some experimentation with training methodologies, we found that a learning rate schedule (e.g., <xref ref-type="bibr" rid="B8">Bottou (2010)</xref>; <xref ref-type="bibr" rid="B6">Bengio (2012)</xref>) and randomization of collocation points worked very well. We first increased the density of collocation points and then decreased the learning rate upon reaching a maximum number of collocation points. We started with (<italic>N</italic>&#x20;&#x3d; 20)<sup>2</sup> collocation points as a &#x201c;warm-up&#x201d; period for the network to start fitting the boundary data, and then increased the collocation point density to (<italic>N</italic>&#x20;&#x2b; 5)<sup>2</sup> every 22,500 training epochs to a maximum of 85<sup>2</sup> points. When the maximum was reached, we decreased the learning rate by a factor of 2/3 until it fell below 4 &#xd7; 10<sup>&#x2013;4</sup> (from a start of 1 &#xd7; 10<sup>&#x2013;3</sup>). Finally, we randomly generated a new sample of <italic>N</italic>
<sup>2</sup> collocation points after each training step. After following this training schedule, the program terminates. The final training epoch count was about 280,000, taking about 3&#xa0;h to run on our CPU. We could continue training by increasing the collocation point density; however, this would require a more significant time investment.</p>
<p>We note that the stochastic nature of neural network training means that no two PINNs will be the same, even if trained with the same loss function on the same boundary data. Despite this, we find that PINNs with the same architecture and training schedule will generally cluster around the same final reconstruction accuracy.</p>
<p>We plot the PINN relative error &#x2016;(<italic>&#x3c1;</italic>
<sub>
<italic>net</italic>
</sub> &#x2212; <italic>&#x3c1;</italic>)/<italic>&#x3c1;</italic>&#x2016; in <xref ref-type="fig" rid="F3">Figure&#x20;3</xref>. We note that the regions near the boundary trajectories are fit well, though the PINN struggles with discontinuities and shocks. Indeed, the highest error within the reconstructed regions is found immediately around the shock waves (<xref ref-type="fig" rid="F3">Figure&#x20;3</xref>). Although the original MHD simulation does not have a viscosity term, adding <italic>&#x3bd;</italic> to the shock parallel velocity equation (here <italic>v</italic>
<sub>
<italic>x</italic>
</sub>; <xref ref-type="disp-formula" rid="e12">Eq. 12</xref>) improves the fit around these abrupt gradients (corroborating <xref ref-type="bibr" rid="B29">Michoski et&#x20;al. (2020)</xref>). This is illustrated in <xref ref-type="fig" rid="F4">Figure&#x20;4</xref>; the viscosity term allows the PINN to more smoothly trace the discontinuities. This does add an artificial shock thickness in the reconstruction (lower left plot of <xref ref-type="fig" rid="F5">Figure&#x20;5</xref>); this is the chief cause of the relative errors surrounding the shocks (<xref ref-type="fig" rid="F3">Figure&#x20;3</xref>).</p>
<fig id="F3" position="float">
<label>FIGURE 3</label>
<caption>
<p>
<bold>(A)</bold>: Density Relative Error &#x2016;(<italic>&#x3c1;</italic>
<sub>
<italic>net</italic>
</sub> &#x2212; <italic>&#x3c1;</italic>)/<italic>&#x3c1;</italic>&#x2016; for a PINN trained with four sampled trajectories (dotted lines) on the Sod shock tube. The greatest error is along the shock wave (second from right); the PINN does not handle abrupt gradients well. <bold>(B)</bold>: Same, but for case of a PINN trained on one sampled trajectory. The PINN struggles to recover the solution further away from the boundary&#x20;data.</p>
</caption>
<graphic xlink:href="fspas-08-732275-g003.tif"/>
</fig>
<fig id="F4" position="float">
<label>FIGURE 4</label>
<caption>
<p>Comparison of exact values with PINN-generated predictions for <italic>&#x3c1;</italic> at <italic>t</italic>&#x20;&#x3d; 0.2, for different values of the viscosity term. <bold>(A)</bold>: The default setting <italic>&#x3bd;</italic> &#x3d; 0.005. <bold>(B, C)</bold>: Same, for <italic>&#x3bd;</italic> &#x3d; 0, 0.05. Adding a viscosity term helps the PINN generate a better fit than without, though adding too much viscosity leads to very diffusive discontinuities and a poorer fit. Without the viscosity term, the PINN struggles to resolve the shock discontinuities. All PINNs in this example were trained with the same architecture and learning schedule and for the same number of epochs, using the four-spacecraft trajectory&#x20;data.</p>
</caption>
<graphic xlink:href="fspas-08-732275-g004.tif"/>
</fig>
<fig id="F5" position="float">
<label>FIGURE 5</label>
<caption>
<p>Comparison of exact simulation values with PINN-generated predictions for <italic>&#x3c1;</italic> at <italic>t</italic>&#x20;&#x3d; 0.2 <bold>(A)</bold> and <italic>t</italic>&#x20;&#x3d; 0.05 <bold>(B)</bold>. The left column presents the four-spacecraft PINN fit, while the right column presents the one-spacecraft PINN fit. The PINN reconstruction tends to smooth out discontinuities and sudden gradients; this is due to adding the viscosity term (though this is still better than having no viscosity term). Additionally, the reconstruction has issues with regions further away from boundary data (lower right plot for <italic>x</italic>&#x20;&#x3e; 0.5; c.f. <xref ref-type="fig" rid="F3">Figure&#x20;3</xref>).</p>
</caption>
<graphic xlink:href="fspas-08-732275-g005.tif"/>
</fig>
<p>Setting the viscosity too high does actively hurts the fitting in both smooth and discontinuous regions, and should be avoided. This could potentially be alleviated by, e.g., adaptive distribution of collocation points (<xref ref-type="bibr" rid="B27">Lu et&#x20;al., 2021</xref>) by clustering them along steeper gradients (akin to adaptive mesh refinement in multi-scale plasma simulations). We note that there is no magic number for the viscosity parameter; <italic>&#x3bd;</italic> &#x3d; 0.005 works well here, though other similar values may give slightly better or worse results.</p>
<p>Since we arbitrarily chose four trajectories for the boundary data, we repeat this experiment for a single trajectory, using the same network and learning schedule as described above. In this case, the one-spacecraft PINN has a similar ability to reconstruct the domain and a similar issue with reconstruction around the shock wave. However, it has higher error in regions where it &#x201c;lacks coverage&#x201d;, especially in the downshock region (right portion of <xref ref-type="fig" rid="F3">Figure&#x20;3</xref>; plot entitled &#x201c;One Trajectory&#x201d;). Interestingly, the error is lower where the single trajectory crosses the shock at a late time, but higher at an earlier time where there is less constraining information on the downshock side (lower right of <xref ref-type="fig" rid="F5">Figure&#x20;5</xref>). The shock wave essentially acts as a barrier to information from upstream and makes it difficult for the PINN to constrain its reconstruction. This makes sense physically, since acoustic waves which carry information cannot travel faster than shock waves. Indeed, at <italic>t</italic>&#x20;&#x3d; 0.05 (<xref ref-type="fig" rid="F5">Figure&#x20;5</xref>), the one-spacecraft reconstruction has difficulties with recreating the appropriate shock location and downshock&#x20;state.</p>
<p>Ultimately, adding additional boundary data to the network training helps the PINN better constrain the solution output, especially in low-sampled areas. This raises several interesting questions: How much data is necessary for a PINN to accurately reconstruct the true environment, and how far out (in space and time) from the observed data can the PINN output be reasonably trusted? These have implications for, e.g., reconstructions of environments or magnetic structures around spacecraft observations (e.g., flux ropes (<xref ref-type="bibr" rid="B39">Slavin et&#x20;al., 2003</xref>; <xref ref-type="bibr" rid="B18">Hasegawa et&#x20;al., 2006</xref>; <xref ref-type="bibr" rid="B15">DiBraccio et&#x20;al., 2015</xref>) and coronal mass ejections (<xref ref-type="bibr" rid="B31">Nieves-Chinchilla et&#x20;al., 2018</xref>; <xref ref-type="bibr" rid="B17">dos Santos et&#x20;al., 2020</xref>)).</p>
<p>Finally, we note that the PINN inference time is faster than using our GPU-based solver, though there are some caveats. For a single time snapshot, generating a full resolution 8,192 &#xd7; 1 output took about 10&#xa0;ms; we do not need to solve for prior times to get the solution at any given time. The full 8,192 &#xd7; 250 space-time grid took about 9&#x2013;10&#xa0;s, compared to the original simulation time (on one NVIDIA M2090 GPU) of &#x2248; 40&#xa0;s (including file I/O). (We note that a less resolved simulation with <italic>nx</italic> &#x3d; 512 would have a runtime of several seconds.) However, this trained neural network is only effective for reconstructing this specific Sod shock tube within the given space-time extent. It is not generalizable to other shock tubes nor outside the reconstructed domain; the neural network has to be retrained for each new application.</p>
</sec>
<sec id="s3-2">
<title>3.2&#x20;Ryu-Jones Shock Tube</title>
<p>For a more complex reconstruction, we reproduce two MHD shock tubes: Ryu-Jones (<xref ref-type="bibr" rid="B35">Ryu and Jones, 1995</xref>) and Brio-Wu (<xref ref-type="bibr" rid="B9">Brio and Wu, 1988</xref>) (see <xref ref-type="sec" rid="s3-3">Section&#x20;3.3</xref>). First, following (<xref ref-type="bibr" rid="B35">Ryu and Jones, 1995</xref>) (their problem 4a; henceforth referred to as RJ4a), we initialize a simple benchmark designed to test so-called &#x201c;switch-on&#x201d; fast shocks; the shock tube also contains several other structures. We chose the RJ4a tube as an intermediate step up to the canonical Brio-Wu shock tube (<xref ref-type="sec" rid="s3-3">Section&#x20;3.3</xref>) since it is a less severe shock discontinuity.</p>
<p>The initial condition is<disp-formula id="equ2">
<mml:math id="m24">
<mml:mtable class="align-star" columnalign="left">
<mml:mtr>
<mml:mtd columnalign="right">
<mml:msub>
<mml:mrow>
<mml:mi>&#x3c1;</mml:mi>
</mml:mrow>
<mml:mrow>
<mml:mi>L</mml:mi>
</mml:mrow>
</mml:msub>
<mml:mo>&#x3d;</mml:mo>
<mml:mn>1.0</mml:mn>
<mml:mo>;</mml:mo>
<mml:mspace width="0.3333em" class="nbsp"/>
<mml:msub>
<mml:mrow>
<mml:mi>&#x3c1;</mml:mi>
</mml:mrow>
<mml:mrow>
<mml:mi>R</mml:mi>
</mml:mrow>
</mml:msub>
<mml:mo>&#x3d;</mml:mo>
<mml:mn>0.2</mml:mn>
</mml:mtd>
</mml:mtr>
<mml:mtr>
<mml:mtd columnalign="right">
<mml:msub>
<mml:mrow>
<mml:mi>v</mml:mi>
</mml:mrow>
<mml:mrow>
<mml:mi>x</mml:mi>
</mml:mrow>
</mml:msub>
<mml:mo>&#x3d;</mml:mo>
<mml:msub>
<mml:mrow>
<mml:mi>v</mml:mi>
</mml:mrow>
<mml:mrow>
<mml:mi>y</mml:mi>
</mml:mrow>
</mml:msub>
<mml:mo>&#x3d;</mml:mo>
<mml:msub>
<mml:mrow>
<mml:mi>v</mml:mi>
</mml:mrow>
<mml:mrow>
<mml:mi>z</mml:mi>
</mml:mrow>
</mml:msub>
<mml:mo>&#x3d;</mml:mo>
<mml:mn>0</mml:mn>
</mml:mtd>
</mml:mtr>
<mml:mtr>
<mml:mtd columnalign="right">
<mml:msub>
<mml:mrow>
<mml:mi>P</mml:mi>
</mml:mrow>
<mml:mrow>
<mml:mi>L</mml:mi>
</mml:mrow>
</mml:msub>
<mml:mo>&#x3d;</mml:mo>
<mml:mn>1.0</mml:mn>
<mml:mo>;</mml:mo>
<mml:mspace width="0.3333em" class="nbsp"/>
<mml:msub>
<mml:mrow>
<mml:mi>P</mml:mi>
</mml:mrow>
<mml:mrow>
<mml:mi>R</mml:mi>
</mml:mrow>
</mml:msub>
<mml:mo>&#x3d;</mml:mo>
<mml:mn>0.1</mml:mn>
</mml:mtd>
</mml:mtr>
<mml:mtr>
<mml:mtd columnalign="right">
<mml:msub>
<mml:mrow>
<mml:mi>B</mml:mi>
</mml:mrow>
<mml:mrow>
<mml:mi>y</mml:mi>
<mml:mo>,</mml:mo>
<mml:mi>L</mml:mi>
</mml:mrow>
</mml:msub>
<mml:mo>&#x3d;</mml:mo>
<mml:mn>1.0</mml:mn>
<mml:mo>;</mml:mo>
<mml:mspace width="0.3333em" class="nbsp"/>
<mml:msub>
<mml:mrow>
<mml:mi>B</mml:mi>
</mml:mrow>
<mml:mrow>
<mml:mi>y</mml:mi>
<mml:mo>,</mml:mo>
<mml:mi>R</mml:mi>
</mml:mrow>
</mml:msub>
<mml:mo>&#x3d;</mml:mo>
<mml:mn>0</mml:mn>
<mml:mo>.</mml:mo>
</mml:mtd>
</mml:mtr>
<mml:mtr>
<mml:mtd columnalign="right">
<mml:msub>
<mml:mrow>
<mml:mi>B</mml:mi>
</mml:mrow>
<mml:mrow>
<mml:mi>x</mml:mi>
</mml:mrow>
</mml:msub>
<mml:mo>&#x3d;</mml:mo>
<mml:mn>1</mml:mn>
<mml:mo>.</mml:mo>
<mml:mo>;</mml:mo>
<mml:mspace width="0.3333em" class="nbsp"/>
<mml:msub>
<mml:mrow>
<mml:mi>B</mml:mi>
</mml:mrow>
<mml:mrow>
<mml:mi>z</mml:mi>
</mml:mrow>
</mml:msub>
<mml:mo>&#x3d;</mml:mo>
<mml:mn>0</mml:mn>
<mml:mo>.</mml:mo>
</mml:mtd>
</mml:mtr>
</mml:mtable>
</mml:math>
</disp-formula>The simulation was run until <italic>t</italic>&#x20;&#x3d; 0.18 with an output every &#x394;<italic>t</italic>&#x20;&#x3d;&#x20;0.002; the final space-time output was represented on a 4,096 &#xd7; 91 grid, each point having a full MHD state vector <bold>U</bold> &#x3d; (<italic>&#x3c1;</italic>, <bold>v</bold>, <italic>P</italic>, <bold>B</bold>). As part of the spacecraft sampling, we define four non-parallel trajectories (dotted lines in <xref ref-type="fig" rid="F6">Figure&#x20;6</xref>; left subfigure) and collect the plasma state data <bold>U</bold> along these tracks. Again, this is arbitrarily defined; the intent is to demonstrate that non-parallel trajectories can be used&#x20;here.</p>
<fig id="F6" position="float">
<label>FIGURE 6</label>
<caption>
<p>
<bold>(A)</bold>: Density Relative Error &#x2016;(<italic>&#x3c1;</italic>
<sub>
<italic>net</italic>
</sub> &#x2212; <italic>&#x3c1;</italic>)/<italic>&#x3c1;</italic>&#x2016; for a PINN trained with four sampled trajectories (dotted lines) on the Ryu-Jones shock tube. The greatest error is along the shock wave (second from right); the PINN does not handle abrupt gradients well. <bold>(B,C)</bold>: Exact (black) and NN-generated values (red) for <italic>&#x3c1;</italic> at <italic>t</italic>&#x20;&#x3d; 0.2 (top) and&#x20;<italic>t</italic>&#x20;&#x3d;&#x20;0.05 (bottom). The PINN is able to reconstruct the state, but still has issues with sharp gradients.</p>
</caption>
<graphic xlink:href="fspas-08-732275-g006.tif"/>
</fig>
<p>For the MHD reconstruction, we keep the same network architecture as defined above (<xref ref-type="sec" rid="s2-1">Section 2.1</xref>); however we adjust the number of output dimensions from 3 to 8 to reflect the full MHD state vector. Additionally, we use the full MHD loss function defined in <xref ref-type="sec" rid="s2-2">Section 2.2</xref>. Since the reconstruction is more complex and involves more output terms and losses, the network is harder to&#x20;train.</p>
<p>As there are roughly triple the output dimensions, we naively increase the number of nodes in each layer from 16 to 48, keeping the number of layers at 4. We also adopt a slightly different training schedule than the Sod case in <xref ref-type="sec" rid="s3-1">Section&#x20;3.1</xref>: we start with a warm-up density of 20<sup>2</sup> collocation points for 15,000 steps, and then set the density to 30<sup>2</sup> and increase to (<italic>N</italic>&#x20;&#x2b; 7)<sup>2</sup> every 24,000 steps, ending at a maximum of 72<sup>2</sup> points. Upon reaching the maximum, the learning rate was decreased by a factor of 3/4 every 24,000 steps until a minimum of 2 &#xd7; 10<sup>&#x2013;4</sup> was reached. We chose 72<sup>2</sup> since the time range for the RJ4a tube is until <italic>t</italic>&#x20;&#x3d; 0.18 (Sod was until <italic>t</italic>&#x20;&#x3d; 0.25); 85<sup>2</sup>&#x002A;(0.18/0.25) &#x2248; 72<sup>2</sup>. Thus, the amount of time resolution for the collocation point distribution (&#x394;<italic>t</italic>/<italic>N</italic>) is roughly the same for both the Rj4a and Sod reconstruction examples. The final number of steps was about 280,000, and the training time took about 8&#xa0;h (alternatively: a few hours if we had used a GPU). Again, as in the Sod case, we could continue training at a higher density of collocation points at the expense of additional training&#x20;time.</p>
<p>We are able to get similar results as the Sod shock tube: the neural network is able to reconstruct the solution space-time, albeit with issues in recreating the step discontinuity at the initial condition (<italic>t</italic>&#x20;&#x3d; 0) and with diffusion around the shock discontinuity. <xref ref-type="fig" rid="F6">Figure&#x20;6</xref> summarizes our results for the <italic>&#x3c1;</italic> reconstruction of the RJ4a tube, with similar results for the other reconstructed variables.</p>
</sec>
<sec id="s3-3">
<title>3.3&#x20;Brio-Wu Shock Tube</title>
<p>The final case we study, the Brio-Wu shock tube, is a well-known magnetohydrodynamic benchmark and one of the most-used MHD analogues to the Sod shock tube. It is the most difficult of our examples to train for, since it has the steepest shock discontinuity. The initial condition (<xref ref-type="bibr" rid="B9">Brio and Wu, 1988</xref>) is:<disp-formula id="equ3">
<mml:math id="m25">
<mml:mtable class="align-star" columnalign="left">
<mml:mtr>
<mml:mtd columnalign="right">
<mml:msub>
<mml:mrow>
<mml:mi>&#x3c1;</mml:mi>
</mml:mrow>
<mml:mrow>
<mml:mi>L</mml:mi>
</mml:mrow>
</mml:msub>
<mml:mo>&#x3d;</mml:mo>
<mml:mn>1.0</mml:mn>
<mml:mo>;</mml:mo>
<mml:mspace width="0.3333em" class="nbsp"/>
<mml:msub>
<mml:mrow>
<mml:mi>&#x3c1;</mml:mi>
</mml:mrow>
<mml:mrow>
<mml:mi>R</mml:mi>
</mml:mrow>
</mml:msub>
<mml:mo>&#x3d;</mml:mo>
<mml:mn>0.125</mml:mn>
</mml:mtd>
</mml:mtr>
<mml:mtr>
<mml:mtd columnalign="right">
<mml:msub>
<mml:mrow>
<mml:mi>v</mml:mi>
</mml:mrow>
<mml:mrow>
<mml:mi>x</mml:mi>
</mml:mrow>
</mml:msub>
<mml:mo>&#x3d;</mml:mo>
<mml:msub>
<mml:mrow>
<mml:mi>v</mml:mi>
</mml:mrow>
<mml:mrow>
<mml:mi>y</mml:mi>
</mml:mrow>
</mml:msub>
<mml:mo>&#x3d;</mml:mo>
<mml:msub>
<mml:mrow>
<mml:mi>v</mml:mi>
</mml:mrow>
<mml:mrow>
<mml:mi>z</mml:mi>
</mml:mrow>
</mml:msub>
<mml:mo>&#x3d;</mml:mo>
<mml:mn>0</mml:mn>
</mml:mtd>
</mml:mtr>
<mml:mtr>
<mml:mtd columnalign="right">
<mml:msub>
<mml:mrow>
<mml:mi>P</mml:mi>
</mml:mrow>
<mml:mrow>
<mml:mi>L</mml:mi>
</mml:mrow>
</mml:msub>
<mml:mo>&#x3d;</mml:mo>
<mml:mn>1.0</mml:mn>
<mml:mo>;</mml:mo>
<mml:mspace width="0.3333em" class="nbsp"/>
<mml:msub>
<mml:mrow>
<mml:mi>P</mml:mi>
</mml:mrow>
<mml:mrow>
<mml:mi>R</mml:mi>
</mml:mrow>
</mml:msub>
<mml:mo>&#x3d;</mml:mo>
<mml:mn>0.1</mml:mn>
</mml:mtd>
</mml:mtr>
<mml:mtr>
<mml:mtd columnalign="right">
<mml:msub>
<mml:mrow>
<mml:mi>B</mml:mi>
</mml:mrow>
<mml:mrow>
<mml:mi>y</mml:mi>
<mml:mo>,</mml:mo>
<mml:mi>L</mml:mi>
</mml:mrow>
</mml:msub>
<mml:mo>&#x3d;</mml:mo>
<mml:mn>1.0</mml:mn>
<mml:mo>;</mml:mo>
<mml:mspace width="0.3333em" class="nbsp"/>
<mml:msub>
<mml:mrow>
<mml:mi>B</mml:mi>
</mml:mrow>
<mml:mrow>
<mml:mi>y</mml:mi>
<mml:mo>,</mml:mo>
<mml:mi>R</mml:mi>
</mml:mrow>
</mml:msub>
<mml:mo>&#x3d;</mml:mo>
<mml:mo>&#x2212;</mml:mo>
<mml:mn>1.0</mml:mn>
</mml:mtd>
</mml:mtr>
<mml:mtr>
<mml:mtd columnalign="right">
<mml:msub>
<mml:mrow>
<mml:mi>B</mml:mi>
</mml:mrow>
<mml:mrow>
<mml:mi>x</mml:mi>
</mml:mrow>
</mml:msub>
<mml:mo>&#x3d;</mml:mo>
<mml:mn>0.75</mml:mn>
<mml:mo>;</mml:mo>
<mml:mspace width="0.3333em" class="nbsp"/>
<mml:msub>
<mml:mrow>
<mml:mi>B</mml:mi>
</mml:mrow>
<mml:mrow>
<mml:mi>z</mml:mi>
</mml:mrow>
</mml:msub>
<mml:mo>&#x3d;</mml:mo>
<mml:mn>0</mml:mn>
<mml:mo>.</mml:mo>
</mml:mtd>
</mml:mtr>
</mml:mtable>
</mml:math>
</disp-formula>The reference dataset was created using the MHD code on a grid of 4,096 points, over a total time of <italic>t</italic>&#x20;&#x3d; 0.248&#x20;<italic>t</italic>
<sub>0</sub> with an output every &#x394;<italic>t</italic>&#x20;&#x3d; 0.02. This results in a space-time grid of 4,096 &#xd7; 125 points. We use a similar training schedule as the RJ4a case (<xref ref-type="sec" rid="s3-2">Section&#x20;3.2</xref>), with the exception of setting the maximum collocation point density to 85<sup>2</sup>. The final number of training steps was 303,000; the training time was about 9&#x2013;10&#xa0;h (on&#x20;CPU).</p>
<p>We find that the Brio-Wu shock tube is a more difficult reconstruction, especially in the shock region (<xref ref-type="fig" rid="F7">Figure&#x20;7</xref> Since we used the same architecture as the RJ4a case, part of this difficulty arises from the steeper discontinuity within the shock tube; it is harder to fit this slope with the smooth PINN output. Brief experimentation suggests that increasing the number of parameters in the network via adding more layers and/or nodes helps with a better fit; however, this also increases the training time. Alternatively, we find that increasing the viscosity to <italic>&#x3bd;</italic> &#x3d; 0.01 may allow the PINN to better approximate the steep discontinuity within the tube. However, as <xref ref-type="fig" rid="F8">Figure&#x20;8</xref> shows, there is not a straightforward relationship between an accurate reconstruction and choice of viscosity for each variable. Although increasing viscosity helped with the velocity reconstruction within the shock, it came at some loss of accuracy within the density reconstruction. In both cases, increasing viscosity provided a slightly less accurate reconstruction within the smooth regions. Ultimately, the key to a more accurate reconstruction with the PINN-based technique is simply to add more constraining data; the highest errors are consistently within the regions furthest away from the trajectories and on the other sides of shocks.</p>
<fig id="F7" position="float">
<label>FIGURE 7</label>
<caption>
<p>
<bold>(A)</bold>: Density Relative Error &#x2016;(<italic>&#x3c1;</italic>
<sub>
<italic>net</italic>
</sub> &#x2212; <italic>&#x3c1;</italic>)/<italic>&#x3c1;</italic>&#x2016; for a PINN trained with four sampled trajectories (dotted lines) on the Brio-Wu shock tube. The greatest error is along the shock waves (on right side) and in the lower-right corner furthest from the sample trajectories. <bold>(B,C)</bold>: Exact (black) and NN-generated values (red) for <italic>&#x3c1;</italic> at <italic>t</italic>&#x20;&#x3d; 0.2 (top) and <italic>t</italic>&#x20;&#x3d; 0.05 (bottom). The PINN is able to reconstruct the state, but still has issues around shocks.</p>
</caption>
<graphic xlink:href="fspas-08-732275-g007.tif"/>
</fig>
<fig id="F8" position="float">
<label>FIGURE 8</label>
<caption>
<p>
<bold>(A)</bold>
<italic>:</italic> Density Relative Error &#x2016;(<italic>&#x3c1;</italic>
<sub>
<italic>net</italic>
</sub> &#x2212; <italic>&#x3c1;</italic>)/<italic>&#x3c1;</italic>&#x2016; for two PINNs (<italic>
<bold>Left</bold>:</italic> <italic>&#x3bd;</italic> &#x3d; 0.01; <italic>
<bold>Right</bold>:</italic> <italic>&#x3bd;</italic> &#x3d; 0.05) trained with four sampled trajectories (dotted lines) on the Brio-Wu shock tube. <bold>(B)</bold>
<italic>:</italic> Velocity Absolute Error &#x2016;<italic>v</italic>
<sub>
<italic>x</italic>,<italic>net</italic>
</sub> &#x2212; <italic>v</italic>
<sub>
<italic>x</italic>
</sub>&#x2016; for the same PINNs as above. Both PINNs were trained with the same architecture and training schedule.</p>
</caption>
<graphic xlink:href="fspas-08-732275-g008.tif"/>
</fig>
<p>For a more direct application to spacecraft data reconstruction, we repeat the above Brio-Wu experiment with noisy trajectory data. We use the same PINN architecture and training schedule, and use <italic>&#x3bd;</italic> &#x3d; 0.01. The trajectory data is modified with Gaussian noise, randomly chosen from a distribution with a mean of 0 and a standard deviation of 0.1. For density and pressure, which are constrained to be positive, we set the data to a minimum of 0 where the added noise would cause negative values. Examples of noised trajectory data are shown in <xref ref-type="fig" rid="F9">Figure&#x20;9</xref>.</p>
<fig id="F9" position="float">
<label>FIGURE 9</label>
<caption>
<p>Sampled <italic>&#x3c1;</italic> data for each of the four trajectories across the Brio-Wu space-time domain, plotted as a function of <italic>X</italic> coordinate. The red&#x20;line&#x20;is the same data with Gaussian noise added (mean &#x3d; 0, standard deviation &#x3d; 0.1).</p>
</caption>
<graphic xlink:href="fspas-08-732275-g009.tif"/>
</fig>
<p>Despite the noise, the PINN is still able to reconstruct well the plasma space-time state (<xref ref-type="fig" rid="F10">Figures 10</xref>&#x2013;<xref ref-type="fig" rid="F12">12</xref>), which bodes well for actual spacecraft data. We note that since the PINN loss function is trained on the MSE (proportional to the absolute loss), the reconstruction has a consistent level of absolute error through the space-time (except near discontinuities and domain edges). This, however, does mean that the reconstruction has similar absolute errors in both high- and low-magnitude regions, leading to a disparity in relative error between the two regions (<xref ref-type="fig" rid="F10">Figures 10</xref>&#x2013;<xref ref-type="fig" rid="F12">12</xref>). Future work will be needed to investigate loss functions and/or training strategies such that there is a consistent level of relative error throughout the domain.</p>
<fig id="F10" position="float">
<label>FIGURE 10</label>
<caption>
<p>Same as <xref ref-type="fig" rid="F7">Figure&#x20;7</xref>, except with <italic>&#x3bd;</italic> &#x3d; 0.01 and with random Gaussian noise added to the data (c.f. <xref ref-type="fig" rid="F9">Figure&#x20;9</xref>). The Density absolute error &#x2016;<italic>&#x3c1;</italic>
<sub>
<italic>net</italic>
</sub> &#x2212; <italic>&#x3c1;</italic>&#x2016; is also plotted. Despite the noise, the PINN obtains a similar reconstruction as the noiseless state, with similar issues around shocks and further from the constraining data. Although the relative error is higher on the right side of the shock, the absolute error is of the same order on either side of the reconstruction. Since the PINN loss function uses MSE, it minimizes the absolute error without regard to the relative magnitude difference of the actual&#x20;value.</p>
</caption>
<graphic xlink:href="fspas-08-732275-g010.tif"/>
</fig>
<fig id="F11" position="float">
<label>FIGURE 11</label>
<caption>
<p>Same as <xref ref-type="fig" rid="F10">Figure&#x20;10</xref>, except plotting both the <italic>B</italic>
<sub>
<italic>y</italic>
</sub> absolute error &#x2016;<italic>B</italic>
<sub>
<italic>y</italic>,<italic>net</italic>
</sub> &#x2212; <italic>B</italic>
<sub>
<italic>y</italic>
</sub>&#x2016; and the <italic>B</italic>
<sub>
<italic>y</italic>
</sub> relative error &#x2016;(<italic>B</italic>
<sub>
<italic>y</italic>,<italic>net</italic>
</sub> &#x2212; <italic>B</italic>
<sub>
<italic>y</italic>
</sub>)/<italic>B</italic>
<sub>
<italic>y</italic>
</sub>&#x2016;, and <italic>B</italic>
<sub>
<italic>y</italic>
</sub> at selected times. Random Gaussian noise (c.f. <xref ref-type="fig" rid="F9">Figure&#x20;9</xref>) has been added to the&#x20;data.</p>
</caption>
<graphic xlink:href="fspas-08-732275-g011.tif"/>
</fig>
<fig id="F12" position="float">
<label>FIGURE 12</label>
<caption>
<p>Same as <xref ref-type="fig" rid="F11">Figure&#x20;11</xref>, except for Pressure. Random Gaussian noise (c.f. <xref ref-type="fig" rid="F9">Figure&#x20;9</xref>) has been added to the&#x20;data.</p>
</caption>
<graphic xlink:href="fspas-08-732275-g012.tif"/>
</fig>
</sec>
</sec>
<sec id="s4">
<title>4 Discussion and Conclusion</title>
<sec id="s4-1">
<title>4.1 Extension to Higher Dimensions</title>
<p>With the success of reconstructing the 1D MHD Brio-Wu test problem, we attempted to extend this method to a two-dimensional test problem. It was very easy to modify our architecture for 2D space &#x2b; 1D time reconstruction: simply extend the loss function to include additional derivatives and modify the collocation point generator for three dimensions. However, we quickly found out that this training methodology did not scale well to higher dimensions.</p>
<p>Extending the collocation point strategy from 2 to 3 dimensions, while straightforward, meant that the computational intensity increased by many orders of magnitude. Sampling a similarly-sized space-time with the same density of points means that the total number of collocation points increases from <italic>N</italic>
<sup>2</sup> to <italic>N</italic>
<sup>3</sup>, where N is the number of points sampling across one particular dimension. In general, <italic>D</italic> dimensions of space-time require <italic>N</italic>
<sup>
<italic>D</italic>
</sup> collocation points.</p>
<p>Since the Brio-Wu test case ended with 85<sup>2</sup> collocation points, achieving a similar resolution in our 2D test case means we must use 85<sup>3</sup> collocation points. If instead, we used a similar number of collocation points, we would be using &#x2248; 19<sup>3</sup> collocation points. The collocation density would be reduced by a factor of about 4.5 in each dimension, and 90x overall! This is not nearly enough to get a reasonable solution in 3D space-time. Essentially, in the absence of ever-faster computer processing (e.g., multiple GPUs), the trade-off is between a significant increase in reconstruction time or a large decrease in reconstruction accuracy. Furthermore, the amount of reconstruction required increases with additional dimensions; more specifically, the relative amount of input data significantly decreases compared to the overall space-time information. We could add more sampled data from the baseline simulation to help with this issue, but, in the real magnetosphere, we often do not have the ability to add more spacecraft data within the local environment.</p>
<p>Ultimately, although this collocation point strategy does not scale well in training, we believe that it will still work to reconstruct multiple spatial and time dimensions (provided a large enough computational capability and sufficient boundary information). However, since networks are only trained on a single event, we are skeptical that reusing trained networks for different kinds of events will be viable. This transformer network &#x2b; collocation point approach does not seem to be the best option for replacing global simulations in extracting the full temporal and spatial global environment information from satellite observations. But, this technique may work well for reconstructing simpler cases at smaller scales, e.g., equilibrium or force-free flux ropes (<xref ref-type="bibr" rid="B39">Slavin et&#x20;al., 2003</xref>; <xref ref-type="bibr" rid="B15">DiBraccio et&#x20;al., 2015</xref>), current sheets (<xref ref-type="bibr" rid="B19">Hasegawa et&#x20;al., 2019</xref>), magnetopause structures (<xref ref-type="bibr" rid="B18">Hasegawa et&#x20;al., 2006</xref>; <xref ref-type="bibr" rid="B13">Chen and Hau, 2018</xref>), coronal mass ejections (e.g., <xref ref-type="bibr" rid="B17">dos Santos et&#x20;al. (2020)</xref>), or other geospace magnetic structures.</p>
</sec>
<sec id="s4-2">
<title>4.2 Conclusion</title>
<p>We have presented a physics-informed, fully-connected transformer neural network based on <xref ref-type="bibr" rid="B34">Raissi et&#x20;al. (2019)</xref>; <xref ref-type="bibr" rid="B45">Wang S. et&#x20;al. (2020)</xref> which is capable of reconstructing (M)HD space-time plasma states from simulated spacecraft measurements in one spatial dimension. This reconstruction works well even in the presence of noise. We concur with <xref ref-type="bibr" rid="B29">Michoski et&#x20;al. (2020)</xref> that the PINN has difficulties around discontinuities, like shocks, and that adding a viscosity term helps with the reconstruction in these regions. Although the PINN output has a generally consistent absolute error, this leads to a disparity of relative error between domains of high and low magnitudes.</p>
<p>The combination of a transformer-based architecture and the collocation point method works well, but it does take more time to train the network to find the reconstructed solution than to simulate the solution in the first place. We conclude that future implementations of PINN-based reconstruction techniques must take full advantage of GPUs for speedup. Additionally, higher-order loss optimizers, like L-BFGS-B, should be utilized when possible, as they increase training accuracy (<xref ref-type="bibr" rid="B28">Markidis, 2021</xref>). Ultimately, alternative network architectures and training strategies need to be explored to maximize reconstruction efficiency and accuracy.</p>
<p>We believe that PINN reconstruction will work in general for spacecraft data; however, there are still some significant questions concerning uncertainty. We were able to iterate the architecture and the training process over the course of this work, but this was because we had known underlying data. How can we do this in the presence of an unknown baseline? How do we quantify the uncertainty of the reconstruction, especially in space environments and with noisy data?</p>
<p>Other interesting questions to explore are how much data is necessary for a reliable reconstruction, and how much error due to noise or instrument mis-calibration can be tolerated? Will one-dimensional spatio-temporal data samples provide sufficient information for the reconstruction of a three-spatial &#x2b; one-time dimensional reconstruction?</p>
<p>How far out from the spacecraft sampling are we able to go before the PINN starts making up realities that still fit the underlying physics equation? This is an issue, especially in regions where shocks are common. Unless the data transects the discontinuity, the PINN does not have the information to reconstruct the other side of the shock. We see this in the scenarios of <xref ref-type="fig" rid="F3">Figures 3</xref>, <xref ref-type="fig" rid="F8">8</xref>, where the reconstruction suffers near the shock discontinuity. This can be alleviated by adding more constraining data, though this is not always possible. Future investigations on PINN error and convergence for solutions of PDEs are needed. <xref ref-type="bibr" rid="B30">Mishra and Molinaro (2020)</xref> is one such example: they have looked at PINN errors for solutions to several problems, including the heat, wave, and Stokes equations.</p>
<p>Finally, with the advent of constellation spacecraft missions like MMS (<xref ref-type="bibr" rid="B10">Burch et&#x20;al., 2016</xref>) and GDC (<xref ref-type="bibr" rid="B23">Jaynes et&#x20;al., 2019</xref>), we can use these multi-point spacecraft observations for more detailed reconstructions of plasma and magnetic field structures, as some have already started doing with MHD equilibriums and current sheets (<xref ref-type="bibr" rid="B18">Hasegawa et&#x20;al., 2006</xref>, <xref ref-type="bibr" rid="B19">2019</xref>). Will PINN-based techniques be an upgrade over these methods? Indeed, <xref ref-type="bibr" rid="B14">Chu et&#x20;al. (2017)</xref>; <xref ref-type="bibr" rid="B37">Sitnov et&#x20;al. (2021)</xref> have already started doing versions of this by combining magnetometer data across many spacecraft missions, and utilizing neural-network based methods for the analysis. Fusing data with advanced models will be an exciting avenue of research for space physics in the next decade.</p>
</sec>
</sec>
</body>
<back>
<sec id="s5">
<title>Data Availability Statement</title>
<p>The datasets presented in this study can be found in online repositories. The names of the repository/repositories and accession number(s) can be found below: The datasets generated and code created for this study will be made publicly available after acceptance of this paper as part of the NASA Open Source Code Base at <ext-link ext-link-type="uri" xlink:href="http://code.nasa.gov">code.nasa.gov</ext-link>. The author may be emailed for the code/data prior to final approval for public release.</p>
</sec>
<sec id="s6">
<title>Author Contributions</title>
<p>CB wrote the article, developed the code and ran experiments. JD secured funding, provided the computer cluster, helped edit the article, and provided feedback on method development.</p>
</sec>
<sec id="s7">
<title>Funding</title>
<p>The authors acknowledge support from an internal NASA Science Task Group development grant from the GSFC Sciences and Exploration Directorate, and the GSFC Heliophysics Internal Scientist Funding Model (ISFM).</p>
</sec>
<sec sec-type="COI-statement" id="s8">
<title>Conflict of Interest</title>
<p>The authors declare that the research was conducted in the absence of any commercial or financial relationships that could be construed as a potential conflict of interest.</p>
</sec>
<sec sec-type="disclaimer" id="s9">
<title>Publisher&#x2019;s Note</title>
<p>All claims expressed in this article are solely those of the authors and do not necessarily represent those of their affiliated organizations, or those of the publisher, the editors and the reviewers. Any product that may be evaluated in this article, or claim that may be made by its manufacturer, is not guaranteed or endorsed by the publisher.</p>
</sec>
<ack>
<p>The authors thank Daniel da Silva for general discussion and feedback and the GSFC Center for HelioAnalytics for general discussion. We thank both referees for their helpful comments which improved this&#x20;paper.</p>
</ack>
<ref-list>
<title>References</title>
<ref id="B1">
<citation citation-type="book">
<person-group person-group-type="author">
<name>
<surname>Abadi</surname>
<given-names>M.</given-names>
</name>
<name>
<surname>Agarwal</surname>
<given-names>A.</given-names>
</name>
<name>
<surname>Barham</surname>
<given-names>P.</given-names>
</name>
<name>
<surname>Brevdo</surname>
<given-names>E.</given-names>
</name>
<name>
<surname>Chen</surname>
<given-names>Z.</given-names>
</name>
<name>
<surname>Citro</surname>
<given-names>C.</given-names>
</name>
<etal/>
</person-group> (<year>2015</year>). [<comment>Dataset</comment>]. <source>TensorFlow: Large-Scale Machine Learning on Heterogeneous Systems</source>. <comment>Software available from tensorflow.org</comment>.</citation>
</ref>
<ref id="B2">
<citation citation-type="book">
<person-group person-group-type="author">
<name>
<surname>Apicella</surname>
<given-names>A.</given-names>
</name>
<name>
<surname>Donnarumma</surname>
<given-names>F.</given-names>
</name>
<name>
<surname>Isgr&#xf2;</surname>
<given-names>F.</given-names>
</name>
<name>
<surname>Prevete</surname>
<given-names>R.</given-names>
</name>
</person-group> (<year>2020</year>). <source>A Survey on Modern Trainable Activation Functions</source>. <comment>arXiv e-prints</comment>. <comment>arXiv:2005.00817</comment>.</citation>
</ref>
<ref id="B3">
<citation citation-type="journal">
<person-group person-group-type="author">
<name>
<surname>Bard</surname>
<given-names>C. M.</given-names>
</name>
<name>
<surname>Dorelli</surname>
<given-names>J.&#x20;C.</given-names>
</name>
</person-group> (<year>2014</year>). <article-title>A Simple GPU-Accelerated Two-Dimensional MUSCL-Hancock Solver for Ideal Magnetohydrodynamics</article-title>. <source>J.&#x20;Comput. Phys.</source> <volume>259</volume>, <fpage>444</fpage>&#x2013;<lpage>460</lpage>. <pub-id pub-id-type="doi">10.1016/j.jcp.2013.12.006</pub-id> </citation>
</ref>
<ref id="B4">
<citation citation-type="journal">
<person-group person-group-type="author">
<name>
<surname>Bard</surname>
<given-names>C.</given-names>
</name>
<name>
<surname>Dorelli</surname>
<given-names>J.&#x20;C.</given-names>
</name>
</person-group> (<year>2018</year>). <article-title>On the Role of System Size in Hall MHD Magnetic Reconnection</article-title>. <source>Phys. Plasmas</source> <volume>25</volume>, <fpage>022103</fpage>. <pub-id pub-id-type="doi">10.1063/1.5010785</pub-id> </citation>
</ref>
<ref id="B5">
<citation citation-type="journal">
<person-group person-group-type="author">
<name>
<surname>Baydin</surname>
<given-names>A. G.</given-names>
</name>
<name>
<surname>Pearlmutter</surname>
<given-names>B. A.</given-names>
</name>
<name>
<surname>Radul</surname>
<given-names>A. A.</given-names>
</name>
<name>
<surname>Siskind</surname>
<given-names>J.&#x20;M.</given-names>
</name>
</person-group> (<year>2018</year>). <article-title>Automatic Differentiation in Machine Learning: a Survey</article-title>. <source>J.&#x20;Machine Learn. Res.</source> <volume>18</volume>, <fpage>1</fpage>&#x2013;<lpage>43</lpage>. </citation>
</ref>
<ref id="B6">
<citation citation-type="book">
<person-group person-group-type="author">
<name>
<surname>Bengio</surname>
<given-names>Y.</given-names>
</name>
</person-group> (<year>2012</year>). <source>Practical Recommendations for Gradient-Based Training of Deep Architectures</source>. <comment>arXiv e-prints</comment>. <comment>arXiv:1206.5533</comment>.</citation>
</ref>
<ref id="B7">
<citation citation-type="journal">
<person-group person-group-type="author">
<name>
<surname>Bloch</surname>
<given-names>T.</given-names>
</name>
<name>
<surname>Watt</surname>
<given-names>C.</given-names>
</name>
<name>
<surname>Owens</surname>
<given-names>M.</given-names>
</name>
<name>
<surname>McInnes</surname>
<given-names>L.</given-names>
</name>
<name>
<surname>Macneil</surname>
<given-names>A. R.</given-names>
</name>
</person-group> (<year>2020</year>). <article-title>Data-Driven Classification of Coronal Hole and Streamer Belt Solar Wind</article-title>. <source>Sol. Phys.</source> <volume>295</volume>, <fpage>41</fpage>. <pub-id pub-id-type="doi">10.1007/s11207-020-01609-z</pub-id> </citation>
</ref>
<ref id="B8">
<citation citation-type="book">
<person-group person-group-type="author">
<name>
<surname>Bottou</surname>
<given-names>L.</given-names>
</name>
</person-group> (<year>2010</year>). <article-title>Large-scale Machine Learning with Stochastic Gradient Descent</article-title>. In <source>COMPSTAT</source>. <pub-id pub-id-type="doi">10.1007/978-3-7908-2604-3_16</pub-id> </citation>
</ref>
<ref id="B9">
<citation citation-type="journal">
<person-group person-group-type="author">
<name>
<surname>Brio</surname>
<given-names>M.</given-names>
</name>
<name>
<surname>Wu</surname>
<given-names>C. C.</given-names>
</name>
</person-group> (<year>1988</year>). <article-title>An Upwind Differencing Scheme for the Equations of Ideal Magnetohydrodynamics</article-title>. <source>J.&#x20;Comput. Phys.</source> <volume>75</volume>, <fpage>400</fpage>&#x2013;<lpage>422</lpage>. <pub-id pub-id-type="doi">10.1016/0021-9991(88)90120-9</pub-id> </citation>
</ref>
<ref id="B10">
<citation citation-type="journal">
<person-group person-group-type="author">
<name>
<surname>Burch</surname>
<given-names>J.&#x20;L.</given-names>
</name>
<name>
<surname>Moore</surname>
<given-names>T. E.</given-names>
</name>
<name>
<surname>Torbert</surname>
<given-names>R. B.</given-names>
</name>
<name>
<surname>Giles</surname>
<given-names>B. L.</given-names>
</name>
</person-group> (<year>2016</year>). <article-title>Magnetospheric Multiscale Overview and Science Objectives</article-title>. <source>Magnetos. Multiscale Over. Sci. Object.</source> <volume>199</volume>, <fpage>5</fpage>&#x2013;<lpage>21</lpage>. <pub-id pub-id-type="doi">10.1007/s11214-015-0164-910.1007/978-94-024-0861-4_2</pub-id> </citation>
</ref>
<ref id="B11">
<citation citation-type="journal">
<person-group person-group-type="author">
<name>
<surname>Camporeale</surname>
<given-names>E.</given-names>
</name>
</person-group> (<year>2019</year>). <article-title>The Challenge of Machine Learning in Space Weather: Nowcasting and Forecasting</article-title>. <source>Space Weather</source> <volume>17</volume>, <fpage>1166</fpage>&#x2013;<lpage>1207</lpage>. <pub-id pub-id-type="doi">10.1029/2018sw002061</pub-id> </citation>
</ref>
<ref id="B12">
<citation citation-type="journal">
<person-group person-group-type="author">
<name>
<surname>Chen</surname>
<given-names>C.-T.</given-names>
</name>
<name>
<surname>Chang</surname>
<given-names>W.-D.</given-names>
</name>
</person-group> (<year>1996</year>). <article-title>A Feedforward Neural Network with Function Shape Autotuning</article-title>. <source>Neural Netw.</source> <volume>9</volume>, <fpage>627</fpage>&#x2013;<lpage>641</lpage>. <pub-id pub-id-type="doi">10.1016/0893-6080(96)00006-8</pub-id> </citation>
</ref>
<ref id="B13">
<citation citation-type="journal">
<person-group person-group-type="author">
<name>
<surname>Chen</surname>
<given-names>G.-W.</given-names>
</name>
<name>
<surname>Hau</surname>
<given-names>L.-N.</given-names>
</name>
</person-group> (<year>2018</year>). <article-title>Grad-Shafranov Reconstruction of Earth&#x27;s Magnetopause with Temperature Anisotropy</article-title>. <source>J.&#x20;Geophys. Res. Space Phys.</source> <volume>123</volume>, <fpage>7358</fpage>&#x2013;<lpage>7369</lpage>. <pub-id pub-id-type="doi">10.1029/2018JA025842</pub-id> </citation>
</ref>
<ref id="B14">
<citation citation-type="journal">
<person-group person-group-type="author">
<name>
<surname>Chu</surname>
<given-names>X.</given-names>
</name>
<name>
<surname>Bortnik</surname>
<given-names>J.</given-names>
</name>
<name>
<surname>Li</surname>
<given-names>W.</given-names>
</name>
<name>
<surname>Ma</surname>
<given-names>Q.</given-names>
</name>
<name>
<surname>Denton</surname>
<given-names>R.</given-names>
</name>
<name>
<surname>Yue</surname>
<given-names>C.</given-names>
</name>
<etal/>
</person-group> (<year>2017</year>). <article-title>A Neural Network Model of Three-Dimensional Dynamic Electron Density in the Inner Magnetosphere</article-title>. <source>J.&#x20;Geophys. Res. (Space Phys.)</source> <volume>122</volume>, <fpage>9183</fpage>&#x2013;<lpage>9197</lpage>. <pub-id pub-id-type="doi">10.1002/2017JA024464</pub-id> </citation>
</ref>
<ref id="B15">
<citation citation-type="journal">
<person-group person-group-type="author">
<name>
<surname>DiBraccio</surname>
<given-names>G. A.</given-names>
</name>
<name>
<surname>Slavin</surname>
<given-names>J.&#x20;A.</given-names>
</name>
<name>
<surname>Imber</surname>
<given-names>S. M.</given-names>
</name>
<name>
<surname>Gershman</surname>
<given-names>D. J.</given-names>
</name>
<name>
<surname>Raines</surname>
<given-names>J.&#x20;M.</given-names>
</name>
<name>
<surname>Jackman</surname>
<given-names>C. M.</given-names>
</name>
<etal/>
</person-group> (<year>2015</year>). <article-title>MESSENGER Observations of Flux Ropes in Mercury&#x2019;s Magnetotail</article-title>. <source>Planet. Space Sci.</source> <volume>115</volume>, <fpage>77</fpage>&#x2013;<lpage>89</lpage>. <pub-id pub-id-type="doi">10.1016/j.pss.2014.12.016</pub-id> </citation>
</ref>
<ref id="B16">
<citation citation-type="journal">
<person-group person-group-type="author">
<name>
<surname>Dong</surname>
<given-names>C.</given-names>
</name>
<name>
<surname>Wang</surname>
<given-names>L.</given-names>
</name>
<name>
<surname>Hakim</surname>
<given-names>A.</given-names>
</name>
<name>
<surname>Bhattacharjee</surname>
<given-names>A.</given-names>
</name>
<name>
<surname>Slavin</surname>
<given-names>J.&#x20;A.</given-names>
</name>
<name>
<surname>DiBraccio</surname>
<given-names>G. A.</given-names>
</name>
<etal/>
</person-group> (<year>2019</year>). <article-title>Global Ten-Moment Multifluid Simulations of the Solar Wind Interaction with Mercury: From the Planetary Conducting Core to the Dynamic Magnetosphere</article-title>. <source>Geophys. Res. Lett.</source> <volume>46</volume>, <fpage>11,584</fpage>&#x2013;<lpage>11,596</lpage>. <pub-id pub-id-type="doi">10.1029/2019GL083180</pub-id> </citation>
</ref>
<ref id="B17">
<citation citation-type="journal">
<person-group person-group-type="author">
<name>
<surname>dos Santos</surname>
<given-names>L. F. G.</given-names>
</name>
<name>
<surname>Narock</surname>
<given-names>A.</given-names>
</name>
<name>
<surname>Nieves-Chinchilla</surname>
<given-names>T.</given-names>
</name>
<name>
<surname>Nu&#xf1;ez</surname>
<given-names>M.</given-names>
</name>
<name>
<surname>Kirk</surname>
<given-names>M.</given-names>
</name>
</person-group> (<year>2020</year>). <article-title>Identifying Flux Rope Signatures Using a</article-title>. <source>Deep Neural Netw.</source> <volume>295</volume>, <fpage>131</fpage>. <pub-id pub-id-type="doi">10.1007/s11207-020-01697-x</pub-id> </citation>
</ref>
<ref id="B18">
<citation citation-type="journal">
<person-group person-group-type="author">
<name>
<surname>Hasegawa</surname>
<given-names>H.</given-names>
</name>
<name>
<surname>Sonnerup</surname>
<given-names>B. U. &#xd6;.</given-names>
</name>
<name>
<surname>Owen</surname>
<given-names>C. J.</given-names>
</name>
<name>
<surname>Klecker</surname>
<given-names>B.</given-names>
</name>
<name>
<surname>Paschmann</surname>
<given-names>G.</given-names>
</name>
<name>
<surname>Balogh</surname>
<given-names>A.</given-names>
</name>
<etal/>
</person-group> (<year>2006</year>). <article-title>The Structure of Flux Transfer Events Recovered from Cluster Data</article-title>. <source>Ann. Geophysicae</source> <volume>24</volume>, <fpage>603</fpage>&#x2013;<lpage>618</lpage>. <pub-id pub-id-type="doi">10.5194/angeo-24-603-2006</pub-id> </citation>
</ref>
<ref id="B19">
<citation citation-type="journal">
<person-group person-group-type="author">
<name>
<surname>Hasegawa</surname>
<given-names>H.</given-names>
</name>
<name>
<surname>Denton</surname>
<given-names>R. E.</given-names>
</name>
<name>
<surname>Nakamura</surname>
<given-names>R.</given-names>
</name>
<name>
<surname>Genestreti</surname>
<given-names>K. J.</given-names>
</name>
<name>
<surname>Nakamura</surname>
<given-names>T. K. M.</given-names>
</name>
<name>
<surname>Hwang</surname>
<given-names>K. J.</given-names>
</name>
<etal/>
</person-group> (<year>2019</year>). <article-title>Reconstruction of the Electron Diffusion Region of Magnetotail Reconnection Seen by the MMS Spacecraft on 11 July 2017</article-title>. <source>J.&#x20;Geophys. Res. (Space Physics)</source> <volume>124</volume>, <fpage>122</fpage>&#x2013;<lpage>138</lpage>. <pub-id pub-id-type="doi">10.1029/2018ja026051</pub-id> </citation>
</ref>
<ref id="B20">
<citation citation-type="journal">
<person-group person-group-type="author">
<name>
<surname>Illarionov</surname>
<given-names>E.</given-names>
</name>
<name>
<surname>Kosovichev</surname>
<given-names>A.</given-names>
</name>
<name>
<surname>Tlatov</surname>
<given-names>A.</given-names>
</name>
</person-group> (<year>2020</year>). <article-title>Machine-learning Approach to Identification of Coronal Holes in Solar Disk Images and Synoptic Maps</article-title>. <source>Astrophys. J.</source> <volume>903</volume>, <fpage>115</fpage>. <pub-id pub-id-type="doi">10.3847/1538-4357/abb94d</pub-id> </citation>
</ref>
<ref id="B21">
<citation citation-type="journal">
<person-group person-group-type="author">
<name>
<surname>Iman</surname>
<given-names>R. L.</given-names>
</name>
<name>
<surname>Helton</surname>
<given-names>J.&#x20;C.</given-names>
</name>
<name>
<surname>Campbell</surname>
<given-names>J.&#x20;E.</given-names>
</name>
</person-group> (<year>1981</year>). <article-title>An Approach to Sensitivity Analysis of Computer Models: Part I&#x2014;Introduction, Input Variable Selection and Preliminary Variable Assessment</article-title>. <source>J.&#x20;Qual. Technol.</source> <volume>13</volume>, <fpage>174</fpage>&#x2013;<lpage>183</lpage>. <pub-id pub-id-type="doi">10.1080/00224065.1981.11978748</pub-id> </citation>
</ref>
<ref id="B22">
<citation citation-type="journal">
<person-group person-group-type="author">
<name>
<surname>Jagtap</surname>
<given-names>A. D.</given-names>
</name>
<name>
<surname>Kawaguchi</surname>
<given-names>K.</given-names>
</name>
<name>
<surname>Karniadakis</surname>
<given-names>G. E.</given-names>
</name>
</person-group> (<year>2020</year>). <article-title>Adaptive Activation Functions Accelerate Convergence in Deep and Physics-Informed Neural Networks</article-title>. <source>J.&#x20;Comput. Phys.</source> <volume>404</volume>, <fpage>109136</fpage>. <pub-id pub-id-type="doi">10.1016/j.jcp.2019.109136</pub-id> </citation>
</ref>
<ref id="B23">
<citation citation-type="journal">
<person-group person-group-type="author">
<name>
<surname>Jaynes</surname>
<given-names>A.</given-names>
</name>
<name>
<surname>Ridley</surname>
<given-names>A.</given-names>
</name>
</person-group>
<collab>the GDC STDT</collab> (<year>2019</year>). <article-title>NASA Science and Technology Definition Team for the Geospace Dynamics Constellation Final Report</article-title>. <source>Tech. Rep</source>. </citation>
</ref>
<ref id="B24">
<citation citation-type="book">
<person-group person-group-type="author">
<name>
<surname>Kingma</surname>
<given-names>D. P.</given-names>
</name>
<name>
<surname>Ba</surname>
<given-names>J.</given-names>
</name>
</person-group> (<year>2014</year>). <source>Adam: A Method for Stochastic Optimization</source>. <comment>arXiv e-prints</comment>. <comment>arXiv:1412.6980</comment>.</citation>
</ref>
<ref id="B25">
<citation citation-type="journal">
<person-group person-group-type="author">
<name>
<surname>Li</surname>
<given-names>X.</given-names>
</name>
<name>
<surname>Zheng</surname>
<given-names>Y.</given-names>
</name>
<name>
<surname>Wang</surname>
<given-names>X.</given-names>
</name>
<name>
<surname>Wang</surname>
<given-names>L.</given-names>
</name>
</person-group> (<year>2020a</year>). <article-title>Predicting Solar Flares Using a Novel Deep</article-title>. <source>Convolutional Neural Netw.</source> <volume>891</volume>, <fpage>10</fpage>. <pub-id pub-id-type="doi">10.3847/1538-4357/ab6d04</pub-id> </citation>
</ref>
<ref id="B26">
<citation citation-type="book">
<person-group person-group-type="author">
<name>
<surname>Li</surname>
<given-names>Z.</given-names>
</name>
<name>
<surname>Kovachki</surname>
<given-names>N.</given-names>
</name>
<name>
<surname>Azizzadenesheli</surname>
<given-names>K.</given-names>
</name>
<name>
<surname>Liu</surname>
<given-names>B.</given-names>
</name>
<name>
<surname>Bhattacharya</surname>
<given-names>K.</given-names>
</name>
<name>
<surname>Stuart</surname>
<given-names>A.</given-names>
</name>
<etal/>
</person-group> (<year>2020b</year>). <source>Fourier Neural Operator for Parametric Partial Differential Equations</source>. <comment>arXiv e-prints</comment>. <comment>arXiv:2010.08895</comment>.</citation>
</ref>
<ref id="B27">
<citation citation-type="journal">
<person-group person-group-type="author">
<name>
<surname>Lu</surname>
<given-names>L.</given-names>
</name>
<name>
<surname>Meng</surname>
<given-names>X.</given-names>
</name>
<name>
<surname>Mao</surname>
<given-names>Z.</given-names>
</name>
<name>
<surname>Karniadakis</surname>
<given-names>G. E.</given-names>
</name>
</person-group> (<year>2021</year>). <article-title>DeepXDE: A Deep Learning Library for Solving Differential Equations</article-title>. <source>SIAM Rev.</source> <volume>63</volume>, <fpage>208</fpage>&#x2013;<lpage>228</lpage>. <pub-id pub-id-type="doi">10.1137/19m1274067</pub-id> </citation>
</ref>
<ref id="B28">
<citation citation-type="book">
<person-group person-group-type="author">
<name>
<surname>Markidis</surname>
<given-names>S.</given-names>
</name>
</person-group> (<year>2021</year>). <source>The Old and the New: Can Physics-Informed Deep-Learning Replace Traditional Linear Solvers?</source> <comment>arXiv e-prints</comment>. <comment>arXiv:2103.09655</comment>.</citation>
</ref>
<ref id="B29">
<citation citation-type="journal">
<person-group person-group-type="author">
<name>
<surname>Michoski</surname>
<given-names>C.</given-names>
</name>
<name>
<surname>Milosavljevi&#x107;</surname>
<given-names>M.</given-names>
</name>
<name>
<surname>Oliver</surname>
<given-names>T.</given-names>
</name>
<name>
<surname>Hatch</surname>
<given-names>D. R.</given-names>
</name>
</person-group> (<year>2020</year>). <article-title>Solving Differential Equations Using Deep Neural Networks</article-title>. <source>Neurocomputing</source> <volume>399</volume>, <fpage>193</fpage>&#x2013;<lpage>212</lpage>. <pub-id pub-id-type="doi">10.1016/j.neucom.2020.02.015</pub-id> </citation>
</ref>
<ref id="B30">
<citation citation-type="book">
<person-group person-group-type="author">
<name>
<surname>Mishra</surname>
<given-names>S.</given-names>
</name>
<name>
<surname>Molinaro</surname>
<given-names>R.</given-names>
</name>
</person-group> (<year>2020</year>). <source>Estimates on the Generalization Error of Physics Informed Neural Networks (PINNs) for Approximating a Class of Inverse Problems for PDEs</source>. <comment>arXiv e-prints</comment>. <comment>arXiv:2007.01138</comment>.</citation>
</ref>
<ref id="B31">
<citation citation-type="journal">
<person-group person-group-type="author">
<name>
<surname>Nieves-Chinchilla</surname>
<given-names>T.</given-names>
</name>
<name>
<surname>Linton</surname>
<given-names>M. G.</given-names>
</name>
<name>
<surname>Hidalgo</surname>
<given-names>M. A.</given-names>
</name>
<name>
<surname>Vourlidas</surname>
<given-names>A.</given-names>
</name>
</person-group> (<year>2018</year>). <article-title>Elliptic-cylindrical</article-title>. <source>Anal. Flux Rope Model Magn. Clouds</source> <volume>861</volume>, <fpage>139</fpage>. <pub-id pub-id-type="doi">10.3847/1538-4357/aac951</pub-id> </citation>
</ref>
<ref id="B32">
<citation citation-type="journal">
<person-group person-group-type="author">
<name>
<surname>Pesnell</surname>
<given-names>W. D.</given-names>
</name>
<name>
<surname>Thompson</surname>
<given-names>B. J.</given-names>
</name>
<name>
<surname>Chamberlin</surname>
<given-names>P. C.</given-names>
</name>
</person-group> (<year>2012</year>). <article-title>The Solar Dynamics Observatory (SDO)</article-title>. <source>Sol. Dyn. Obs.</source> <volume>275</volume>, <fpage>3</fpage>&#x2013;<lpage>15</lpage>. <pub-id pub-id-type="doi">10.1007/s11207-011-9841-3</pub-id> </citation>
</ref>
<ref id="B33">
<citation citation-type="journal">
<person-group person-group-type="author">
<name>
<surname>Raeder</surname>
<given-names>J.</given-names>
</name>
<name>
<surname>McPherron</surname>
<given-names>R. L.</given-names>
</name>
<name>
<surname>Frank</surname>
<given-names>L. A.</given-names>
</name>
<name>
<surname>Kokubun</surname>
<given-names>S.</given-names>
</name>
<name>
<surname>Lu</surname>
<given-names>G.</given-names>
</name>
<name>
<surname>Mukai</surname>
<given-names>T.</given-names>
</name>
<etal/>
</person-group> (<year>2001</year>). <article-title>Global Simulation of the Geospace Environment Modeling Substorm challenge Event</article-title>. <source>J.&#x20;Geophys. Res. (Space Physics)</source> <volume>106</volume>, <fpage>381</fpage>&#x2013;<lpage>396</lpage>. <pub-id pub-id-type="doi">10.1029/2000JA000605</pub-id> </citation>
</ref>
<ref id="B34">
<citation citation-type="journal">
<person-group person-group-type="author">
<name>
<surname>Raissi</surname>
<given-names>M.</given-names>
</name>
<name>
<surname>Perdikaris</surname>
<given-names>P.</given-names>
</name>
<name>
<surname>Karniadakis</surname>
<given-names>G. E.</given-names>
</name>
</person-group> (<year>2019</year>). <article-title>Physics-informed Neural Networks: A Deep Learning Framework for Solving Forward and Inverse Problems Involving Nonlinear Partial Differential Equations</article-title>. <source>J.&#x20;Comput. Phys.</source> <volume>378</volume>, <fpage>686</fpage>&#x2013;<lpage>707</lpage>. <pub-id pub-id-type="doi">10.1016/j.jcp.2018.10.045</pub-id> </citation>
</ref>
<ref id="B35">
<citation citation-type="journal">
<person-group person-group-type="author">
<name>
<surname>Ryu</surname>
<given-names>D.</given-names>
</name>
<name>
<surname>Jones</surname>
<given-names>T. W.</given-names>
</name>
</person-group> (<year>1995</year>). <article-title>Numerical Magnetohydrodynamics in Astrophysics</article-title>. <source>Alg. Tests One-dimens. Flow</source> <volume>442</volume>, <fpage>228</fpage>. <pub-id pub-id-type="doi">10.1086/175437</pub-id> </citation>
</ref>
<ref id="B36">
<citation citation-type="journal">
<person-group person-group-type="author">
<name>
<surname>Sirignano</surname>
<given-names>J.</given-names>
</name>
<name>
<surname>Spiliopoulos</surname>
<given-names>K.</given-names>
</name>
</person-group> (<year>2018</year>). <article-title>DGM: A Deep Learning Algorithm for Solving Partial Differential Equations</article-title>. <source>J.&#x20;Comput. Phys.</source> <volume>375</volume>, <fpage>1339</fpage>&#x2013;<lpage>1364</lpage>. <pub-id pub-id-type="doi">10.1016/j.jcp.2018.08.029</pub-id> </citation>
</ref>
<ref id="B37">
<citation citation-type="journal">
<person-group person-group-type="author">
<name>
<surname>Sitnov</surname>
<given-names>M.</given-names>
</name>
<name>
<surname>Stephens</surname>
<given-names>G.</given-names>
</name>
<name>
<surname>Motoba</surname>
<given-names>T.</given-names>
</name>
<name>
<surname>Swisdak</surname>
<given-names>M.</given-names>
</name>
</person-group> (<year>2021</year>). <article-title>Data Mining Reconstruction of Magnetotail Reconnection and Implications for its First-Principle Modeling</article-title>. <source>Front. Phys.</source> <volume>9</volume>, <fpage>90</fpage>. <pub-id pub-id-type="doi">10.3389/fphy.2021.644884</pub-id> </citation>
</ref>
<ref id="B38">
<citation citation-type="book">
<person-group person-group-type="author">
<name>
<surname>Sj&#xf6;gren</surname>
<given-names>R.</given-names>
</name>
<name>
<surname>Svensson</surname>
<given-names>D.</given-names>
</name>
<name>
<surname>Lee</surname>
<given-names>A. D.</given-names>
</name>
<name>
<surname>Baudin</surname>
<given-names>M.</given-names>
</name>
<name>
<surname>Christopoulou</surname>
<given-names>M.</given-names>
</name>
<name>
<surname>Collette</surname>
<given-names>Y.</given-names>
</name>
<etal/>
</person-group> (<year>2018</year>). [<comment>Dataset</comment>]. <source>Pydoe2</source>. <comment>Available at: <ext-link ext-link-type="uri" xlink:href="https://github.com/clicumu/pyDOE2">https://github.com/clicumu/pyDOE2</ext-link>
</comment> (<comment>Accessed May, 2020</comment>).</citation>
</ref>
<ref id="B39">
<citation citation-type="journal">
<person-group person-group-type="author">
<name>
<surname>Slavin</surname>
<given-names>J.&#x20;A.</given-names>
</name>
<name>
<surname>Lepping</surname>
<given-names>R. P.</given-names>
</name>
<name>
<surname>Gjerloev</surname>
<given-names>J.</given-names>
</name>
<name>
<surname>Fairfield</surname>
<given-names>D. H.</given-names>
</name>
<name>
<surname>Hesse</surname>
<given-names>M.</given-names>
</name>
<name>
<surname>Owen</surname>
<given-names>C. J.</given-names>
</name>
<etal/>
</person-group> (<year>2003</year>). <article-title>Geotail Observations of Magnetic Flux Ropes in the Plasma Sheet</article-title>. <source>J.&#x20;Geophys. Res. (Space Physics)</source> <volume>108</volume>, <fpage>1015</fpage>. <pub-id pub-id-type="doi">10.1029/2002JA009557</pub-id> </citation>
</ref>
<ref id="B40">
<citation citation-type="journal">
<person-group person-group-type="author">
<name>
<surname>Sod</surname>
<given-names>G. A.</given-names>
</name>
</person-group> (<year>1978</year>). <article-title>Review. A Survey of Several Finite Difference Methods for&#x20;Systems of Nonlinear Hyperbolic Conservation Laws</article-title>. <source>J.&#x20;Comput. Phys.</source> <volume>27</volume>, <fpage>1</fpage>&#x2013;<lpage>31</lpage>. <pub-id pub-id-type="doi">10.1016/0021-9991(78)90023-2</pub-id> </citation>
</ref>
<ref id="B41">
<citation citation-type="journal">
<person-group person-group-type="author">
<name>
<surname>Sonnerup</surname>
<given-names>B. U. &#xd6;.</given-names>
</name>
<name>
<surname>Hasegawa</surname>
<given-names>H.</given-names>
</name>
<name>
<surname>Paschmann</surname>
<given-names>G.</given-names>
</name>
</person-group> (<year>2004</year>). <article-title>Anatomy of a Flux Transfer Event Seen by Cluster</article-title>. <source>Geophys. Res. Lett.</source> <volume>31</volume>, <fpage>L11803</fpage>. <pub-id pub-id-type="doi">10.1029/2004GL020134</pub-id> </citation>
</ref>
<ref id="B42">
<citation citation-type="journal">
<person-group person-group-type="author">
<name>
<surname>Teh</surname>
<given-names>W. L.</given-names>
</name>
<name>
<surname>&#xc3;-. Sonnerup</surname>
<given-names>B. U.</given-names>
</name>
</person-group> (<year>2008</year>). <article-title>First Results from Ideal 2-D MHD Reconstruction: Magnetopause Reconnection Event Seen by Cluster</article-title>. <source>Ann. Geophysicae</source> <volume>26</volume>, <fpage>2673</fpage>&#x2013;<lpage>2684</lpage>. <pub-id pub-id-type="doi">10.5194/angeo-26-2673-2008</pub-id> </citation>
</ref>
<ref id="B43">
<citation citation-type="journal">
<person-group person-group-type="author">
<name>
<surname>T&#xf3;th</surname>
<given-names>G.</given-names>
</name>
<name>
<surname>Sokolov</surname>
<given-names>I. V.</given-names>
</name>
<name>
<surname>Gombosi</surname>
<given-names>T. I.</given-names>
</name>
<name>
<surname>Chesney</surname>
<given-names>D. R.</given-names>
</name>
<name>
<surname>Clauer</surname>
<given-names>C. R.</given-names>
</name>
<name>
<surname>de Zeeuw</surname>
<given-names>D. L.</given-names>
</name>
<etal/>
</person-group> (<year>2005</year>). <article-title>Space Weather Modeling Framework: A New Tool for the Space Science Community</article-title>. <source>J.&#x20;Geophys. Res. (Space Phys.)</source> <volume>110</volume>, <fpage>A12226</fpage>. <pub-id pub-id-type="doi">10.1029/2005JA011126</pub-id> </citation>
</ref>
<ref id="B44">
<citation citation-type="journal">
<person-group person-group-type="author">
<name>
<surname>Upendran</surname>
<given-names>V.</given-names>
</name>
<name>
<surname>Cheung</surname>
<given-names>M. C. M.</given-names>
</name>
<name>
<surname>Hanasoge</surname>
<given-names>S.</given-names>
</name>
<name>
<surname>Krishnamurthi</surname>
<given-names>G.</given-names>
</name>
</person-group> (<year>2020</year>). <article-title>Solar Wind Prediction Using Deep Learning</article-title>. <source>Space Weather</source> <volume>18</volume>, <fpage>e02478</fpage>. <pub-id pub-id-type="doi">10.1029/2020sw002478</pub-id> </citation>
</ref>
<ref id="B45">
<citation citation-type="book">
<person-group person-group-type="author">
<name>
<surname>Wang</surname>
<given-names>S.</given-names>
</name>
<name>
<surname>Teng</surname>
<given-names>Y.</given-names>
</name>
<name>
<surname>Perdikaris</surname>
<given-names>P.</given-names>
</name>
</person-group> (<year>2020a</year>). <source>Understanding and Mitigating Gradient Pathologies in Physics-Informed Neural Networks</source>. <comment>arXiv e-prints</comment>. <comment>arXiv:2001.04536</comment>.</citation>
</ref>
<ref id="B46">
<citation citation-type="journal">
<person-group person-group-type="author">
<name>
<surname>Wang</surname>
<given-names>X.</given-names>
</name>
<name>
<surname>Chen</surname>
<given-names>Y.</given-names>
</name>
<name>
<surname>Toth</surname>
<given-names>G.</given-names>
</name>
<name>
<surname>Manchester</surname>
<given-names>W. B.</given-names>
</name>
<name>
<surname>Gombosi</surname>
<given-names>T. I.</given-names>
</name>
<name>
<surname>Hero</surname>
<given-names>A. O.</given-names>
</name>
<etal/>
</person-group> (<year>2020b</year>). <article-title>Predicting Solar Flares with Machine Learning</article-title>. <source>Invest. Sol. Cycle Depend.</source> <volume>895</volume>, <fpage>3</fpage>. <pub-id pub-id-type="doi">10.3847/1538-4357/ab89ac</pub-id> </citation>
</ref>
<ref id="B47">
<citation citation-type="journal">
<person-group person-group-type="author">
<name>
<surname>Zhang</surname>
<given-names>B.</given-names>
</name>
<name>
<surname>Sorathia</surname>
<given-names>K. A.</given-names>
</name>
<name>
<surname>Lyon</surname>
<given-names>J.&#x20;G.</given-names>
</name>
<name>
<surname>Merkin</surname>
<given-names>V. G.</given-names>
</name>
<name>
<surname>Garretson</surname>
<given-names>J.&#x20;S.</given-names>
</name>
<name>
<surname>Wiltberger</surname>
<given-names>M.</given-names>
</name>
</person-group> (<year>2019</year>). <article-title>GAMERA: A Three-Dimensional Finite-Volume MHD Solver for Non-orthogonal Curvilinear Geometries</article-title>. <source>Astrophys. J.&#x20;Suppl. Ser.</source> <volume>244</volume>, <fpage>20</fpage>. <pub-id pub-id-type="doi">10.3847/1538-4365/ab3a4c</pub-id> </citation>
</ref>
<ref id="B48">
<citation citation-type="journal">
<person-group person-group-type="author">
<name>
<surname>Zhu</surname>
<given-names>C.</given-names>
</name>
<name>
<surname>Byrd</surname>
<given-names>R. H.</given-names>
</name>
<name>
<surname>Lu</surname>
<given-names>P.</given-names>
</name>
<name>
<surname>Nocedal</surname>
<given-names>J.</given-names>
</name>
</person-group> (<year>1997</year>). <article-title>Algorithm 778: L-Bfgs-B: Fortran Subroutines for Large-Scale Bound-Constrained Optimization</article-title>. <source>ACM Trans. Math. Softw.</source> <volume>23</volume>, <fpage>550</fpage>&#x2013;<lpage>560</lpage>. <pub-id pub-id-type="doi">10.1145/279232.279236</pub-id> </citation>
</ref>
</ref-list>
</back>
</article>