<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=""><div class=""><br class=""></div>  Some of the ugliness of SetFromOptions in some of the nested solvers :-(<div class=""><br class=""></div><div class=""><div style="margin: 0px; font-stretch: normal; font-size: 14px; line-height: normal; font-family: Menlo;" class=""><span style="font-variant-ligatures: no-common-ligatures" class="">* thread #1, queue = </span><span style="font-variant-ligatures: no-common-ligatures; color: #2fb41d" class="">'com.apple.main-thread'</span><span style="font-variant-ligatures: no-common-ligatures" class="">, stop reason = </span><span style="font-variant-ligatures: no-common-ligatures; color: #b42419" class="">breakpoint 1.1</span></div><div style="margin: 0px; font-stretch: normal; font-size: 14px; line-height: normal; font-family: Menlo;" class=""><span style="font-variant-ligatures: no-common-ligatures" class="">  * frame #0: </span><span style="font-variant-ligatures: no-common-ligatures; color: #9fa01c" class="">0x00000001132795f0</span><span style="font-variant-ligatures: no-common-ligatures" class=""> libpetsc.3.017.3.dylib`KSPSetFromOptions(ksp=0x00007f899f149a70) at </span><span style="font-variant-ligatures: no-common-ligatures; color: #2eaebb" class="">itcl.c</span><span style="font-variant-ligatures: no-common-ligatures" class="">:</span><span style="font-variant-ligatures: no-common-ligatures; color: #9fa01c" class="">324</span><span style="font-variant-ligatures: no-common-ligatures" class="">:</span><span style="font-variant-ligatures: no-common-ligatures; color: #9fa01c" class="">19</span></div><div style="margin: 0px; font-stretch: normal; font-size: 14px; line-height: normal; font-family: Menlo;" class=""><span style="font-variant-ligatures: no-common-ligatures" class="">    frame #1: </span><span style="font-variant-ligatures: no-common-ligatures; color: #9fa01c" class="">0x0000000112eddda4</span><span style="font-variant-ligatures: no-common-ligatures" class=""> libpetsc.3.017.3.dylib`PCSetUp_FieldSplit(pc=0x00007f899f08d870) at </span><span style="font-variant-ligatures: no-common-ligatures; color: #2eaebb" class="">fieldsplit.c</span><span style="font-variant-ligatures: no-common-ligatures" class="">:</span><span style="font-variant-ligatures: no-common-ligatures; color: #9fa01c" class="">1087</span><span style="font-variant-ligatures: no-common-ligatures" class="">:</span><span style="font-variant-ligatures: no-common-ligatures; color: #9fa01c" class="">32</span></div><div style="margin: 0px; font-stretch: normal; font-size: 14px; line-height: normal; font-family: Menlo;" class=""><span style="font-variant-ligatures: no-common-ligatures" class="">    frame #2: </span><span style="font-variant-ligatures: no-common-ligatures; color: #9fa01c" class="">0x0000000112dfb874</span><span style="font-variant-ligatures: no-common-ligatures" class=""> libpetsc.3.017.3.dylib`PCSetUp(pc=0x00007f899f08d870) at </span><span style="font-variant-ligatures: no-common-ligatures; color: #2eaebb" class="">precon.c</span><span style="font-variant-ligatures: no-common-ligatures" class="">:</span><span style="font-variant-ligatures: no-common-ligatures; color: #9fa01c" class="">991</span><span style="font-variant-ligatures: no-common-ligatures" class="">:</span><span style="font-variant-ligatures: no-common-ligatures; color: #9fa01c" class="">5</span></div><div style="margin: 0px; font-stretch: normal; font-size: 14px; line-height: normal; font-family: Menlo;" class=""><span style="font-variant-ligatures: no-common-ligatures" class="">    frame #3: </span><span style="font-variant-ligatures: no-common-ligatures; color: #9fa01c" class="">0x0000000113285834</span><span style="font-variant-ligatures: no-common-ligatures" class=""> libpetsc.3.017.3.dylib`KSPSetUp(ksp=0x00007f899e95f670) at </span><span style="font-variant-ligatures: no-common-ligatures; color: #2eaebb" class="">itfunc.c</span><span style="font-variant-ligatures: no-common-ligatures" class="">:</span><span style="font-variant-ligatures: no-common-ligatures; color: #9fa01c" class="">401</span><span style="font-variant-ligatures: no-common-ligatures" class="">:</span><span style="font-variant-ligatures: no-common-ligatures; color: #9fa01c" class="">3</span></div><div style="margin: 0px; font-stretch: normal; font-size: 14px; line-height: normal; font-family: Menlo;" class=""><span style="font-variant-ligatures: no-common-ligatures" class="">    frame #4: </span><span style="font-variant-ligatures: no-common-ligatures; color: #9fa01c" class="">0x000000011328b5e9</span><span style="font-variant-ligatures: no-common-ligatures" class=""> libpetsc.3.017.3.dylib`KSPSolve_Private(ksp=0x00007f899e95f670, b=0x00007f899f0dec70, x=0x00007f899f0ce870) at </span><span style="font-variant-ligatures: no-common-ligatures; color: #2eaebb" class="">itfunc.c</span><span style="font-variant-ligatures: no-common-ligatures" class="">:</span><span style="font-variant-ligatures: no-common-ligatures; color: #9fa01c" class="">835</span><span style="font-variant-ligatures: no-common-ligatures" class="">:</span><span style="font-variant-ligatures: no-common-ligatures; color: #9fa01c" class="">3</span></div><div style="margin: 0px; font-stretch: normal; font-size: 14px; line-height: normal; font-family: Menlo;" class=""><span style="font-variant-ligatures: no-common-ligatures" class="">    frame #5: </span><span style="font-variant-ligatures: no-common-ligatures; color: #9fa01c" class="">0x000000011328aa66</span><span style="font-variant-ligatures: no-common-ligatures" class=""> libpetsc.3.017.3.dylib`KSPSolve(ksp=0x00007f899e95f670, b=0x00007f899f0dec70, x=0x00007f899f0ce870) at </span><span style="font-variant-ligatures: no-common-ligatures; color: #2eaebb" class="">itfunc.c</span><span style="font-variant-ligatures: no-common-ligatures" class="">:</span><span style="font-variant-ligatures: no-common-ligatures; color: #9fa01c" class="">1066</span><span style="font-variant-ligatures: no-common-ligatures" class="">:</span><span style="font-variant-ligatures: no-common-ligatures; color: #9fa01c" class="">3</span></div><div style="margin: 0px; font-stretch: normal; font-size: 14px; line-height: normal; font-family: Menlo;" class=""><span style="font-variant-ligatures: no-common-ligatures" class="">    frame #6: </span><span style="font-variant-ligatures: no-common-ligatures; color: #9fa01c" class="">0x000000010e7c94e8</span><span style="font-variant-ligatures: no-common-ligatures" class=""> ex1111`main(argc=12, args=0x00007ff7b1739328) at </span><span style="font-variant-ligatures: no-common-ligatures; color: #2eaebb" class="">ex1111.c</span><span style="font-variant-ligatures: no-common-ligatures" class="">:</span><span style="font-variant-ligatures: no-common-ligatures; color: #9fa01c" class="">33</span><span style="font-variant-ligatures: no-common-ligatures" class="">:</span><span style="font-variant-ligatures: no-common-ligatures; color: #9fa01c" class="">3</span></div><div style="margin: 0px; font-stretch: normal; font-size: 14px; line-height: normal; font-family: Menlo;" class=""><span style="font-variant-ligatures: no-common-ligatures" class="">    frame #7: </span><span style="font-variant-ligatures: no-common-ligatures; color: #9fa01c" class="">0x000000011703751e</span><span style="font-variant-ligatures: no-common-ligatures" class=""> dyld`start + 462</span></div><div style="margin: 0px; font-stretch: normal; font-size: 14px; line-height: normal; font-family: Menlo;" class=""><span style="font-variant-ligatures: no-common-ligatures" class=""><br class=""></span></div><div style="margin: 0px; font-stretch: normal; font-size: 14px; line-height: normal; font-family: Menlo;" class=""><span style="font-variant-ligatures: no-common-ligatures" class="">The SetFromOptions doesn't always traverse all the sub-methods suitably calling SetFromOptions on them because they may not have been created by the time that</span></div><div style="margin: 0px; font-stretch: normal; font-size: 14px; line-height: normal; font-family: Menlo;" class=""><span style="font-variant-ligatures: no-common-ligatures" class="">the SetFromOptions is first called. In this case, the PCSetUp_FieldSplit() creates the sub solvers and calls the options database on them after the initial call to PCSetFromOptions_FieldSplit() </span></div><div style="margin: 0px; font-stretch: normal; font-size: 14px; line-height: normal; font-family: Menlo;" class=""><span style="font-variant-ligatures: no-common-ligatures" class=""><br class=""></span></div><div style="margin: 0px; font-stretch: normal; font-size: 14px; line-height: normal; font-family: Menlo;" class=""><span style="font-variant-ligatures: no-common-ligatures" class="">I've attached a patch that should fix this particular issue. </span></div></div></body></html>