<html>
<head>
<meta http-equiv="Content-Type" content="text/html; charset=us-ascii">
</head>
<body style="word-wrap: break-word; -webkit-nbsp-mode: space; line-break: after-white-space;" class="">
Yes, you can use a matrix-free approach on this matrix just like what you would do on the IJacobian matrix. Only the multTranspose operation needs to be overloaded for the adjoint. 
<div class="">
<div><br class="">
</div>
<div>Hong</div>
<div><br class="">
<blockquote type="cite" class="">
<div class="">On Jul 30, 2020, at 6:52 PM, Salazar De Troya, Miguel via petsc-users <<a href="mailto:petsc-users@mcs.anl.gov" class="">petsc-users@mcs.anl.gov</a>> wrote:</div>
<br class="Apple-interchange-newline">
<div class="">
<div class="WordSection1" style="page: WordSection1; caret-color: rgb(0, 0, 0); font-family: Verdana; font-size: 14px; font-style: normal; font-variant-caps: normal; font-weight: normal; letter-spacing: normal; text-align: start; text-indent: 0px; text-transform: none; white-space: normal; word-spacing: 0px; -webkit-text-stroke-width: 0px; text-decoration: none;">
<div style="margin: 0in; font-size: 12pt; font-family: Calibri, sans-serif;" class="">
<span lang="ES" style="font-size: 11pt;" class="">Hi,<o:p class=""></o:p></span></div>
<div style="margin: 0in; font-size: 12pt; font-family: Calibri, sans-serif;" class="">
<span lang="ES" style="font-size: 11pt;" class=""><o:p class=""> </o:p></span></div>
<div style="margin: 0in; font-size: 12pt; font-family: Calibri, sans-serif;" class="">
<span style="font-size: 11pt;" class="">The jacobian of the RHS w.r.t. the parameter P is a matrix that will be multiplied by the adjoint solution within TSAdjoint(). I am interested in having access to that adjoint so I can calculate shape derivatives with
 firedrake_adjoint. I will have to use that adjoint function, apply it to the residual and calculate the shape derivative from the resulting 0-form to obtain my RHSJacobianP*adjoint. This is the workaround done in pyadjoint:<span class="Apple-converted-space"> </span><a href="https://github.com/dolfin-adjoint/pyadjoint/blob/e6fbd13f8ac63290804852fa2f27307c44bdc9e3/dolfin_adjoint_common/blocks/solving.py#L204" style="color: rgb(5, 99, 193); text-decoration: underline;" class="">https://github.com/dolfin-adjoint/pyadjoint/blob/e6fbd13f8ac63290804852fa2f27307c44bdc9e3/dolfin_adjoint_common/blocks/solving.py#L204</a><span class="Apple-converted-space"> </span>Is
 there another alternative within PETSc? Maybe using a matrix free approach?<o:p class=""></o:p></span></div>
<div style="margin: 0in; font-size: 12pt; font-family: Calibri, sans-serif;" class="">
<span style="font-size: 11pt;" class=""><o:p class=""> </o:p></span></div>
<div style="margin: 0in; font-size: 12pt; font-family: Calibri, sans-serif;" class="">
<span style="font-size: 11pt;" class="">Thanks<o:p class=""></o:p></span></div>
<div style="margin: 0in; font-size: 12pt; font-family: Calibri, sans-serif;" class="">
<span style="font-size: 11pt;" class="">Miguel<o:p class=""></o:p></span></div>
<div style="margin: 0in; font-size: 12pt; font-family: Calibri, sans-serif;" class="">
<span style="font-size: 11pt;" class=""><o:p class=""> </o:p></span></div>
<div style="margin: 0in; font-size: 12pt; font-family: Calibri, sans-serif;" class="">
<span lang="ES" style="font-size: 9pt; font-family: Consolas;" class="">Miguel A. Salazar de Troya</span><span lang="ES" style="font-size: 10.5pt;" class=""><o:p class=""></o:p></span></div>
<div class="">
<div style="margin: 0in; font-size: 12pt; font-family: Calibri, sans-serif;" class="">
<span style="font-size: 9pt; font-family: Consolas;" class="">Postdoctoral Researcher, Lawrence Livermore National Laboratory</span><span style="font-size: 10.5pt;" class=""><o:p class=""></o:p></span></div>
</div>
<div class="">
<div style="margin: 0in; font-size: 12pt; font-family: Calibri, sans-serif;" class="">
<span style="font-size: 9pt; font-family: Consolas;" class="">B141</span><span style="font-size: 10.5pt;" class=""><o:p class=""></o:p></span></div>
</div>
<div class="">
<div style="margin: 0in; font-size: 12pt; font-family: Calibri, sans-serif;" class="">
<span style="font-size: 9pt; font-family: Consolas;" class="">Rm: 1085-5</span><span style="font-size: 10.5pt;" class=""><o:p class=""></o:p></span></div>
</div>
<div class="">
<div style="margin: 0in; font-size: 12pt; font-family: Calibri, sans-serif;" class="">
<span style="font-size: 9pt; font-family: Consolas;" class="">Ph: 1(925) 422-6411</span></div>
</div>
</div>
</div>
</blockquote>
</div>
<br class="">
</div>
</body>
</html>