multi-field problems by flexpde? Log Out | Topics | Search
Moderators | Register | Edit Profile

FlexPDE User's Forum » User Postings » multi-field problems by flexpde? « Previous Next »

Author Message
Top of pagePrevious messageNext messageBottom of page Link to this message

gqzhang (zgqfem)
Member
Username: zgqfem

Post Number: 4
Registered: 07-2003
Posted on Wednesday, August 27, 2003 - 08:45 pm:   

I am badly interested in the multi-field problems, which FLEXPDE claimed to be able to solve.

I modified one example from the help demo, just add one equation, the problem is when the added equation(the pressure equation)is time independent(without the right item), the solution can be obtained; but when the problem is time-dependent(with the right item), it seems impossible.
The following is the script, hope any one could help me.
Thanks very much.
title "pressure-Elastic Stress"

select errlim = 1.0e-2 nodelimit=2000 ngrid=6
variables
Pp { declare the system variables to be Tp, Up and Vp }
Up
Vp

definitions
kx { declare thermal conductivity - values come later }
ky
E { declare Young's Modulus - values come later }
nu { declare Poisson's Ratio - values come later }


{ define the constitutive relations }
G = E/((1.+nu)*(1.-2.*nu))
C11 = G*(1-nu)
C12 = G*nu
C22 = G*(1-nu)
C33 = G*(1-2*nu)/2
b=0.8e1

{ define some utility functions }
ex = dx(Up)
ey = dy(Vp)
gxy = dy(Up) + dx(Vp)
Sx = C11*ex + C12*ey - b*Pp
Sy = C12*ex + C22*ey - b*Pp
Txy = C33*gxy


initial values
Pp = 0.0 { give FlexPDE an estimate of variable range }
Up = 1.e-5
Vp = 1.e-5

equations

1/0.006* (dx[kx*dx(Pp)] + dy[ky*dy(Pp)]) =2.0*dt(ex+ey) {pressure equation}

dx[Sx] { the U-displacement equation }
+ dy[txy] = 0.

dx[txy] { the V-displacement equation }
+ dy[sy] = 0.


boundaries

region 1 { region one defines the problem domain as all copper
and sets the boundary conditions for the problem }
kx = 1e-3
ky= 1e-3
E = 5e9
nu = 0.23

start(0,0) {bottom}
natural(Up)=0
natural(Vp)=0
natural(Pp)=0
line to (2.5,0) {bottom}
natural(Up)=0
natural(Vp)=0
value(Pp)=10
line to (5,0) {right}
value(Up)=0.
natural(Vp)=0
natural(Pp)=0
line to(5,1.5) {up}
natural(Up)=0
value(Vp)=0.
natural(Pp)=0.
line to(0,1.5) {left}
value(Up)=0
natural(Vp)=0
value(Pp)=0
line to finish

time from 0 to 800

plots
for t=0,10,100,800
contour(Pp) as "pressure"
contour(Up) as "X-displacement"
contour(Vp) as "Y-displacement"
contour(Sx) as "X-Stress"
contour(Sy) as "Y-Stress"
contour(Txy) as "Shear Stress"
vector(Up,Vp) as "displacement"
tecplot(Pp,up,vp,sx,sy,txy)
end 48691
Top of pagePrevious messageNext messageBottom of page Link to this message

Patricio A. Greco (pagreco)
Member
Username: pagreco

Post Number: 7
Registered: 08-2003
Posted on Thursday, August 28, 2003 - 12:00 am:   

I'm not expert in this matter , but reading the equations looks like an excitation source (time dependent) are needed.
I replaced :
1/0.006* (dx[kx*dx(Pp)] + dy[ky*dy(Pp)]) =2.0*dt(ex+ey)

For:1/0.006* (dx[kx*dx(Pp)] + dy[ky*dy(Pp)])+ Excitation =2.0*dt(ex+ey)
Where: Excitation= 100*ustep(t-1e-3)

And the system gives a result.

Top of pagePrevious messageNext messageBottom of page Link to this message

gqzhang (zgqfem)
Member
Username: zgqfem

Post Number: 5
Registered: 07-2003
Posted on Thursday, August 28, 2003 - 04:50 am:   

thanks for your reply,
but I think your modification is not equivalent to the original.
for example in the following:

EQUATIONS
div(fluxd)+rcp*dt( pressure)=0
if I put an exitation source in it, you will find the two solutions are totally different.

And I am not so familiar with the excitation source, such as in what conditions the excitation source should be added, and the reason for that. I hope you can explain further for me, please, if needed.



TITLE 'TRANSIENT PRESSURE'
SELECT errlim=1e-3 nodelimit=900 ngrid=7

VARIABLES pressure(RANGE=10000)

DEFINITIONS
mu= 1e-9
kper= 0.3e-15
comp= 1.7e-3
fai= 0.15
Q= 1e-5

Pai= 3.1415926
R1=0.1143/2
R2=R1*50
k=kper rcp=fai*comp pressurei=0
fluxd_x=-k/mu*dx(pressure)
fluxd_y=-k/mu*dy(pressure)
fluxd=vector( fluxd_x, fluxd_y)
fluxdm=magnitude( fluxd)

q0=Q/(2*Pai*R1)

INITIAL VALUES
pressure=pressurei

EQUATIONS
div(fluxd)+rcp*dt( pressure)=0

BOUNDARIES
region 'domain' { k=0.15 rcp=1}
START (R1,0) NATURAL(PRESSURE)=0
LINE TO (R2,0) VALUE(PRESSURE)=0
ARC (RADIUS=R2) TO (0,R2)
NATURAL(PRESSURE)=0
LINE TO (0,R1)
value(PRESSURE)=60
ARC (CENTER=0,0) TO (R1,0)

TIME from 0 to 800

PLOTS
for t=0.3,5,15,30,50,70,90,120,130,500,800
contour( pressure)
Histories
history (pressure) at
(r1,0) (2*r1,0) (3*r1,0) (4*r1,0) (5*r1,0) (6*r1,0)
(7*r1,0) (8*r1,0) (9*r1,0) (10*r1,0)

history ( FLUXDM) at
(r1*1.1,0) {(0,r1) (r1/sqrt(2),r1/sqrt(2))}
range=(0,4e-12)
history(fluxdm*2*pai*r1) at (r1,0)
end
Top of pagePrevious messageNext messageBottom of page Link to this message

Robert G. Nelson (rgnelson)
Moderator
Username: rgnelson

Post Number: 23
Registered: 06-2003
Posted on Thursday, August 28, 2003 - 07:08 pm:   

I ran the problem as you initially posted it on FlexPDE verison 3.10a, and it ran to completion in 50 time steps. It showed no signs of unhappiness.

So I don't know what it was that you interpreted as failure.

What version of FlexPDE are you running?
Top of pagePrevious messageNext messageBottom of page Link to this message

gqzhang (zgqfem)
Member
Username: zgqfem

Post Number: 6
Registered: 07-2003
Posted on Thursday, August 28, 2003 - 08:40 pm:   

I run flexpde 2.20.
I want to know the difference between them are large?
thansk
Top of pagePrevious messageNext messageBottom of page Link to this message

Robert G. Nelson (rgnelson)
Moderator
Username: rgnelson

Post Number: 24
Registered: 06-2003
Posted on Sunday, August 31, 2003 - 02:33 pm:   

The "Revision Log" button on our website will show a list of changes made throughout the version 3 series. Most importantly for your problem, the time integration method was changed in version 3 from a one-step method with sliding centering to a two-step implicit quadratic. This can make a significant difference in some problems.

In version 2, you can select TCENTER=1 to choose an implicit backward difference form that is unconditionally stable, but somewhat inaccurate. If you also specify a smaller ERRLIM, it might satisfy your needs.

Add Your Message Here
Post:
Username: Posting Information:
This is a private posting area. Only registered users and moderators may post messages here.
Password:
Options: Enable HTML code in message
Automatically activate URLs in message
Action:

Topics | Last Day | Last Week | Tree View | Search | Help/Instructions | Program Credits Administration