CFD Online Discussion Forums

CFD Online Discussion Forums (https://www.cfd-online.com/Forums/)
-   OpenFOAM Community Contributions (https://www.cfd-online.com/Forums/openfoam-community-contributions/)
-   -   [swak4Foam] groovyBC or parabolicVelocity + time (https://www.cfd-online.com/Forums/openfoam-community-contributions/84983-groovybc-parabolicvelocity-time.html)

Rickard.Solsjo February 14, 2011 11:12

groovyBC or parabolicVelocity + time
 
Hi
I was trying to get the hang of groovyBc and the parabolic inlet velocity condition.
Im looking for an opinion on whether one or the other is better combined with a time restriction.
Putting it more clearly
At the moment I use timeVaryingUniformFixedValue with a ramp and outOfBounds clamp.
This is running okay, however I want to change the profile over the area so that it leaves my patch with a certain angle, 21.5degrees.
Can groovyBC and parabolic injection be combined with the time-extent? If so, how?
Appreciate the help!
R

gschaider February 14, 2011 11:34

Quote:

Originally Posted by Rickard.Solsjo (Post 295190)
Hi
I was trying to get the hang of groovyBc and the parabolic inlet velocity condition.
Im looking for an opinion on whether one or the other is better combined with a time restriction.
Putting it more clearly
At the moment I use timeVaryingUniformFixedValue with a ramp and outOfBounds clamp.
This is running okay, however I want to change the profile over the area so that it leaves my patch with a certain angle, 21.5degrees.
Can groovyBC and parabolic injection be combined with the time-extent? If so, how?
Appreciate the help!
R

Yep. Search for "timeline" on http://openfoamwiki.net/index.php/Contrib_groovyBC

Rickard.Solsjo February 14, 2011 13:43

Thx
this timeline would simply be e.g.
--> "name of timeLine file"
(t(start)
t2
.
.
.
t(end)
);
?

gschaider February 14, 2011 14:22

Quote:

Originally Posted by Rickard.Solsjo (Post 295221)
Thx
this timeline would simply be e.g.
--> "name of timeLine file"
(t(start)
t2
.
.
.
t(end)
);
?

It's the same format as for timeVaryingUniform. Have a look at the example case (groovyBC) that uses it

Bernhard

Rickard.Solsjo February 15, 2011 05:16

Ofc I looked at it. It says something about timevaryinguniform, however it only related to the "usual" conditions. I've been trying to find the original documentation of this without success. As I said above I've used timeVaryingUniformFixedValue before.
The only example of timelines at the contrib wiki are
timelines ();
or sth like
timelines (
file... impulse
...
);
without specifying the impulse input.
Thx
R

gschaider February 15, 2011 06:20

Quote:

Originally Posted by Rickard.Solsjo (Post 295289)
Ofc I looked at it. It says something about timevaryinguniform, however it only related to the "usual" conditions. I've been trying to find the original documentation of this without success. As I said above I've used timeVaryingUniformFixedValue before.
The only example of timelines at the contrib wiki are
timelines ();
or sth like
timelines (
file... impulse
...
);
without specifying the impulse input.
Thx
R

That is in the example files. If you feel it should be on the Wiki page feel free to extend it

Bernhard

Rickard.Solsjo February 15, 2011 06:24

I didn't mean to be disrespectful, groovyBC is a wonderful tool.
My only concern was that the timelines input wasn't extended enough, so I dont know what the input file looks like
Regards
R

Rickard.Solsjo February 15, 2011 08:25

one more question..
 
Mr GschaiderMay I ask yet another question.
At the moment I just have a mean velocity leaving the patch in the axial direction without any radial components.
I would like to create a boundary condition where the flow is leaving the patch at a certain angle relative to the center axis with a speed thats Ucos(theta) where U is the velocity where the angle theta=0.
My gridstructure is cartesian, so my question is if I have to calculate all of the x,y,z components or is multiplying a vector depending on the angle to the scalar velocity-value simply enough? Can groovyBC handle this?
I hope you understand my question
Regards
R

gschaider February 15, 2011 09:30

Quote:

Originally Posted by Rickard.Solsjo (Post 295301)
I didn't mean to be disrespectful, groovyBC is a wonderful tool.
My only concern was that the timelines input wasn't extended enough, so I dont know what the input file looks like
Regards
R

Not a problem.

Don't know how good groovyBC actually is (I'm biased) but its a lot better than the documentation ;)

As you mentioned above that you'd already used timeVaryingUniform I assumed that you were familiar with the file format for those files

If you think that that the file should be on the Wiki page feel free to add it

gschaider February 15, 2011 09:42

Quote:

Originally Posted by Rickard.Solsjo (Post 295323)
Mr GschaiderMay I ask yet another question.
At the moment I just have a mean velocity leaving the patch in the axial direction without any radial components.
I would like to create a boundary condition where the flow is leaving the patch at a certain angle relative to the center axis with a speed thats Ucos(theta) where U is the velocity where the angle theta=0.
My gridstructure is cartesian, so my question is if I have to calculate all of the x,y,z components or is multiplying a vector depending on the angle to the scalar velocity-value simply enough? Can groovyBC handle this?
I hope you understand my question
Regards
R

I don't quite understand what you're trying to achive. But if it can be expressed with the usual vector operations (keep in mind that the operators & and ^ are inner and cross-product for vectors) then it can be done.

But I only help with problems with groovyBC. Not with vector arithmetics

Rickard.Solsjo February 15, 2011 11:33

so basically, it is something like this that i want to achieve

patch jet
{
type groovyBC;

variables: "Uz=150;rmax=0.0005;r=sqrt(pow(pos().x,2)+pow(pos( ).y,2));thetaMax=0.9825;theta=thetaMax*r/rmax";
"(r<=0.5) ? U=Uinlet:U=vector(0,0,0);" <-- is this included into the variables?

value: Uinlet="Uz*cos(theta)*vector(0,0,1)+Uz*sin(theta)* vector(0,1,0)*Uz*sin(theta)*vector(1,0,0):Uinlet=v ector(0,0,0)";

}

I appreciate the help

jawapasu March 27, 2018 03:00

combining parabolic inlet velocity profile with time varying velocity vector values
 
Quote:

Originally Posted by Rickard.Solsjo (Post 295358)
so basically, it is something like this that i want to achieve

patch jet
{
type groovyBC;

variables: "Uz=150;rmax=0.0005;r=sqrt(pow(pos().x,2)+pow(pos( ).y,2));thetaMax=0.9825;theta=thetaMax*r/rmax";
"(r<=0.5) ? U=Uinlet:U=vector(0,0,0);" <-- is this included into the variables?

value: Uinlet="Uz*cos(theta)*vector(0,0,1)+Uz*sin(theta)* vector(0,1,0)*Uz*sin(theta)*vector(1,0,0):Uinlet=v ector(0,0,0)";

}

I appreciate the help

I am trying to do something similar to yours. can you help me out? pls refer to the title of this msg. I have posted a thread.


All times are GMT -4. The time now is 07:40.