Hi Shruti, The direct linear solver used by MATLAB depends on the symmetry of the Jacobian matrix. For MATPOWER test cases that have symmetric Jacobians (due to inactive taps), a Cholesky factorization is used (LL^T = A). For cases that lead to non-symmetric Jacobian, MATLAB uses UMFPACK for performing the linear solve.
Shri From: Shruti Rao <[email protected]<mailto:[email protected]>> Reply-To: MATPOWER discussion forum <[email protected]<mailto:[email protected]>> Date: Sunday, October 18, 2015 at 5:37 PM To: MATPOWER discussion forum <[email protected]<mailto:[email protected]>> Subject: Question about sparsity-based implementation in MATPower Greetings MATPower community, I had a question about the way sparsity-based techniques are used in the Newton-Raphson solver of the power flow algorithm in MATPower. I ran the code step-by-step and from my understanding, the way the sparsity of the Jacobian matrix is exploited is that it is created as a MATLAB "sparse" matrix wherein only the non-zeros are stored with the respective matrix positions and then the MATLAB operator "\" is invoked while calculating dx = -(J \ F); where J is the Jacobian and F is the vector of mismatches. MATLAB "\" by default exploits the sparsity of the matrix by using a LU solver. The kind of solver "\" uses actually depends on the matrix structure if it is diagonal/tridiagonal/banded and so on (Flowchart obtained from Mathworks website attached in the email). I assume based on the typical structure of the Jacobian that an LU solver is most likely to be chosen. Is my understanding correct or am I missing something out? Thank you for your time and effort. -- Best Regards, Shruti Dwarkanath Rao Graduate Research Assistant School of Electrical, Computer and Energy Engineering Arizona State University Tempe, AZ, 85281 650 996 0116
