CFD Online Discussion Forums

CFD Online Discussion Forums (https://www.cfd-online.com/Forums/)
-   CFX (https://www.cfd-online.com/Forums/cfx/)
-   -   Problem with a periodic boundary condition (https://www.cfd-online.com/Forums/cfx/101558-problem-periodic-boundary-condition.html)

chuck209 May 7, 2012 12:26

Problem with a periodic boundary condition
 
Hi,

I have a problem with a periodic boundary condition and i really don't find how to solve it.

In fact I'm trying to make an iteration on my BC at each time step.For instance, my boundary condition could be:

Pstatic(t+1)=Pstatic(t)+DeltaP ,
with deltaP=constant value, and t=time.

To recuperate the Pstatique at the boundary, i use a CEL function:
Pstatique(t)=areaAve(pressure)@outlet.

The problem is that the Pstatic(t+1) isn't equal to Pstatic(t)+DeltaP, and it is always less.

That's why a try to change my CEL fundtion to:

Pstatic(t+1)=Pstatic(t)

And surprise: the average pressure is decreasing at each time step....(whereas is suppose to be constant)

I think the probleme come from the difference between the Hybrid and conservative value that are always different, but i don't find how to solve it....

is it possible to recuperate the hybrid value in CFX PRE using areaAve(pressure)@outlet?or to directly impose a conservative value?
Does somebody know how to solve this problem?

Thank a lot!!!!!

a_cucen May 7, 2012 14:18

Dear chuck,

Maybe you can use function to do this. You can import a chart that contains pressure changes according to time change. and you can take this function to your boundary condition.

chuck209 May 7, 2012 15:47

Hi!
Thanks for your answer.
Unfortunately, my CEL is more complicated than the one I give you.I really need to recuperate the previously value (Pressure) to find the next value.

Do you think using a routine function could help me?For this, do I need to use Fortran?

singer1812 May 7, 2012 16:00

Cant do that within CEL normally but depending on what you want to do, you might be able to delay the update of a variable and get what you want.

Do a search on TRANS_LOOP

chuck209 May 8, 2012 15:32

thank you. I'm trying to do it with de AV.
But for instance, if I would like to simulate a derivative term like dP/dt, may have other choice than doing:
(P(t+1)-P(t))/deltat
I have to discretize, is'nt it?

singer1812 May 8, 2012 21:38

are you trying to do this in POST or while the simulation is running?

chuck209 May 9, 2012 14:12

I'm trying to do it when the simulation it's running.
In fact i need to change the BC (static pressure) at the outlet and for that, i have a function:

dP/dt=f(P,axialvelocity)

And i need to use previously value for P because i'm using the following discretisation:

(P(n+1)-P(n))/deltat=f(p(n),axial velocity(n))
Do you know what i mean?

singer1812 May 9, 2012 14:21

Yes discretize it. Look up trans_loop for details on how to delay update of additional variable.

chuck209 May 9, 2012 15:06

Ok!
I just have a last question: how can i be sure than the delay has been correctly apply?
I mean is it possible to calculate for each step the variable with the delay and the variable once the formula compute?

singer1812 May 9, 2012 15:09

You should most certainly do this. Set up a monitor point for the pressure, and another monitor point for the Additional Variable that is delayed.

You should be able to see the lag in the solver manager.

chuck209 May 9, 2012 16:15

Thanks a lot!


All times are GMT -4. The time now is 23:09.