This repository contains the open data associated with the journal paper titled "Efficient implementation of high-order finite elements for Helmholtz problems" by Hadrien Bériot, Albert Prinn and Gwénaël Gabard published in the International Journal for Numerical Methods in Engineering. The DOI of this paper is 10.1002/nme.5172. See also the ePrints page http://eprints.soton.ac.uk/384370. Figures 3 and 4 --------------- The file `figures_3_4.mat` contains the data for the analysis of p-FEM at fixed order. As explain in section 3.1 this is for the simulation of a plane wave on a cube. The file `figures_3_4.mat` provides all the data required to generate figures 3 and 4. It contains the following variables: * `H1`: the H1 relative error. * `Memory`: the maximum memory used during the factorisation of the global system of equation. * `Ndofs`: the total number of degrees of freedom. * `Nelements`: the number of elements along the side of the cube. * `NonZeroEntries`: the number of non-zero entries in the global matrix. * `Time`: the factorisation time (see the paper for the details of the PC used for this). * `order_list`: a vector containing the polynomial orders included in the calculation. With the exception of `order_list` all these variables are 10x10 arrays. The first dimension is the polynomial order, and the second dimension is associated with the number of elements along the side of the cube (the exact value is in `Nelements`). The Matlab script `figures_3_4.m` shows how to load this data and generate figures 3 and 4. Figure 7 -------- This figure is part of the validation of the adaptive scheme. The data is in the file `figure_7.mat` which contains the following variables: * `target`: a vector of target levels of relative L2 error. * `L2`: the actual L2 error over the whole domain. This is a vector of the same size as `target`. * `min_error`: the smallest error obtained on an individual element. This is a vector of the same size as `target`. * `max_error`: the largest error obtained on an individual element. This is a vector of the same size as `target`. The Matlab script `figure_7.m` shows how to load this data and generate the graphs in figure 7. Figures 9 and 10 ---------------- Figures 9 and 10 show the performance of the adaptive scheme in 3D. Four different meshes are considered and the data for each is contained in the files `cube_ratio1.mat`, `cube_ratio5.mat`, `cube_ratio10.mat` and `cube_ratio4.mat`. Each file contains the following: * `FREQ`: a vector of frequencies. * `ERROR`: the relative L2 on the whole domain. This is a matrix where the first dimension corresponds to the frequencies (in `FREQ`) and the second dimension corresponds to the three different error targets defined in the paper. * `MIN_ORDER`, `MAX_ORDER`, `MEAN_ORDER`: the smallest, largest and average polynomial orders on the mesh. These are matrices where the first dimension corresponds to the frequencies (in `FREQ`) and the second dimension corresponds to the three different error targets defined in the paper. The Matlab script `figures_9_10.m` shows how to load these files and generate the graphs in figures 9 and 10. Figure 11 --------- This figure shows the effect of pollution effect associated with the domain length. Each graph in figure 11 corresponds to a different Helmholtz number: 5, 10, 20 and 40. The data for each graph is in a separate file: `domain_length_omega5.mat`, `domain_length_omega10.mat`, `domain_length_omega20.mat` and `domain_length_omega40.mat`. Each of these files contain the following: * `LENGTH`: a vector containing all the lengths of the domain considered. * `ERH1`: a vector containing the H1 error for each of the domain length in `LENGTH`. * `ERL2`: a vector containing the H1 error for each of the domain length in `LENGTH`. * `minL2`: the smallest L2 error predicted on an individual element by the adaptive scheme. This is a vector of the same size as `LENGTH`. * `maxL2`: the largest L2 error predicted on an individual element by the adaptive scheme. This is a vector of the same size as `LENGTH`. The Matlab script `figure_11.m` shows how to load these files and generate the graphs in figure 11. Contact ------- Questions or comments can be sent to Gwenael Gabard, Institute of Sound and Vibration Research, University of Southampton, UK (gabard@southampton.ac.uk).