diff --git a/src/libnptm/outputs.cpp b/src/libnptm/outputs.cpp
index 58f40cd5865b1455cd0a0f0b47c2ec099511c241..68e0e62b26a9c0eb87ef43b05d73456206264a64 100644
--- a/src/libnptm/outputs.cpp
+++ b/src/libnptm/outputs.cpp
@@ -3065,6 +3065,10 @@ InclusionOutputInfo::InclusionOutputInfo(const std::string &hdf5_name) {
     vec_fsas12 = new dcomplex[xi_block_size];
     status = hdf_file->read("VEC_FSAS12", str_type, vec_fsas12);
     // Initialize directions (they are scale-independent)
+    vec_dir_tidg = new double[_num_theta];
+    vec_dir_tsdg = new double[_num_thetas];
+    vec_dir_pidg = new double[_num_phi];
+    vec_dir_psdg = new double[_num_phis];
     double cti = th, cpi = ph, cts = ths, cps = phs;
     for (int di = 0; di < _num_theta; di++) {
       vec_dir_tidg[di] = cti;