54 views

Skip to first unread message

Jan 4, 2012, 11:31:17 AM1/4/12

to sfepy-devel

I'm working on modeling a next-generation X-ray mirror for which the

shape can be actively controlled by use of many thin piezo-electric

actuators mounted on the mirror surface. The mirror is basically a

glass conical paraboloid with a 1 meter radius and 200 micron

thickness (e.g. http://en.wikipedia.org/wiki/X-ray_optics). Our

project is currently using a proprietary FEA package, but the model

setup and turnaround time is slow, in part because there is only one

part-time engineer who can run it.

SfePy looks like a great package and we're hoping that it could be

used to automate running a large number of different cases. I've

spent some time reading the documentation but I have a few questions

that I hope can be answered before going too much further. I want to

apologize in advance if some of my wording is imprecise, I have a

physics background but this topic is a bit outside my realm...

- Is SfePy appropriate for this problem?

- If a specify a grid with about 800 x 400 points (azimuthal, axial)

and about 10 boundary conditions (corresponding to mount points), what

is the rough order of magnitude of time to compute the solution? Is

it seconds, minutes, hours, or days?

- The linear elastic examples show a problem with a specified

displacement. How do I specify an input force? The piezo essentially

provides a tensile force along the surface.

- Is there a way to specify the problem and solve in cylindrical

coordinates? This is the natural coordinate system.

- How do I specify 6-DOF constraints which correspond to the mirror

mounts?

Thanks in advance for any help!

Tom Aldcroft

shape can be actively controlled by use of many thin piezo-electric

actuators mounted on the mirror surface. The mirror is basically a

glass conical paraboloid with a 1 meter radius and 200 micron

thickness (e.g. http://en.wikipedia.org/wiki/X-ray_optics). Our

project is currently using a proprietary FEA package, but the model

setup and turnaround time is slow, in part because there is only one

part-time engineer who can run it.

SfePy looks like a great package and we're hoping that it could be

used to automate running a large number of different cases. I've

spent some time reading the documentation but I have a few questions

that I hope can be answered before going too much further. I want to

apologize in advance if some of my wording is imprecise, I have a

physics background but this topic is a bit outside my realm...

- Is SfePy appropriate for this problem?

- If a specify a grid with about 800 x 400 points (azimuthal, axial)

and about 10 boundary conditions (corresponding to mount points), what

is the rough order of magnitude of time to compute the solution? Is

it seconds, minutes, hours, or days?

- The linear elastic examples show a problem with a specified

displacement. How do I specify an input force? The piezo essentially

provides a tensile force along the surface.

- Is there a way to specify the problem and solve in cylindrical

coordinates? This is the natural coordinate system.

- How do I specify 6-DOF constraints which correspond to the mirror

mounts?

Thanks in advance for any help!

Tom Aldcroft

Jan 4, 2012, 12:36:20 PM1/4/12

to sfepy...@googlegroups.com

Hi Tom!

On 01/04/12 17:31, Tom Aldcroft wrote:

> I'm working on modeling a next-generation X-ray mirror for which the

> shape can be actively controlled by use of many thin piezo-electric

> actuators mounted on the mirror surface. The mirror is basically a

> glass conical paraboloid with a 1 meter radius and 200 micron

> thickness (e.g. http://en.wikipedia.org/wiki/X-ray_optics). Our

> project is currently using a proprietary FEA package, but the model

> setup and turnaround time is slow, in part because there is only one

> part-time engineer who can run it.

Looks like an interesting problem for SfePy.

> SfePy looks like a great package and we're hoping that it could be

> used to automate running a large number of different cases. I've

> spent some time reading the documentation but I have a few questions

> that I hope can be answered before going too much further. I want to

> apologize in advance if some of my wording is imprecise, I have a

> physics background but this topic is a bit outside my realm...

No problem, ask as you need, I will try to answer. But first I have some

questions as well :)

> - Is SfePy appropriate for this problem?

I guess so - could you be more specific what kind of equations you need to

solve? Something like [1]? Is the problem linear?

> - If a specify a grid with about 800 x 400 points (azimuthal, axial)

> and about 10 boundary conditions (corresponding to mount points), what

> is the rough order of magnitude of time to compute the solution? Is

> it seconds, minutes, hours, or days?

So the problem is in 2D, right? How many unknowns per grid node? This again

would depend on equations and hence the matrix. If there is a good linear

solver available (e.g. like for Poisson equation or elasticity), I would say

minutes or less.

> - The linear elastic examples show a problem with a specified

> displacement. How do I specify an input force? The piezo essentially

> provides a tensile force along the surface.

Like in [2], i.e., use dw_surface_ltr term on the appropriate boundary.

> - Is there a way to specify the problem and solve in cylindrical

> coordinates? This is the natural coordinate system.

Not per se, but it would IMHO be quite easy to add special terms for this.

> - How do I specify 6-DOF constraints which correspond to the mirror

> mounts?

Please clarify here a bit - what are exactly the DOFs you need to specify? In

general, one specifies any DOFs using the ebcs keyword - look at any example.

Thanks for your interest, I would like to see some nice SfePy applications

outside of my workplace.

Cheers,

r.

[1] http://docs.sfepy.org/doc-devel/examples/piezo_elasticity/piezo.html

[2]

http://docs.sfepy.org/doc-devel/examples/linear_elasticity/linear_elastic_tractions.html

May 16, 2013, 6:49:58 AM5/16/13

to sfepy...@googlegroups.com

Hello.

Can you suggest how to SfePy set the second time derivative (with existing term or with new).

The essence of the problem simple Mx (d2u/dt2) + Cx (du / dt) + Kxu = Q. This is a classical significance equation of motion mechanical system with damping.

All my attempts to hurriedly add the desired derivative unaesthetic or ineffectual.

Artem Sobolev.

May 16, 2013, 7:04:39 AM5/16/13

to sfepy...@googlegroups.com

Hi Artem,

Instead of the second order equation:

Mx (d2u/dt2) + Cx (du / dt) + Kxu = Q.

I would use the standard trick to transform it to two first order equations:

du/dt = v

Mx dv/dt = Q - Cx v - Kx u

Would that work for you? Otherwise some more advanced time-stepping scheme than

the current backward Euler method would have to be introduced.

r.

Instead of the second order equation:

Mx (d2u/dt2) + Cx (du / dt) + Kxu = Q.

du/dt = v

Mx dv/dt = Q - Cx v - Kx u

Would that work for you? Otherwise some more advanced time-stepping scheme than

the current backward Euler method would have to be introduced.

r.

May 20, 2013, 4:56:36 AM5/20/13

to sfepy...@googlegroups.com

Thank you Robert.

I will try and report to you results.

May 21, 2013, 11:52:24 AM5/21/13

to sfepy...@googlegroups.com

Hi Robert!

Help me please.))

I can't set du /dt in du/dt = v equation. I tried use ev_volume_integrate term and occure error.

If set mass_scalar term sfepy write that dont know this term.

Thank you.

Artem Sobolev.

May 21, 2013, 12:16:38 PM5/21/13

to sfepy...@googlegroups.com

On 05/21/2013 05:52 PM, Artem Sobolev wrote:

> Hi Robert!

> Help me please.))

>

> I can't set du /dt in du/dt = v equation. I tried use ev_volume_integrate

> term and occure error.

> If set mass_scalar term sfepy write that dont know this term.

Yeah, my answer was a bit quick. This equation is to be used point-wise (after
> Hi Robert!

> Help me please.))

>

> I can't set du /dt in du/dt = v equation. I tried use ev_volume_integrate

> term and occure error.

> If set mass_scalar term sfepy write that dont know this term.

the FE discretization) - it has no weak form. So a specialized solver will be

needed after all. I will have to think about it.

BTW. if anybody has experience with solving dynamic problems, chime in, please!

r.

> Thank you.

>

> Artem Sobolev.

>

Reply all

Reply to author

Forward

0 new messages

Search

Clear search

Close search

Google apps

Main menu