\* Parallelise the for-loops in `obsFiltEst()`. While execution may be slower for a small number of sources and receiver positions, the overall execution time will not increase significantly due to the functions' generally fast performance.\
\* Parallelise the for-loops in `obsFiltEst()`. While execution may be slower for a small number of sources and receiver positions, the overall execution time will not increase significantly due to the functions' generally fast performance.\
\* Parallelise on of the for-loops in `obsFiltTD()`. While execution may be slower for a small number of sources and receiver positions, the overall execution time will not increase significantly due to the functions' generally fast performance.\
\* Parallelise on of the for-loops in `obsFiltTD()`. While execution may be slower for a small number of sources and receiver positions, the overall execution time will not increase significantly due to the functions' generally fast performance.\
\* Update `obsFilt()` to return the condition of the perturbed power spectral density matrix.
\* Update `obsFilt()` to return the condition of the perturbed power spectral density matrix.