diff --git a/parser/parser-gpaw/parser2.py b/parser/parser-gpaw/parser2.py
index ed99b99a3e290a50dc51e97b51e138d5130810cc..ab2ea62baf6a49721fb284456381561293792dff 100644
--- a/parser/parser-gpaw/parser2.py
+++ b/parser/parser-gpaw/parser2.py
@@ -137,6 +137,34 @@ def parse(filename):
                           c(r.occupations.fermilevel, 'eV'))
             p.addRealValue('energy_reference_fermi',
                           c(r.occupations.fermilevel, 'eV'))
+
+            # Load 3D arrays ("volumetric data")
+            origin = -0.5 * r.atoms.cell
+            npoints = np.array(r.density.density.shape[1:])
+            npoints[~r.atoms.pbc] += 1
+            displacements = r.atoms.cell / npoints
+
+            def add_3d_array(values, kind, unit):
+                with o(p, 'section_volumetric_data'):
+                    p.addArrayValues('volumetric_data_origin',
+                                     origin, 'angstrom')
+                    p.addArrayValues('volumetric_data_displacements',
+                                     displacements, 'angstrom')
+                    p.addArrayValues('volumetric_data_values', values)
+                    p.addValue('volumetric_data_kind', kind)
+                    p.addValue('volumetric_data_unit', unit)
+
+            # H.atom.ulm.gpw test can be used to verify that pseudodensity
+            # integrates to 0.98, corresponding closely to the norm of the
+            # H 1s pseudowavefunction (see output of "gpaw-setup H").
+            # It has mixed BCs so this should show that npoints is taken
+            # care of correctly, hopefully.
+            add_3d_array(r.density.density, kind='density',
+                         unit='angstrom**(-3)')
+            add_3d_array(r.hamiltonian.potential, kind='potential_effective',
+                         unit='eV*angstrom**(-3)')
+
+
             if hasattr(r.results, 'forces'):
                 p.addArrayValues('atom_forces_free_raw',
                                  c(r.results.forces, 'eV/angstrom'))
diff --git a/test/examples/Au.fcc.ulm.gpw b/test/examples/Au.fcc.ulm.gpw
new file mode 100644
index 0000000000000000000000000000000000000000..bbd22a11b884ee975914f41a970c7a1e56eedda1
Binary files /dev/null and b/test/examples/Au.fcc.ulm.gpw differ
diff --git a/test/examples/H.atom.ulm.gpw b/test/examples/H.atom.ulm.gpw
new file mode 100644
index 0000000000000000000000000000000000000000..b0c9828abc01d3eef29b6424ca85ce765ef4d40f
Binary files /dev/null and b/test/examples/H.atom.ulm.gpw differ