<html><head><meta http-equiv="content-type" content="text/html; charset=utf-8"></head><body style="overflow-wrap: break-word; -webkit-nbsp-mode: space; line-break: after-white-space;"><div dir="auto" style="overflow-wrap: break-word; -webkit-nbsp-mode: space; line-break: after-white-space;"><br><div><blockquote type="cite"><div>On 25 Apr 2023, at 11:43 AM, Matthew Knepley <knepley@gmail.com> wrote:</div><br class="Apple-interchange-newline"><div><div dir="ltr"><div dir="ltr">On Mon, Apr 24, 2023 at 11:47 PM ­권승리 / 학생 / 항공우주공학과 <<a href="mailto:ksl7912@snu.ac.kr">ksl7912@snu.ac.kr</a>> wrote:<br></div><div class="gmail_quote"><blockquote class="gmail_quote" style="margin:0px 0px 0px 0.8ex;border-left:1px solid rgb(204,204,204);padding-left:1ex"><div dir="ltr"><div>Dear all</div><div><br></div>It depends on the problem. It can have hundreds of thousands of degrees of freedom.</div></blockquote><div><br></div><div>Suppose your matrix was dense and had 1e6 dofs. The work to invert a matrix is O(N^3) with a small</div><div>constant, so it would take 1e18 = 1 exaflop to invert this matrix and about 10 Terabytes of RAM to store</div><div>it. Is this available to you? PETSc's supports Elemental and SCALAPACK for this kind of calculation.</div><div><br></div><div>If the system is sparse, you could invert it using MUMPS, SuperLU_dist, or Pardiso. Then the work and</div><div>storage depend on the density. There are good estimates for connectivity based on regular grids of given</div><div>dimension. The limiting resource here is usually memory, which motivates people to try iterative methods.</div><div>The convergence of iterative methods depend on detailed properties of your system, like the operator spectrum.</div></div></div></div></blockquote><div><br></div><div>And to wrap this up, if your operator is truly dense, e.g., BEM or non-local discretizations, their are available hierarchical formats such as MatH2Opus and MatHtool.</div><div>They have efficient matrix-vector product implementations such that you can solve linear systems without having to invert (or even store) the coefficient matrix explicitly.</div><div><br></div><div>Thanks,</div><div>Pierre</div><br><blockquote type="cite"><div><div dir="ltr"><div class="gmail_quote"><div>  Thanks,</div><div><br></div><div>     Matt</div><div> </div><blockquote class="gmail_quote" style="margin:0px 0px 0px 0.8ex;border-left:1px solid rgb(204,204,204);padding-left:1ex"><div dir="ltr"><div>best,</div><div><br></div><div>Seung Lee Kwon</div></div><br><div class="gmail_quote"><div dir="ltr" class="gmail_attr">2023년 4월 25일 (화) 오후 12:32, Barry Smith <<a href="mailto:bsmith@petsc.dev" target="_blank">bsmith@petsc.dev</a>>님이 작성:<br></div><blockquote class="gmail_quote" style="margin:0px 0px 0px 0.8ex;border-left:1px solid rgb(204,204,204);padding-left:1ex"><div><div><br></div>  How large are the dense matrices you would like to invert?<br><div><br><blockquote type="cite"><div>On Apr 24, 2023, at 11:27 PM, ­권승리 / 학생 / 항공우주공학과 <<a href="mailto:ksl7912@snu.ac.kr" target="_blank">ksl7912@snu.ac.kr</a>> wrote:</div><br><div><div dir="ltr">Dear all<div><br></div><div>Hello.</div><div>I want to make an inverse matrix like inv(A) in MATLAB.</div><div><br></div><div>Are there some methods to inverse matrix in petsc?</div><div><br></div><div>If not, I want to use the inverse function in the LAPACK library.</div><div><br></div><div>Then, how to use the LAPACK library in petsc? I use the C language.</div><div><br></div><div>Best,</div><div><br></div><div>Seung Lee Kwon</div><div><div><br></div><span>-- </span><br><div dir="ltr"><div dir="ltr"><div>Seung Lee Kwon, Ph.D.Candidate</div><div>Aerospace Structures and Materials Laboratory</div><div>Department of Mechanical and Aerospace Engineering</div><div>Seoul National University</div><div>Building 300 Rm 503, Gwanak-ro 1, Gwanak-gu, Seoul, South Korea, 08826</div><div>E-mail : <a href="mailto:ksl7912@snu.ac.kr" target="_blank">ksl7912@snu.ac.kr</a></div><div>Office : +82-2-880-7389</div><div>C. P : +82-10-4695-1062</div></div></div></div></div>
</div></blockquote></div><br></div></blockquote></div><br clear="all"><div><br></div><span>-- </span><br><div dir="ltr"><div dir="ltr"><div>Seung Lee Kwon, Ph.D.Candidate</div><div>Aerospace Structures and Materials Laboratory</div><div>Department of Mechanical and Aerospace Engineering</div><div>Seoul National University</div><div>Building 300 Rm 503, Gwanak-ro 1, Gwanak-gu, Seoul, South Korea, 08826</div><div>E-mail : <a href="mailto:ksl7912@snu.ac.kr" target="_blank">ksl7912@snu.ac.kr</a></div><div>Office : +82-2-880-7389</div><div>C. P : +82-10-4695-1062</div></div></div>
</blockquote></div><br clear="all"><div><br></div><span class="gmail_signature_prefix">-- </span><br><div dir="ltr" class="gmail_signature"><div dir="ltr"><div><div dir="ltr"><div><div dir="ltr"><div>What most experimenters take for granted before they begin their experiments is infinitely more interesting than any results to which their experiments lead.<br>-- Norbert Wiener</div><div><br></div><div><a href="http://www.cse.buffalo.edu/~knepley/" target="_blank">https://www.cse.buffalo.edu/~knepley/</a><br></div></div></div></div></div></div></div></div>
</div></blockquote></div><br></div></body></html>