## Not understood [🇷 for BE/BA]

❝ Can you describe what you meant?

Hello ElMaestro!

logREML of all data is just sum of individual subject logREML. See Mary J. Lindstrom and Douglas M. Bates, Newton-Raphson and EM Algorithms for Linear Mixed-Effects Models for Repeated-Measures Data.

You can make big sparce V matrix for all data and then inverce it (solve(CovM) in your code above) or you can take indiviual Xi and Vi and calculate logREML for each subject and sum.

Problem1: when you have big matrix invercing is slow as hell, but if you inverce by blocks (you can do it because it block-diagonal) it can be done faster.

Problem2: In BE case you have many equal Zi matrices, so in logREML calculation (if you calc by subject) you inverce one matrix many times (because V = ZGZ'+R, Z can be different, G and R not changing subject by subject). If you cache result - you can seriously increase performance.

So, I didn't read all R code (sorry) and I didn't understand what approach is used.