I still cannot fix the bug in my codes nor find other better ways. I am wondering have you tried my codes found the problem?
在 2014年11月11日星期二UTC+1下午4时45分43秒，Robert Cimrman写道：
On 11/11/2014 03:03 PM, Ronghai Wu wrote:
> Hi Robert,
> Thanks for your reply. I tried your suggestions with the assistance of
> but seems not working.
> There are some error massages which I cannot fix. Could you please provide
> more help. I additionally have some explanations and questions regarding my
> wield codes.
> 1. eta is dynamic scalar field, I solve the PDE with respect to eta by
> fipy.because I am familiar with fipy. But the elastic equation is
> stationary, and eta is as a known input for elastic equation.
So eta is then defined in the mesh vertices? Or elsewhere?
> 2. I generated my own mesh(as attached) because, a) I am not able to use
> gmsh although learned hard, b) I want the mesh numbering or ordering agrees
> with fipy mesh. If the generated mesh is applicable for sfepy?
Yes, it seems fine. The same mesh (only "transposed" - the numbering of nodes
goes y-axis first) can be obtained by:
./script/blockgen.py --2d -s [4,4,4] -o out.mesh
that uses "from sfepy.mesh.mesh_generators import gen_block_mesh".
> 3. why when printing coors, values are [[0.21132487 0.78867513]........not
> real coordinates of mesh vertices?
The materials are evaluated in quadrature points for numerical integration and
not in the mesh vertices. If your values are in the mesh vertices, you would
need to interpolate them to the quadrature points, for example using a field.
> 4. I used integral = Integral('i', order=3), but what is the most
> appropriate integral for my problem ?
Your field is bi-linear, so 3 should be ok.
> 5. for stationary problem, if pb.time_update() and pb.update_materials()
> are necessary before pb.solve()?
Yes, those set up the boundary conditions and materials. A stationary problem
is solved as a single step of a quasi-static solver.
> My complete codes are shown below. also attached. Thank you.
I will look at it.