In examples/large_deformation/hyperelastic.py a rotation by displacements is applied. By using a similar function the vectors defining the force couples could be defined for dw_surface_ltr (IMHO). Does it make sense?
----- Reply message -----
From: "Andre Smit" <freev...(a)gmail.com>
Date: Sat, Dec 18, 2010 05:10
What is the best way to apply a torque load to a model?
You received this message because you are subscribed to the Google Groups "sfepy-devel" group.
To post to this group, send email to sfepy...(a)googlegroups.com.
To unsubscribe from this group, send email to sfepy-devel...(a)googlegroups.com.
For more options, visit this group at http://groups.google.com/group/sfepy-devel?hl=en.
I am currrently looking for FEM packages to help me solve a system of
beams and columns, basically a collection of 1D bernoulli/timoshenko
I started reading SfePy docs and i am getting the idea that doing the
above is not really possible here, am i right?
Are only 2D area elements permitted in SfePy?
Or is there any direct support for solving 1D line elements too..
FYI: As SciPy 0.12.0 is out and one of the release highlights is "Support for
Python 2 and Python 3 from the same code base (no more 2to3)", we can think
seriously about updating SfePy in this respect as well, cf. .
Dear SfePy users,
Is it possible to evaluate a solution not only in the FEM mesh node, but in
any arbitrary point in the domain with the given (x, y, z) coordinates?
For example, consider Dirichlet problem for Poisson equation. We apply
essential boundary conditions on the surface nodes and after the problem
has been solved we have the solution vector, i.e. vector of values in the
FEM mesh nodes. But I want to know the solution in point v(x, y, z) that is
not FEM mesh node. What is the best way to obtain solution in this point v?
Hello sfepy developers and users!
I am modelling a simple linear elastic sheet under isotropic stress with
an elliptical hole in the center (and I have it working under sfepy,
great little platform!).
It is obvious the model should initially yield more easily in the
direction of the short axis of the ellipse. What is not so obvious to me
is what should happen in the limit as stress goes to infinity. Part of
me wants to believe that the hole should eventually become a circular,
but the results of the simulation show that the ellipse eventually
switches its aspect ratio with what was the the short axis becoming the
long axis and vice-versa.
My question is whether:
A: The finite element result is the product of a
small-displacement/non-moving mesh artifact (and if so, if there is a
way to get the correct behavior using sfepy...)
B: My intuition about the physical behavior of this ideal system is
incorrect and the ellipse really wouldn't round out into a circle under
increasingly large stress (aka, the FE model is still physical/correct
with large displacements).
This might be obvious to people who have done more finite element
modeling than I have, but thanks anyway! I'm attaching a picture to make
it easier to see at a glance (quarter-ellipse with x and y symmetry
boundary conditions and equal tractions applied at the top and right
we are trying to sign up under the PSF umbrella for this year's Google Summer
of Code because of an e-mail from Ankit Mahato, who expressed interest to help
developing SfePy as his GSoC project this summer.
So let us discuss possible project ideas here. I will post results of the
discussion to .
Ankit's ideas are (my summary):
#1 parallelization - cluster support using mpi4py
#2 pre- and post-processing GUI frontend
#3 incorporating phase changing materials (his research area)
Ankit, could you post full text your ideas into this thread? The pdf you sent
me does not allow selecting text.
For me, #1 is something that I was planning to do "soon" anyway as I am going
to need it for my research work - a help would come really handy, but we will
have to think carefully about the implementation. I think I prefer having a
parallel layer above the current serial FEM, so that the current code can stay
as it is, unaware that it runs in parallel. I am not sure yet how difficult it
is going to be, but it won't be trivial.
#2 would be nice, but IMHO it is not so important as having a solid and
reasonably fast FEM core.
#3 would IMHO be the most useful for Ankit, and a nice addition to modelling
capabilities of SfePy.
Other possible topics can be found in our issues list ("enhancement" label).
IMHO it would be good to prospective student(s) to try tackling some of the
issues listed below to get acquainted with SfePy code before the GSoC starts:
#196 Document properly term evaluation modes and postprocessing/probing.
#195 describe how to add Neumann BC in a diffusion example and tutorial
(tutorial part done by Alec)
#167 improve gallery page
#164 Python 3 compatibility
#154 automatic testing of terms
#140 test schroedinger.py
#133 Provide examples for SfePy Terms
Implementing the other enhancements would be, of course, also very useful, but
those IMHO too difficult for someone trying to learn the code. They are
certainly quite difficult for me, as they are not done yet =:) (shell elements!)
Is there an easy way to dial down the verbosity of sfepy in particular
during the "Probe" steps? I tried what I thought were some sensible things
(e.g., 'verbose':False in the problem def options) etc., but nothing seems
to work. I did notice the pull request on github for a 'verbose' patch, but
it looks like it's not quite ready yet. Sorry if this is a dumb question!
I'm using sfepy to solve for the potential in what is essentially a cylindrical lens for charged particles.
I'm attempting to use a probe to evaluate the field components (-grad(u)). Here's what I'm attempting:
def GetFieldAtPoint(res, x, y, eps=0.1):
Return the field strength at a point x,y using eps for centered difference.
probe = PointsProbe((
(x + eps, y),
(x - eps, y),
(x, y + eps),
(x, y - eps)), res.pb.domain.mesh)
pars, vals = probe(res.var)
vals = vals.squeeze()
Ex = (vals-vals)/(2.0*eps)
Ey = (vals-vals)/(2.0*eps)
return np.array([np.isnan(Ex) and 0.0 or Ex, np.isnan(Ey) and 0.0 or Ey])
But I'm getting a memory exception after several evaluations. I'll try to come up with a complete example to post.. but has anyone see this kind of trouble?
Program received signal EXC_BAD_ACCESS, Could not access memory.
Reason: KERN_INVALID_ADDRESS at address: 0x00000000130e16a0
0x0000000108513b1f in __pyx_f_5sfepy_3fem_7extmods_5bases_find_ref_coors (__pyx_v_ref_coors=0x10cb28b90, __pyx_v_cells=0x10cb28b40, __pyx_v_status=<value temporarily unavailable, due to optimizations>, __pyx_v_coors=<value temporarily unavailable, due to optimizations>, __pyx_v_ics=0x108521e60, __pyx_v_offsets=0x111c0a870, __pyx_v_iconn=0x10f152450, __pyx_v_mesh_coors=0x10cb330c0, __pyx_v_conns=0x110e3ce60, __pyx_v_eref_coorss=0x10e153950, __pyx_v_nodess=0x10e144638, __pyx_v_mtx_is=0x110e3cdd0, __pyx_v_allow_extrapolation=1, __pyx_v_close_limit=0.10000000000000001, __pyx_v_qp_eps=1.0000000000000001e-15, __pyx_v_i_max=100, __pyx_v_newton_eps=1e-08, __pyx_skip_dispatch=0) at build/src.macosx-10.6-intel-2.7/sfepy/fem/extmods/bases.c:5795
5795 __pyx_v_ig = (*__Pyx_BufPtrCContig1d(__pyx_t_5sfepy_3fem_7extmods_5types_int32 *, __pyx_bstruct_iconn.buf, __pyx_t_37, __pyx_bstride_0_iconn));
#0 0x0000000108513b1f in __pyx_f_5sfepy_3fem_7extmods_5bases_find_ref_coors (__pyx_v_ref_coors=0x10cb28b90, __pyx_v_cells=0x10cb28b40, __pyx_v_status=<value temporarily unavailable, due to optimizations>, __pyx_v_coors=<value temporarily unavailable, due to optimizations>, __pyx_v_ics=0x108521e60, __pyx_v_offsets=0x111c0a870, __pyx_v_iconn=0x10f152450, __pyx_v_mesh_coors=0x10cb330c0, __pyx_v_conns=0x110e3ce60, __pyx_v_eref_coorss=0x10e153950, __pyx_v_nodess=0x10e144638, __pyx_v_mtx_is=0x110e3cdd0, __pyx_v_allow_extrapolation=1, __pyx_v_close_limit=0.10000000000000001, __pyx_v_qp_eps=1.0000000000000001e-15, __pyx_v_i_max=100, __pyx_v_newton_eps=1e-08, __pyx_skip_dispatch=0) at build/src.macosx-10.6-intel-2.7/sfepy/fem/extmods/bases.c:5795
#1 0x0000000108516b89 in __pyx_pf_5sfepy_3fem_7extmods_5bases_3find_ref_coors (__pyx_self=<value temporarily unavailable, due to optimizations>, __pyx_args=<value temporarily unavailable, due to optimizations>, __pyx_kwds=<value temporarily unavailable, due to optimizations>) at build/src.macosx-10.6-intel-2.7/sfepy/fem/extmods/bases.c:6310
#2 0x00000001000c1e7d in PyEval_EvalFrameEx ()