Hi Robert,
I have some explanations of fipy and my idea. Please see attached PDF. If you need more information, please just ask.
Regards Ronghai
在 2014年11月14日星期五UTC+1下午2时54分04秒,Robert Cimrman写道:
Hi Ronghai,
I have just installed fipy and tried it. Could you explain more the shape of the prestress array? It is (nx * ny * 4, 3), where nx * ny is the number of cells (elements of the mesh). Why the factor 4 there? The values seem to be constant in each cell.
r.
Hi Robert,
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?
Regards Ronghai
在 2014年11月11日星期二UTC+1下午4时45分43秒,Robert Cimrman写道:
Hi Ronghai,
On 11/11/2014 03:03 PM, Ronghai Wu wrote:
Hi Robert,
Thanks for your reply. I tried your suggestions with the assistance of
http://sfepy.org/doc-devel/users_guide.html#defining-material-parameters
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.
- 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?
- 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".
- 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.
- 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.
- for stationary problem, if pb.time_update() and
On 11/14/2014 01:03 PM, Ronghai Wu wrote: 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.
r.