[SciPy-User] finite element packages

Emmanuelle Gouillart emmanuelle.gouillart@normalesup....
Sat Nov 21 03:24:24 CST 2009

```	Hello Karl,

you may have already found it by googling "python finite
elements", but sfepy (http://code.google.com/p/sfepy/) has a good
reputation (I haven't used it myself, though). Check the examples page to
see if it can suit your needs.

Cheers,

Emmanuelle

On Fri, Nov 20, 2009 at 01:21:41PM -0800, Young, Karl wrote:

> Hi David,

> I was assuming that I'd have to just abandon the analytical form if I included elasticity so I didn't think to include the differential equation that I got. I don't have it handy but it was something pretty simple like y(x)'' - c * y(x)^3 = 0 and based on whether I included a couple of approximations or not there was a first derivative term as well; y is the radial extent of the loop and x is angle. My configuration was a little odd in that there were 4 "spokes" for the flywheel, which were just more of the rope tied together and the loopy part consisted of lengths that were longer than circular arcs (a configuration that he found empirically to be more stable). So I only accounted for 1 quarter of the loop (between spokes) and my boundary conditions were just y(0) = L, y(pi/2) = L where L is length of the "spoke".

> Re. generalizing to account for elasticity I found a nice paper that analyzed the catenary problem for "Neo-Hookean" materials (sort of the next step in sophistication from modeling deformation with Hooke's law, e.g. accounts for change in cross section as a function of stretching - though I'm sure you know about that already) and figured I'd start with that. Since I haven't done any finite element modeling I assumed I could just start with a model per element that included forces, boundary conditions, and elasticity parameters and get a numerical solution.

> Thanks much for the suggestion re. spectral methods I will definitely try to run down a copy of Zwillinger's article and take a look.

> -- Karl

> ________________________________________
> From: scipy-user-bounces@scipy.org [scipy-user-bounces@scipy.org] On Behalf Of David Goldsmith [d.l.goldsmith@gmail.com]
> Sent: Friday, November 20, 2009 11:49 AM
> To: SciPy Users List
> Subject: Re: [SciPy-User] finite element packages

> On Fri, Nov 20, 2009 at 10:06 AM, Young, Karl <karl.young@ucsf.edu<mailto:karl.young@ucsf.edu>> wrote:

> Hi David,

> Thanks for the quick reply. I'm at a fairly early stage with this and so it's still fairly exploratory. That said I guess the main goal is to help my friend, who already has a working prtotype of a flexible flywheel, model and balance various parameter choices  like speed of the flywheel, deformation of the wheel based on parameters associated with various material choices,...

> I obtained my analytic model by appropriately modifying the force diagram from a paper on the "skipping rope" problem; I obtained a nonlinear differential equation for the form of the loops of the flywheel that had elliptic functions as solutions. To first order I'm hoping that I can do some useful static modeling, i.e. in the rotating frame, even with more realistic parameters for the loop material, i.e. I guess the answer to the question is that my initial interest is in steady-state models (though I guess at some point it would be nice to study spin up and spin down).

> Again, to first order I'm not that concerned about looking at stability-instability transitions or oscillatory mode amplification and damping because my friend has a working prototype that seems to be pretty deeply in a stable range, at least re. variation in rotation speeds. The hope is that I can model the system in a way such that small changes in things like material parameters won't effect the stability regime (the flexible flywheel, combined with a fancy gimbal system seems to have a sort of surprisingly large stability range, re. parameters like rotation speeds and loop radius). But I may need to eventually model oscillatory modes and stability transitions re. use of some materials for the loop.

> The first goal will be to compare the model/simulations with his prototype, i.e. experiment (e.g. we may take pictures as in some of the skipping rope papers).

> Maybe my approach sounds silly; it's very preliminary and exploratory. Physicists (and particularly me) are probably too dumb to think about hard mechanical engineering problems !

> No, but there is one key factor you're unclear as to how you're modeling, which an ME would consider among the first things to model, namely, a model for the elasticity of the "flexible material": how the flywheel deforms due to centripetal acceleration will clearly affect its moment of inertia, affecting its rotational momentum and kinetic energy, and in turn its elastic potential energy; elastic damping sounds like it is also important.  In any event, I was hoping you'd supply the actual non-linear DE(s), as the FEM is not always well-suited to such problems: depending on the nature of the nonlinearities and your choice of basis functions, completing the required integration by parts may be intractable (or prohibitively difficult for a first iteration in an "exploratory" investigation).  In particular, the physically-required periodicity of your solutions (whatever your solutions are at theta=0, they have to be the same at theta=2pi, unless your flywheel is experiencing a j
>  ump discontinuity there) suggest that a spectral method may be more appropriate (aka "Harmonic Balance"; "Article 125" in Zwillinger, D., 1998. "Handbook of Differential Equations, 3rd Ed." Academic Press [highly recommended] states: "Applicable to: Nonlinear ODE's w/ periodic solutions.  Yields: An approximate solution valid over the entire period.  There is a specified procedure for increasing the number of terms and, hence, for increasing the accuracy."  Sounds like exactly what you need...the article furnishes an external reference which I can forward if desired.  I'd be remiss if I did not mention however, that spectral and finite element methods are not necessarily mutually exclusive: periodic basis functions are among those for which the FEM is well-developed.)

> FWIW,

> DG

> -- Karl

> ________________________________________
> From: scipy-user-bounces@scipy.org<mailto:scipy-user-bounces@scipy.org> [scipy-user-bounces@scipy.org<mailto:scipy-user-bounces@scipy.org>] On Behalf Of David Goldsmith [d.l.goldsmith@gmail.com<mailto:d.l.goldsmith@gmail.com>]
> Sent: Friday, November 20, 2009 9:10 AM
> To: SciPy Users List
> Subject: Re: [SciPy-User] finite element packages

> Forgive me if you provided this in the previous thread, but, for reference, what analytic model(s) (differential equations, presumably) are you using that led you to elliptical functions?  Also, are you interested in modeling transient (time-dependent) or steady-state (d/dt=0), stability-instability transitions, oscillatory mode amplification and damping, etc.?  Finally, are you comparing theory w/ experiment, i.e., do you also have experimental data you're modeling and/or using to tweak your analytic models' parameters?

> DG

> On Fri, Nov 20, 2009 at 8:48 AM, Young, Karl <karl.young@ucsf.edu<mailto:karl.young@ucsf.edu><mailto:karl.young@ucsf.edu<mailto:karl.young@ucsf.edu>>> wrote:

> I'm trying to model a flexible flywheel (hence my question about Wierstrass elliptic functions a couple of weeks ago - thanks again for the helpful replies). I'm now trying to consider realistic models with elastic materials that go beyond my abilities to model analytically and figured I need to look at finite element models.

> I haven't used finite element packages and was wondering if anyone on the list had any recommendations, preferably scipythonic but I'm just curious generally about what people would consider using for a problem like this (i.e. a rotating flexible rope type problem). Thanks for any thoughts,

> -- Karl
> _______________________________________________
> SciPy-User mailing list
> SciPy-User@scipy.org<mailto:SciPy-User@scipy.org><mailto:SciPy-User@scipy.org<mailto:SciPy-User@scipy.org>>
> http://mail.scipy.org/mailman/listinfo/scipy-user

> _______________________________________________
> SciPy-User mailing list
> SciPy-User@scipy.org<mailto:SciPy-User@scipy.org>
> http://mail.scipy.org/mailman/listinfo/scipy-user

> _______________________________________________
> SciPy-User mailing list
> SciPy-User@scipy.org
> http://mail.scipy.org/mailman/listinfo/scipy-user
```

More information about the SciPy-User mailing list