--- a
+++ b/inst/@CovarLanczos/diag.m
@@ -0,0 +1,30 @@
+% Diagonal elements.
+% 
+% d = diag(C)
+%
+% Return the diagonal elements of the CovarLanczos matrix C. 
+
+function d = diag(self)
+
+N = size(self.Q,1);
+d = zeros(N,1);
+
+for i=1:N
+  d(i) = self.Q(i,:) * (self.T \ self.Q(i,:)');
+end
+
+
+% Copyright (C) 2014 Alexander Barth <a.barth@ulg.ac.be>
+%
+% This program is free software; you can redistribute it and/or modify it under
+% the terms of the GNU General Public License as published by the Free Software
+% Foundation; either version 2 of the License, or (at your option) any later
+% version.
+%
+% This program is distributed in the hope that it will be useful, but WITHOUT
+% ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or
+% FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License for more
+% details.
+%
+% You should have received a copy of the GNU General Public License along with
+% this program; if not, see <http://www.gnu.org/licenses/>.