[Top][All Lists]

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

Re: [femlisp-user] Constructing 2D domain

From: Sebastian Sturm
Subject: Re: [femlisp-user] Constructing 2D domain
Date: Wed, 3 Nov 2010 14:20:37 +0100

> For this application, I used something like the following:
> <sebastian-sturm.lisp>

Great, thank you very much! That is exactly what I have been searching for. I 
now have two separate domains (outer and inner part) that should have different 
material parameters sigma_1 and sigma_2, respectively. I would like to solve 
div(sigma(x) * grad(phi)) = 0 on the sum of both domains, with phi(x) at the 
inner (circular hole) boundaries set to +1 and -1, respectively, phi(x) = 0 or 
grad(phi(x)) = 0 at the outermost boundary and sigma_1 (d phi/dn)_{boundary of 
domain 1} = sigma_2 (d phi/dn)_{boundary of domain 2} at the interface between 
the inner domain and the outer domain. Is that possible?
I have attached a pdf file showing the domain I'm referring to. From browsing 
the source code, I guess I should set up an elliptic system, define ellsys::a 
as a simple identity matrix with diagonal elements sigma(x) and (somehow) set 
up Dirichlet boundary conditions at the holes. I assume I can figure that out 
on my own, but identifying the inner boundary of the outer domain with the 
outer boundary of the inner domain and setting up the right BC seems more 
daunting to me. 

Attachment: mesh.pdf
Description: Adobe PDF document

I also guess I could do without the BC at the interface region by constructing 
a finite-width boundary region using telescope and explicitly interpolating 
sigma(x) between its two extreme values sigma_1 and sigma_2, in case the 
current ellsys model is not well suited to the boundary conditions described 
above. In principle, however, I would very much like to know how to set up the 
most general kind of interface/boundary conditions.

My apologies for stealing your time, but my weak Lisp skills do not cater very 
well to the trial-and-error approach. In compensation, I could try to 
contribute a tutorial to the femlisp manual explaining these basic techniques 
(once I have actually understood them) to newcomers like me.

> (setq fl.plot::*plot* t)
> Furthermore, quicklisp probably does not install the current CVS version
> which should include VTK support.  Try doing a "cvs update" in the
> femlisp directory.

Aha, great! Worked like a charm!

Best regards,

reply via email to

[Prev in Thread] Current Thread [Next in Thread]