diff --git a/.github/workflows/JOSS.yml b/.github/workflows/JOSS.yml new file mode 100644 index 0000000..9524280 --- /dev/null +++ b/.github/workflows/JOSS.yml @@ -0,0 +1,20 @@ +name: JOSS Paper +on: [push] + +jobs: + paper: + runs-on: ubuntu-latest + name: JOSS Paper + steps: + - name: Checkout + uses: actions/checkout@v4 + - name: Build draft PDF + uses: openjournals/openjournals-draft-action@master + with: + journal: joss + paper-path: paper/paper.md + - name: Upload + uses: actions/upload-artifact@v1 + with: + name: JOSS Paper + path: paper/paper.pdf \ No newline at end of file diff --git a/paper/paper.bib b/paper/paper.bib new file mode 100644 index 0000000..fd1395d --- /dev/null +++ b/paper/paper.bib @@ -0,0 +1,207 @@ +@Article{DuneFEM, +author={Dedner, Andreas +and Kl{\"o}fkorn, Robert +and Nolte, Martin +and Ohlberger, Mario}, +title={A generic interface for parallel and adaptive discretization schemes: abstraction principles and the Dune-Fem module}, +journal={Computing}, +year={2010}, +month={Nov}, +day={01}, +volume={90}, +number={3}, +pages={165-196}, +abstract={Starting from an abstract mathematical notion of discrete function spaces and operators, we derive a general abstraction for a large class of grid-based discretization schemes for stationary and instationary partial differential equations. Special emphasis is put on concepts for local adaptivity and parallelization with dynamic load balancing. The concepts are based on a corresponding abstract definition of a parallel and hierarchical adaptive grid given in Bastian et al. (Computing 82(2--3):103--119, 2008). Based on the abstract framework, we describe an efficient object oriented implementation of a generic interface for grid-based discretization schemes that is realized in the Dune-Fem library (http://dune.mathematik.uni-freiburg.de). By using interface classes we manage to separate functionality from data structures. Efficiency is obtained by using modern template based generic programming techniques, including static polymorphism, the engine concept, and template metaprogramming. We present numerical results for several benchmark problems and some advanced applications.}, +issn={1436-5057}, +doi={10.1007/s00607-010-0110-3}, +url={https://doi.org/10.1007/s00607-010-0110-3} +} +@Article{dealII, + title = {The \texttt{deal.II} Library, Version 9.5}, + author = {Daniel Arndt and Wolfgang Bangerth and Maximilian Bergbauer and + Marco Feder and Marc Fehling and Johannes Heinz and + Timo Heister and Luca Heltai and Martin Kronbichler and + Matthias Maier and Peter Munch and Jean-Paul Pelteret and + Bruno Turcksin and David Wells and Stefano Zampini}, + journal = {Journal of Numerical Mathematics}, + year = {2023}, + doi = {10.1515/jnma-2023-0089}, + pages = {231--246}, + volume = {31}, + number = {3}, + url = {https://dealii.org/deal95-preprint.pdf} +} +@Article{dealII2, + title = {The {deal.II} finite element library: Design, features, and insights}, + author = {Daniel Arndt and Wolfgang Bangerth and Denis Davydov and + Timo Heister and Luca Heltai and Martin Kronbichler and + Matthias Maier and Jean-Paul Pelteret and Bruno Turcksin and + David Wells}, + journal = {Computers \& Mathematics with Applications}, + year = {2021}, + DOI = {10.1016/j.camwa.2020.02.022}, + pages = {407-422}, + volume = {81}, + issn = {0898-1221}, + url = {https://arxiv.org/abs/1910.13247} +} +@article{Basix, + title = {Construction of arbitrary order finite element degree-of-freedom maps on polygonal and polyhedral cell meshes}, + author = {M. W. Scroggs and J. S. Dokken and C. N. Richardson and G. N. Wells}, + journal = {ACM Transactions on Mathematical Software}, + year = {2022}, + volume = {48}, + number = {2}, + doi = {10.1145/3524456}, + pages = {{18:1--18:23}}, +} + +@article{Basix2, + title = {Basix: a runtime finite element basis evaluation library}, + author = {M. W. Scroggs and I. A. Baratta and C. N. Richardson and G. N. Wells}, + journal = {Journal of Open Source Software}, + year = {2022}, + volume = {7}, + number = {73}, + doi = {10.21105/joss.03982}, + pages = {3982} +} + +@article{FEniCS, + title = {The {FEniCS} Project Version 1.5}, + author = {M. S. Alnaes and J. Blechta and J. Hake and A. Johansson and B. Kehlet and A. Logg and C. Richardson and J. Ring and M. E. Rognes and G. N. Wells}, + journal = {Archive of Numerical Software}, + year = {2015}, + volume = {3}, + doi = {10.11588/ans.2015.100.20553}, +} + +@book{FEniCSBook, + title = {Automated Solution of Differential Equations by the Finite Element Method}, + author = {A. Logg and {K.-A.} Mardal and G. N. Wells and others}, + year = {2012}, + doi = {10.1007/978-3-642-23099-8}, + publisher = {Springer}, +} + +@article{DOLFIN, + title = {{DOLFIN:} Automated Finite Element Computing}, + author = {A. Logg and G. N. Wells}, + journal = {{ACM} Transactions on Mathematical Software}, + year = {2010}, + volume = {37}, + doi = {10.1145/1731022.1731030}, +} + +@incollection{DOLFIN2, + title = {{DOLFIN:} a {C++/Python} Finite Element Library}, + author = {A. Logg and G. N. Wells and J. Hake}, + year = {2012}, + booktitle = {Automated Solution of Differential Equations by the Finite Element Method}, + publisher = {Springer}, + series = {Lecture Notes in Computational Science and Engineering}, + volume = {84}, + chapter = {10}, + editor = {A. Logg and {K.-A.} Mardal and G. N. Wells}, +} + +@article{Kirby, + title = {A Compiler for Variational Forms}, + author = {R. C. Kirby and A. Logg}, + journal = {{ACM} Transactions on Mathematical Software}, + year = {2006}, + volume = {32}, + doi = {10.1145/1163641.1163644}, +} + +@incollection{FFC, + title = {{FFC:} the {FEniCS} Form Compiler}, + author = {A. Logg and K. B. Ølgaard and M. E. Rognes and G. N. Wells}, + year = {2012}, + booktitle = {Automated Solution of Differential Equations by the Finite Element Method}, + publisher = {Springer}, + series = {Lecture Notes in Computational Science and Engineering}, + volume = {84}, + chapter = {11}, + editor = {A. Logg and {K.-A.} Mardal and G. N. Wells}, +} + +@article{FEniCSQuadrature, + title = {Optimisations for Quadrature Representations of Finite Element Tensors Through Automated Code Generation}, + author = {K. B. Ølgaard and G. N. Wells}, + journal = {{ACM} Transactions on Mathematical Software}, + year = {2010}, + volume = {37}, + doi = {10.1145/1644001.1644009}, +} + +@article{UFL, + title = {Unified Form Language: A domain-specific language for weak formulations of partial differential equations}, + author = {M. S. Alnaes and A. Logg and K. B. Ølgaard and M. E. Rognes and G. N. Wells}, + journal = {{ACM} Transactions on Mathematical Software}, + year = {2014}, + volume = {40}, + doi = {10.1145/2566630}, +} + +@article{Kirby2, + title = {Algorithm 839: {FIAT,} a New Paradigm for Computing Finite Element Basis Functions}, + author = {R. C. Kirby}, + journal = {{ACM} Transactions on Mathematical Software}, + year = {2004}, + volume = {30}, + doi = {10.1145/1039813.1039820}, + pages = {{502--516}}, +} + +@incollection{Kirby3, + title = {{FIAT:} Numerical Construction of Finite Element Basis Functions}, + author = {R. C. Kirby}, + year = {2012}, + booktitle = {Automated Solution of Differential Equations by the Finite Element Method}, + publisher = {Springer}, + series = {Lecture Notes in Computational Science and Engineering}, + volume = {84}, + chapter = {13}, + editor = {A. Logg and {K.-A.} Mardal and G. N. Wells}, +} +@manual{Firedrake, + title = {Firedrake User Manual}, + author = {David A. Ham and Paul H. J. Kelly and Lawrence Mitchell and Colin J. Cotter and Robert C. Kirby and Koki Sagiyama and Nacime Bouziani and Sophia Vorderwuelbecke and Thomas J. Gregory and Jack Betteridge and Daniel R. Shapero and Reuben W. Nixon-Hill and Connor J. Ward and Patrick E. Farrell and Pablo D. Brubeck and India Marsden and Thomas H. Gibson and Miklós Homolya and Tianjiao Sun and Andrew T. T. McRae and Fabio Luporini and Alastair Gregory and Michael Lange and Simon W. Funke and Florian Rathgeber and Gheorghe-Teodor Bercea and Graham R. Markall}, + organization = {Imperial College London and University of Oxford and Baylor University and University of Washington}, + edition = {First edition}, + year = {2023}, + month = {5}, + doi = {10.25561/104839}, +} +@misc{DuneVEM, + title={A framework for implementing general virtual element spaces}, + author={Andreas Dedner and Alice Hodson}, + year={2023}, + eprint={2208.08978}, + archivePrefix={arXiv}, + primaryClass={math.NA} +} +@Article{Netgen, + author={Sch{\"o}berl, Joachim}, + title={NETGEN An advancing front 2D/3D-mesh generator based on abstract rules}, + journal={Computing and Visualization in Science}, + year={1997}, + month={Jul}, + day={01}, + volume={1}, + number={1}, + pages={41-52}, + abstract={In this paper, the algorithms of the automatic mesh generator NETGEN are described. The domain is provided by a Constructive Solid Geometry (CSG). The whole task of 3D mesh generation splits into four subproblems of special point calculation, edge following, surface meshing and finally volume mesh generation. Surface and volume mesh generation are based on the advancing front method. Emphasis is given to the abstract structure of the element generation rules. Several techniques of mesh optimization are tested and quality plots are presented.}, + issn={1432-9360}, + doi={10.1007/s007910050004}, + url={https://doi.org/10.1007/s007910050004} +} +@article{NGSolve, + title={C++ 11 implementation of finite elements in NGSolve}, + author={Sch{\"o}berl, Joachim}, + journal={Institute for analysis and scientific computing, Vienna University of Technology}, + volume={30}, + year={2014}, + publisher={Citeseer} +} \ No newline at end of file diff --git a/paper/paper.md b/paper/paper.md new file mode 100644 index 0000000..e3c711a --- /dev/null +++ b/paper/paper.md @@ -0,0 +1,49 @@ +--- +title: 'ngsPETSc: Yet an other NGSolve/Netgen -- PETSc interface' +tags: + - Python + - PDE + - FEM + - Mesh +authors: + - name: Patrick E. Farrell + orcid: 0000-0002-1241-7060 + equal-contrib: true + affiliation: 1 + - name: Joachim Schöberl + equal-contrib: true + affiliation: 2 + - name: Stefano Zampini + orcid: 0000-0002-0435-0433 + equal-contrib: true + affiliation: 3 + - name: Umberto Zerbinati + orcid: 0000-0002-2577-1106 + equal-contrib: true + corresponding: true + affiliation: 1 +affiliations: + - name: University of Oxford, United Kingdom + index: 1 + - name: TU Wien, Austria + index: 2 + - name: King Abdullah University of Science and Technology, Saudi Arabia + index: 3 +date: 13 August 2017 +bibliography: paper.bib + +--- + +# Summary + +There are few common ingredients in any Finite Element (FE) simulation, among these common ingredients there are a mesh generation and an efficient linear or non-linear solve. +Furthermore in recent years that have been an increasing focus in the development of finite element solvers both as useful research tool and also to solve real-life application, just to mention a few: Deal II [@DealII], Dune + +# Statement of need + +# Citations + + +# Acknowledgements + +# References \ No newline at end of file