Skip to content

Commit

Permalink
minor updates and spelling corrections
Browse files Browse the repository at this point in the history
  • Loading branch information
wayne-arter committed Feb 18, 2024
1 parent c1ddddc commit 0919194
Show file tree
Hide file tree
Showing 26 changed files with 64 additions and 57 deletions.
2 changes: 1 addition & 1 deletion BD/BD.tex
Original file line number Diff line number Diff line change
Expand Up @@ -26,7 +26,7 @@
\item {\bf STRATEGIC FIT} % - to UKAEA mission

{\bf National}: The \exc \ project is of national importance to UK government
(represented by the BEIS dept.) to demonstrate
(represented initially by the BEIS and subsequently the DESNZ dept.) to demonstrate
how to produce software that can exploit all the latest, most powerful hardware
for scientific computation. The Fusion Modelling System~(FMS) is one
of \exc 's principal use cases, for which project \nep \ will explore efficient development of
Expand Down
2 changes: 1 addition & 1 deletion DDF/basic_objects.tex
Original file line number Diff line number Diff line change
@@ -1,6 +1,6 @@
\textbf{Notes} Procedures denoted in boldface, as separate sections.\\
\emph{n-D} does not include time\\
Refs \cite{sciplan} in exc.bib
\cite{sciplan} in exc.bib

\subsection{Base classes}\label{sec:base-classes}
The proposed base classes for \nep\ are listed below and shown graphically in \Fig{baseclasses}.
Expand Down
2 changes: 1 addition & 1 deletion DDF/desipatt.tex
Original file line number Diff line number Diff line change
@@ -1,5 +1,5 @@
The design patterns likely to be most relevant to \nep \ are described
in refs~\cite{y2re332,y2re333}.
in~\cite{y2re332,y2re333}.

The PUPPETEER pattern appears to be
exclusive to the works of Rouson~et~al, hence is described further here.
Expand Down
4 changes: 2 additions & 2 deletions DDF/functions.tex
Original file line number Diff line number Diff line change
Expand Up @@ -55,7 +55,7 @@ \subsection{Solution}\label{sec:solution}
\item
Outer loop over time
\item
Inner loop over solvera
Inner loop over solver

\begin{itemize}
\item
Expand Down Expand Up @@ -95,7 +95,7 @@ \subsection{Solution}\label{sec:solution}
\item
Gyro-averaging
\item
Sparse models for Data Assimilation (SINDy)
Sparse models for Data Assimilation (via SINDy)
\item
Gaussian Process
\item
Expand Down
2 changes: 1 addition & 1 deletion DJF/general.tex
Original file line number Diff line number Diff line change
Expand Up @@ -4,7 +4,7 @@
special coding at boundaries, the educational material for finite difference
modellers explains why this approach is unsatisfactory, and the same objection
also applies to AMR type meshes, although in view of the unexpected success of AMR
in fluid and PIC codes, it was carefully discussed as detailed in ref~\cite{y1re211}. The
in fluid and PIC codes, it was carefully discussed as detailed in~\cite{y1re211}. The
most serious objection appeared to be the need to represent plasma diffusion
which is strongly anisotropic due to an applied magnetic field. (Moreover,
if hanging nodes are allowed in the FEM, then AMR behaviour may be reproduced by FEM codes,
Expand Down
8 changes: 4 additions & 4 deletions MGT/MGT_intro.tex
Original file line number Diff line number Diff line change
Expand Up @@ -4,7 +4,7 @@
presents guidance concerning the mechanics of an opensource development
by a community distributed across different sites and organisations,
intended to produce software intended for widespread long-term usage.
Parts of ref~\cite{y3re314} relate more to
Parts of~\cite{y3re314} relate more to
the technical specification~(TS) and are reproduced in \Sec{TS_sw_response},
another part concerns operational aspects~(OP), see \Sec{OP_MGT}.
Its recommendations are broadly consistent with those laid out by Bungarth \&
Expand All @@ -14,9 +14,9 @@
and does not cover code coupling, both of which topics are discussed in the open literature,
see in particular Lawrence~et~al~\cite{La18Cros} for HPC software engineering and
Belete~et~al~\cite{Be17over} for code coupling,
also see other \nep \ reports, particularly refs~\cite{y2re312,y2re333,y3re72}.
also see other \nep \ reports, particularly~\cite{y2re312,y2re333,y3re72}.

Ref~\cite{y3re314} assumes that all the community has signed up to a ``Charter"
\cite{y3re314} assumes that all the community has signed up to a ``Charter"
which for \nep \ appeared as report~\cite{charter}, reproduced in \Sec{charter}.
The guidance\cite{y3re314} includes important issues that need to be agreed as early as possible.
%drawing on the ``Development Plan" document~\cite{y2d34} and on
Expand All @@ -33,7 +33,7 @@
%This note relates most closely to the third case.
The guidance document\cite{y3re314} also seeks not merely to prescribe, but to
give compelling arguments for the choices made in respect of guidelines.
Acknowledging the possibility of diagreements, it states that efforts will be made to ensure
Acknowledging the possibility of disagreements, it states that efforts will be made to ensure
consensus or at least agreement between the two most affected project partners
on any decisions taken. However, in the event of continuing disagreement, the technical
leader or `Lead' for the project will ultimately decide on the basis of technical
Expand Down
2 changes: 1 addition & 1 deletion MGT/charter.tex
Original file line number Diff line number Diff line change
Expand Up @@ -76,4 +76,4 @@
3-clause BSD for core/foundational infrastructure~\cite{bsd3clause}). Government
Digital Service guidance (to which the project subscribes), discussing
the benefits of open versus closed technology/software/data can be found
in refs~\cite{os,os2}.
in~\cite{os,os2}.
4 changes: 2 additions & 2 deletions MGT/dudson.tex
Original file line number Diff line number Diff line change
Expand Up @@ -31,7 +31,7 @@ \subsection{Meetings and Workshops} \label{sec:meet}
\item Documentation infrastructure, ie.\ as a website
\item A repository for long-term storage of large files, records of
meetings, presentations etc. (eg.\ Google shared drive)
\item A chat/messaging service such as Slack, to facilitate interactions
\item A chat/messaging service such as Slack or Zulip, to facilitate interactions
between developers
\end{enumerate}
As these are established, a series of training workshops should be
Expand Down Expand Up @@ -152,7 +152,7 @@ \subsection{Development workflow} \label{sec:develop}
through a pull request mechanism which ensures peer review and testing. Bug fixes
and feature development are done in separate branches, either in the same
repository, or in forked repositories. When someone encounters a bug, or wishes to
develop a new feature, the recommended approach ise:
develop a new feature, the recommended approach is:

\begin{enumerate}
\item An issue is opened, describing the bug or feature request or proposal. This
Expand Down
2 changes: 1 addition & 1 deletion OP/DevMan.tex
Original file line number Diff line number Diff line change
Expand Up @@ -11,7 +11,7 @@

Separate the subject from body with a blank line and limit the subject line to 50 characterss

Importance of Slack
Importance of Slack or Zulip

producing FMS reports collaboratively using git and mostly LaTeX some markdown,
markdown is not a standard, except very minimally, so I would demand compatibility with pandoc.
Expand Down
2 changes: 1 addition & 1 deletion OP/UMan.tex
Original file line number Diff line number Diff line change
Expand Up @@ -5,7 +5,7 @@
recipient can immediately execute in a browser
\newsectionnobreak{Feedback and Communication}{sec:feedback}
\begin{itemize}
\item Matrix chat - Slack?
\item Matrix chat - Slack or Zulip?
\item Discourse group
\item Mailing list
\item Suggestion box
Expand Down
2 changes: 1 addition & 1 deletion OP/objdisc.tex
Original file line number Diff line number Diff line change
@@ -1,6 +1,6 @@
\begin{table}[h]
\begin{center}
\caption{Key Strategies for Object Identification. After Table~5.1 from ref~\cite{douglass},
\caption{Key Strategies for Object Identification. After Table~5.1 from~\cite{douglass},
slightly amended.
All the strategies except the last, are concerned with identifying the objects listed.
\label{tab:objdisc}}
Expand Down
2 changes: 1 addition & 1 deletion OP/opmgt.tex
Original file line number Diff line number Diff line change
Expand Up @@ -19,7 +19,7 @@ \subsection{Documentation} \label{sec:doc}
include elements such as equations, code blocks, graphs and figures.
It should also be easily convertible to other formats, and in
particular online documentation. \LaTeX \ as used to produce the current document
can be easily converted to .html as explained in ref~\cite{y2d34} provided
can be easily converted to .html as explained in~\cite{y2d34} provided
the restrictions (as to accepted packages) noted in the reference are observed.
\end{itemize}

10 changes: 6 additions & 4 deletions PN/PN.tex
Original file line number Diff line number Diff line change
Expand Up @@ -34,7 +34,8 @@ \subsection{Benefits of community membership}
In addition members will also gain
\begin{itemize}
\item Access to reports as the community produces them, in the access-controlled github site~\cite{xpndocswebsite},
subdirectories {\tt reports} and {\tt reports/ukaea\_reports}.
subdirectories {\tt reports} and {\tt reports/ukaea\_reports}. (\cite{neptunesearchwebsite} is a searchable public github site
containing most of the material.)
These directories already include educational material on
\begin{itemize}
\item Finite elements
Expand All @@ -43,16 +44,17 @@ \subsection{Benefits of community membership}
\item Uncertainty Quantification
\item Aspects of software engineering, such as design patterns
\end{itemize}
\item Rights to attend workshops and shape the \nep\ software, announced in the Slack channel.
\item Rights to attend workshops and shape the \nep\ software, announced in the Slack or Zulip channel.
\item Right to attend project lectures on work performed by the community, and on
relevant background material such as the spectral/hp element method, announced in the Slack channel.
relevant background material such as the spectral/hp element method, announced in the Slack or Zulip channel.
\item The {\tt tex} subdirectory~\cite{xpntexwebsite} contains bibtex databases to aid report writing in subdirectory {\tt bib} and graphics suitable for producing presentations
in subdirectories {\tt pics} and {\tt png}.
\end{itemize}
The Slack channel is `\#excalibur-neptune'. (The Slack communication
software is downloadable from \url{https://slack.com/}).
It is anticipated that Slack will ultimately replaced by an Opensource option such as Zulip.

(Note that access to most \nep \ reports is restricted to community members.)
(Note that access to some \nep \ reports is restricted to community members.)

\subsection{Convention on use of IETF Keywords (not yet enforced)}
The RFC2119 subset of the Internet Engineering Task Force~(IETF) keywords~\cite{rfc2119}
Expand Down
12 changes: 6 additions & 6 deletions RB/edgeprop.tex
Original file line number Diff line number Diff line change
Expand Up @@ -12,7 +12,7 @@
Unless stated otherwise, the derived length, timescales and speeds are derived from
formulae and graphs in Wesson's book~\cite[Chap 10]{wesson}.
The derived quantities have been checked against SI formulae
in ref~\cite[Table 2.2]{miyamoto}, and also compared with those
in~\cite[Table 2.2]{miyamoto}, and also compared with those
listed in~\cite[Appendix]{Xu10Inte}. It is worth noting that although
the latter table describes the SOL of JET (and in addition its separatrix and pedestal),
JET values are typically within a factor of~$2$ of those for MAST, hence similar
Expand Down Expand Up @@ -77,8 +77,8 @@ \subsection{Applicability of Fluid Models}\label{sec:applmhd}
although MHD treats a faster timescale, it is valid on longer timescales, provided
relevant smaller/slower terms are retained.)
Moreover, SOL timescales involving filaments are fast, witnessed by the fact that
the ion gyro-frequency is used as normalisation for electrostatic models in
ref~\cite{Mi12Simu}, which from \Sec{props} is a not too dissimilar timescale~$10^{-7}\,s$
the ion gyro-frequency is used as normalisation for electrostatic models in~\cite{Mi12Simu},
which from \Sec{props} is a not too dissimilar timescale~$10^{-7}\,s$
to the Alfven timescale based on the poloidal field~($1$\,cm/$10^6 \approx 10^{-8}$\,s).
Later, Freidberg~\cite{freidberg}
showed that, at least in directions perpendicular to~${\bf B}$, the dynamical MHD equation
Expand All @@ -99,8 +99,8 @@ \subsection{Applicability of Fluid Models}\label{sec:applmhd}

\subsection{Effect of Neutrals}\label{sec:neuts}
Formulae for a weakly ionised plasma are given in the Plasma Formulary~\cite{NRLpf07}.
The collision cross-sections for electrons and ions respectively from
ref~\cite{Ha91hydr} are $\sigma_s^{e|0}= 10^{-19}$\,$m^2$ and
The collision cross-sections for electrons and ions respectively from~\cite{Ha91hydr}
are $\sigma_s^{e|0}= 10^{-19}$\,$m^2$ and
$\sigma_s^{i|0}= 4 \times 10^{-19}$\,$m^2$.
Hence, the collision frequencies for electrons and ions respectively are
\begin{equation}
Expand All @@ -127,7 +127,7 @@ \subsection{Effect of Neutrals}\label{sec:neuts}
\eta_{e {\sf n}\parallel} =4 \frac{{\sf n}}{n},\;\;\;
\eta_{i {\sf n}\parallel} =0.5 \frac{{\sf n}}{n}
\end{equation}
The implication from the formulae in ref~\cite{Le06emer} is that
The implication from the formulae in~\cite{Le06emer} is that
the value for $\eta_{e \parallel}$ combines additively with the usual
Spitzer value in a more
highly ionised plasma. Assuming ${\sf n} \approx n$, however the correction
Expand Down
1 change: 1 addition & 0 deletions README.md
Original file line number Diff line number Diff line change
Expand Up @@ -18,6 +18,7 @@ If you want to generate just the pdf version of the website then you perform the
```
bash buildwebsite-local.sh PDF
```
and the PDF appears as ./public/main.pdf

## Partial PDF and HTML generation
If you want to generate just the HTML and PDF of some tex, and not the whole website, then you perform the following command (where proxyapps/proxyapps is replaced with the relative path to the tex file you want to convert to PDF and HTML)
Expand Down
4 changes: 3 additions & 1 deletion REF/acro.tex
Original file line number Diff line number Diff line change
Expand Up @@ -59,6 +59,7 @@
DDD & Document-Driven Design \\
DE & Differential equation \\
DEIM & Discrete Empirical Interpolation Method \\
DESNZ & Department for Energy Security and Net Zero \\
DFT & Discrete Fourier Transform \\
DiMDc & Dynamic mode decomposition with control \\
DL & Deep learning \\
Expand Down Expand Up @@ -246,7 +247,7 @@
SDLC & Software Development Life Cycle \\
SGD & Stochastic gradient descent \\
SIAM & Society for Industrial and Applied Mathematics \\
SINDy & Sparse identification of nonlinear dynamics \\
SINDy & Sparse identification of nonlinear dynamical systems \\
SISO & Single input, single output \\
SLA & Service-level Agreement \\
SLE & Software Language Extensions \\
Expand All @@ -260,6 +261,7 @@
SOL & Scrape-Off Layer \\
SOLEDGE & name of edge modelling code \\
SOLPS & name of edge modelling code combines B2 and EIRENE\\
SpH & Spatial Hybridisation \\
SPH & Smoothed Particle Hydrodynamics \\
SRC & Sparse representation for classification \\
SRO & Senior Responsible Owner role in UK government project delivery \\
Expand Down
6 changes: 3 additions & 3 deletions REF/symb.tex
Original file line number Diff line number Diff line change
Expand Up @@ -58,7 +58,7 @@
${\bf v}_\textrm{diff}$ & `diffusive' perpendicular fluid velocity component & $m s^{-1}$ \\
${\bf x}=\left(x_1,x_2,\dots,x_d\right)$ & is a $d$-dimensional vector & \\
${\bf x}$ & position & $m$ \\
$b_n$ & `b-factors'~ref~\cite[slide 21]{omullane} & \\
$b_n$ & `b-factors'~\cite[slide 21]{omullane} & \\
$\boldsymbol{\xi}(\theta)$ & multi-dimensional random variable with a specific probability distribution as a function of the random parameter~$0\leq\theta\leq 1$ & \\
$\boldsymbol{B}$ & (K+S) Basis matrix & \\
$\boldsymbol{D}_{\xi}$ & (K+S) Elemental derivative matrix with respect to $\xi$ & \\
Expand Down Expand Up @@ -155,7 +155,7 @@
$i$ & as suffix generic label & \\
$I$ & as suffix labels Monte-Carlo interactions & \\
$I_\phi$ & $\phi-$ or toroidal component of plasma current & $A$ \\
$I_H$ & Hydrogen reionisation potential as defined in ref~\cite{Ha13Benc} & $eV$ \\
$I_H$ & Hydrogen reionisation potential as defined in~\cite{Ha13Benc} & $eV$ \\
$i,j,k$ & (K+S) General summation indices & \\
$^I\mathcal{F}_{i\sigma}$ & coefficient of ionisation for the transition from metastable state~$\sigma$ to regular excited state~$i$ & \\
$\in$ & (Sets) Is a member of; belongs to & \\
Expand Down Expand Up @@ -338,7 +338,7 @@
$q_\alpha$ & charge on a particle of species~$\alpha$ & $C$ \\
$q_e$ & charge on an electron, negative by convention & $C$ \\
$Q(f_\alpha, f_\beta)$ & Boltzmann collision operator & $m^{-6} s^2$ \\
$Q_H$ & cooling rate due to excitation as defined in ref~\cite{Ha13Benc} & $K m^{-3} s^{-1}$ \\
$Q_H$ & cooling rate due to excitation as defined in~\cite{Ha13Benc} & $K m^{-3} s^{-1}$ \\
$q_i$ & charge on an ion & $C$ \\
$q_{\|e}$ & electron energy flux along fieldline & $J m^{-2} s^{-1}$ \\
$q_{\|i}$ & ion energy flux along fieldline & $J m^{-2} s^{-1}$ \\
Expand Down
2 changes: 1 addition & 1 deletion TS/mgt.tex
Original file line number Diff line number Diff line change
Expand Up @@ -100,7 +100,7 @@ \subsection{Code style} \label{sec:style}
recommend the following one for coders who wish to do so.

For C++, based on the recommendations of the book ``Professional C++" (eg.\
ref~\cite[\S\,7]{solterkleper}, the following prefix strings should be employed:
\cite[\S\,7]{solterkleper}, the following prefix strings should be employed:
`m\_' for member (particularly useful for indicating scope),
`p\_' for pointer, `s\_' for static, `k\_' for constant,
`f\_' for flag (Boolean value),
Expand Down
2 changes: 1 addition & 1 deletion TS/naming.tex
Original file line number Diff line number Diff line change
Expand Up @@ -21,7 +21,7 @@ \subsubsection{Two character variables}\label{sec:two-character-variables}

Each keyboard character will be represented by one or two lowercase
letters, normally those which form the first two letters of its name,
ommitting `o', thus :
omitting `o', thus :

\begin{itemize}
\item `a' will represent `a'
Expand Down
18 changes: 9 additions & 9 deletions TS/nonfunc.tex
Original file line number Diff line number Diff line change
Expand Up @@ -24,8 +24,8 @@ \subsection{General Considerations}\label{sec:TS_considers}
further into packages which might contain in turn $10$-$50$ modules.
As a way of providing further indication to developers,
it is helpful to talk of packages as being arranged into layers, as discussed
in ref~\cite[\S\S\,2.4,3.2]{y2re333}, see \Fig{hierarchygroup}.
Then, as prefigured in ref~\cite[Annex~A]{y2re333}, it should be possible to encapsulate
in~\cite[\S\S\,2.4,3.2]{y2re333}, see \Fig{hierarchygroup}.
Then, as prefigured in~\cite[Annex~A]{y2re333}, it should be possible to encapsulate
the necessary complexity in one, albeit large diagram.
\begin{figure}
\centerline{\includegraphics[width=0.7\textwidth]{./png/hierarchygroup.png}}
Expand All @@ -36,14 +36,14 @@ \subsection{General Considerations}\label{sec:TS_considers}

\subsection{Considerations for Scientific Software}\label{sec:TS_scistruct}
\subsubsection{Structural Considerations}\label{sec:TS_structure}
In both refs~\cite{y1re331,y2re332}, a figure from Dubey~et~al~\cite{Du16Idea} is reproduced
In both~\cite{y1re331,y2re332}, a figure from Dubey~et~al~\cite{Du16Idea} is reproduced
that illustrates how scientific software may be developed by beginning with an ``infrastructure"
capability into which initially exploratory scientific software is integrated as its worth
is established. Unfortunately for \nep, it is not clear initially what aspects of the infrastructure
will be durable and stable, although once the software is more mature, Dubey~et~al's methodology
appears attractive.

The literature referenced in ref~\cite{y2re333}
The literature referenced in~\cite{y2re333}
indicates that scientific software should be produced by aggregation, but is less
helpful as to what is to be aggregated, ie.\ the modular decomposition as to what should
constitute a single module etc.
Expand Down Expand Up @@ -73,7 +73,7 @@ \subsubsection{Interactions between Modules}\label{sec:TS_modulint}
use of a directed, acyclic graph~(DAG) structure might be thought mandatory,
particularly to process the input
data in order to specify coherently the construction of the elements of the solution matrix.
However, as prefigured in ref~\cite{y2re333} for the gyrokinetics code \F{GS2},
However, as prefigured in~\cite{y2re333} for the gyrokinetics code \F{GS2},
the tightly coupled nature of the central edge
physics problem means that input is more about gathering \emph{all} the data, for only at that point
can fields be computed and only after that may matrix coefficients be computed.
Expand Down Expand Up @@ -103,7 +103,7 @@ \subsubsection{Notation}
%requires only one copy of a class's attributes to be compiled, whereas only the very latest versions of C++
%avoid recompilation of namespaces when a .cpp file is changed.
UML nomenclature is preferred herein, for which \Tab{TS_umltrans} provides a limited
translation into C++ and Object Fortran. % is reproduced as Table~1 in ref~\cite{y2re332}.
translation into C++ and Object Fortran. % is reproduced as Table~1 in~\cite{y2re332}.

\begin{table}[tbph]
\begin{center}
Expand All @@ -123,7 +123,7 @@ \subsubsection{Notation}
\hline
\end{tabular}
Further insight into UML terminology may be gained from the description
of the patterns in refs~\cite{y2re332,y2re333}.
of the patterns in~\cite{y2re332,y2re333}.
\end{center}
\end{table}

Expand All @@ -133,7 +133,7 @@ \subsubsection{Module design}
The focus herein is the structure within a module. Specifically, the module describes a single class or object
(strictly speaking in UML terms, objects are instances of a class), which is
fundamental in that it is defined without use of aggregation.
Tthe software - consistent with Clerman and Spector~\cite[\S\,11]{clermanspector} -
The software - consistent with Clerman and Spector~\cite[\S\,11]{clermanspector} -
that is promoted by Arter et al~\cite{fprog} for an object-oriented language, recognises two sizes of fundamental class
and it is easier to start by considering the smaller, denoted smallobj\_m.

Expand Down Expand Up @@ -219,7 +219,7 @@ \subsubsection{Module design}
other modules. In fact a common addition to the default modules is a method function \T{getunit} that returns \T{ninbo},
illustrating the approved way of accessing such data.

%The source as mentioned in ref~\cite{y2re333} may be obtained by download of
%The source as mentioned in~\cite{y2re333} may be obtained by download of
%program~\I{smardda-qprog}~\cite{qprogwebsite}.
The reason for the emphasis on input and output from and to disc (I/O)
is to facilitate the construction of a test harness
Expand Down
Loading

0 comments on commit 0919194

Please sign in to comment.