<div class="gmail_quote">On Tue, Dec 27, 2011 at 19:58, Feng-Chao Wang <span dir="ltr">&lt;<a href="mailto:wolfshow@gmail.com">wolfshow@gmail.com</a>&gt;</span> wrote:<br><blockquote class="gmail_quote" style="margin:0 0 0 .8ex;border-left:1px #ccc solid;padding-left:1ex">
<u></u>



<div style="FONT-SIZE:10pt;MARGIN:10px;FONT-FAMILY:verdana">
<div><font face="Verdana">Dear all,</font></div>
<div> </div>
<div>I want to numerically solve a strongly nonlinear fourth-order equation 
(2-D), which is used to describe the dynamics of a liquid film.</div>
<div>please find the form of the equation below or in the attachment, The 
thickness of the film,  H(X,Y,T) is the function to be solved, C, 
G, A0 are constant parameters.</div>
<div> </div>
<div><img src="cid:__0@Foxmail.net"></div>
<div> </div>
<div>I wrote a PETSc programs for this problem, using CN method in time. 
However, it does not work well. In some cases, there are some negativevalues in 
the solution (Obviously, the thickness of the liquid film could not be 
negative.) While in some other cases, the solution remains as the 
initial condition, looking like the governing equation doesn&#39;t work at 
all.  </div></div></blockquote><div><br></div><div>1. Make sure that the equations are actually being solved, for instance with -snes_monitor -snes_converged_reason -ksp_converged_reason.</div><div><br></div><div>2. Start with a time integration method that has a discrete maximum principle. Implicit Euler has this property for many classes of systems, but CN does not.</div>
<div><br></div><div>3. Consider writing the system as a variational inequality if positivity is still a problem with the time steps you want to take. Then use SNESVIRS (or SNESVIRSAUG or SNESVISS).</div><div> </div><blockquote class="gmail_quote" style="margin:0 0 0 .8ex;border-left:1px #ccc solid;padding-left:1ex">
<div style="FONT-SIZE:10pt;MARGIN:10px;FONT-FAMILY:verdana">
<div> </div>
<div>I think it is because that the solution of this equation may form infinite 
fradient when the equation is developed.</div>
<div> </div>
<div>Some literatures reported that the similar problem was solved successfully 
using the ADI (Alternating Direction Implicit) method. Unfortunately, I found 
that the current PETSc doesn&#39;t support ADI.</div>
<div> </div>
<div>I also read a paper in which the similar equation was solved by using the 
CN scheme in time. Besides, the author employed the modified second-order upwind 
difference method to handle the nonlinear terms due to the inability of the 
centered differences in space.</div>
<div> </div>
<div>I prefer to use PETSc because this powerful toolkit enables easy 
parallel computation of PDE since I am not familar with MPI. Could anyone please 
give me some suggestions on how I can solve the above equation within the 
framework of PETSc?</div>
<div> </div>
<div>Thanks very much in advance!</div>
<div> </div>
<div>Feng-Chao Wang</div>
<div><font face="Verdana"></font> </div>
<div align="left"><font face="Verdana" color="#c0c0c0">2011-12-28 
</font></div><font face="Verdana">
<hr style="WIDTH:122px;min-height:2px" align="left" size="2">

<div><font face="Verdana" color="#c0c0c0"></font> </div></font></div>
</blockquote></div><br>