joint gramian update