<div class="gmail_quote">On Sat, Sep 24, 2011 at 00:03, Gong Ding <span dir="ltr">&lt;<a href="mailto:gdiso@ustc.edu" target="_blank">gdiso@ustc.edu</a>&gt;</span> wrote:<br><blockquote class="gmail_quote" style="margin:0 0 0 .8ex;border-left:1px #ccc solid;padding-left:1ex">

<div>For a PNPN structure, the condition number in DC simulation is about 1e20.<br>A transient simulation with 1 us time step can reduce the condition number to 1e6.  <br>As a result, the floating problem of semiconductor region can simply be conqured with transient mode<br>

My problem is a poisson&#39;s equation with highly heterogeneous conductance.</div></blockquote></div><div><br></div><div>It is &quot;just&quot; Poisson with discontinuous coefficients? What discretization are you using? Can the jumps reasonably be aligned with element boundaries, with subdomain boundaries, or with coarse levels? (This affects which methods to use.)</div>
<div><br></div><div>It is likely that you can construct low-energy interpolants and get good multigrid performance. As a starting point, have you tried something like</div><div><br></div><div>mpiexec -n 4 ./your_app -ksp_monitor_true_residual -ksp_type fgmres -pc_type ml -pc_ml_EnergyMinimization 2 -pc_ml_maxnlevels 3 -mg_levels_pc_type asm -mg_levels_sub_pc_type lu -mg_levels_ksp_type gmres</div>
<div><br></div><div>(Pick a problem where the subdomains aren&#39;t very big because this uses direct subdomain solves.) If this is reliable, it is likely possible to relax many aspects to reduce the run time.</div>