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] FunkySetFields for OF 141 (https://www.cfd-online.com/Forums/openfoam-community-contributions/61981-funkysetfields-141-a.html)

gschaider July 1, 2008 05:41

Hi Carlo! If the fields rho
 
Hi Carlo!

If the fields rho and pd exist in the time-step you're working on it should be possible. But FSF has no way of reading the densities for the two phases that are represented by gamma

Bernhard

carlodean July 1, 2008 12:18

Hi, thanks for you answer. I
 
Hi, thanks for you answer.
I made something like this:

funkySetFields . Pout -time 0 -field pd -expression '1000*9.81*pos().z' - expression 'pos().z <=386'.


It seems to work fine but i don't know if it's the right way to do it.
Carlo

gschaider July 1, 2008 13:37

Hi Carlo! But instead of th
 
Hi Carlo!

But instead of the second -expression you surly used -condition, didn't you?

Bernhard

carlodean July 1, 2008 14:19

yes Sorry, I used -condition
 
yes Sorry,
I used -condition 'pos().z<=386'.
Is it correct??
Thank you

gschaider July 29, 2008 07:04

Hi! It has been asked at an
 
Hi!

It has been asked at another place on the board when FSF will work with 1.5. Well it looks like the 1.4.1-version compiles without modifications on 1.5 (which means: it worked all the time). Nevertheless: if you plan to pull the version from the svn I'd recommend to use the "new" URL as documented on http://openfoamwiki.net/index.php/Co...funkySetFields The "old" URL will be kept for 1.4.1 and will only receive bug-fixes

Bernhard

dkingsley July 30, 2008 23:11

I tried to access the latest F
 
I tried to access the latest FSF using the openfoamwiki's pointer to the svn version as the July 29th 2008 post suggests. The svn seems to be down or its configuration has changed.

Can anyone provide an updated link to the svn or a link to FSF source for OF1.5?

dennis

gschaider July 31, 2008 04:25

According to a Sourceforge-Bul
 
According to a Sourceforge-Bulletin the sourceforge-svn-server is currently down for maintainance (they are speaking of a 12 hour window, which should be over soon, so be patient)

Bernhard

dkingsley July 31, 2008 11:30

Thanks, I am leaving on vacati
 
Thanks, I am leaving on vacation in less than 24 hours and setFields failed to set gamma properly on a free surface problem I want to run while I was gone.

The information in this discussion topic and wiki entry was exactly what I needed.

dennis

sega August 23, 2008 04:49

Hallo Bernhard. I was wound
 
Hallo Bernhard.

I was woundering why your tool is always setting all boundary-condition to zeroGradient?

I stumbled over it, while initializing a gamma-field (for the usage with interFoam).
I had an existing gamma-file with given BC's and funkySetFields had overwritten all of them.

If there is a possibility to read some existing BC's and to put them into the "new" field, it would be a great impovement of the tool!

Greetings. S.

ngj August 23, 2008 10:14

Hi Sebastian Look at the ke
 
Hi Sebastian

Look at the keepPatches option. It does exactly what you are inquiring about.

See:
http://openfoamwiki.net/index.php/Co...funkySetFields

- Niels

sega August 23, 2008 11:21

Well, I'm sorry. Thats obviou
 
Well, I'm sorry.
Thats obvious. Why didn't I see it beforehand?

sega March 12, 2009 07:56

Hello Guys. It's me again.
 
Hello Guys.

It's me again.
Is it possible to access the bessel functions j0 and j1 from inside funkySetFields?

Greetings.

gschaider March 12, 2009 08:17

Currently: no What do you n
 
Currently: no

What do you need THAT for?

Shouldn't be to hard to implement as it seems to be implemented as a function for fields: in the .yy and the .ll file duplicate everything that has a "sin" (for example) in it and replace sin with j0. Then recompile and it should be there

Bernhard

sega March 12, 2009 08:22

I think I'm not well enough in
 
I think I'm not well enough into this.
What .yy and .ll files?

I need the Bessel functions to set up an initial 'hat shape' like Fig. 2 in http://test.interface.free.fr/Case04.pdf

gschaider March 12, 2009 12:11

There are two files in the FSF
 
There are two files in the FSF-sources with those extensions. You don't have to understand what you're doing there. Just trust you instincts ;) (some of the stuff you have to duplicate goes over more than one line)

I don't have time to insert that stuff before next week. So if you need it quickly you'll have to do it yourself

Bernhard

sega March 16, 2009 06:03

I think due to the fact, that you are exactly knowing what to do I would prefer, that you make the changes - no matter when.
Meanwhile I will take a look at the code and try not to mess with it.

gschaider March 16, 2009 06:08

Actually the update is already on the SVN. I also added the other functions that are specified in for scalars in the Programmer's guide. I just prefixed the Bessel-functions with "bessel" because I figured that y1 is too likely to clash with a field of the same name (so it is called besselJ1)

Bernhard

BTW: Concerning the title of this thread: I only fixed it for the 1.5-version

sega March 16, 2009 06:48

2 Attachment(s)
Great! I will try it the next days! Thank you.

Meanwhile I'm stuck on another problem concerning funkySetFields.
Working with the Rayleigh-Taylor-Instabilty I had to initialize a sinus-like interface.

Running funkySetFields with a condition like "pos().y <= 0.05*cos(2*pi*pos().x) + 2" does not include cells which should be partially filled and the interface looks more like some steps.

Unfortunately the simulations is not running as planned with the initialization from funkySetFields.

I had to write an MATLAB script which is also filling partially filled cells, to get a "smooth" sinus-function, which is far too much effort for such an initialization (imho).

Have a look at the attached images to make this more clear.

I have read this thread and found some similar problems with interfaces, but I'm not quite sure how to transfer this to my problem.

gschaider March 16, 2009 07:09

Hi!

Partial filling of the cells is easy if the mesh is equally spaced with a spacing dy in y-direction (please replace dy with the actual spacing and fun with the function you're using "0.05*cos(2*pi*pos().x) + 2")

"(mag(pos().y-fun)<dy/2) ? (fun-pos().y+dy/2) : ( pos().y < fun ? 1 : 0)"

Maybe a sign or two is wrong with that expression, I didn't test it. But the concept should be clear

Bernhard

sega March 17, 2009 14:47

Well, Sorry to ask this, but I don't know what xxx ? xxy : xxz means?
I read this is a conditional operator, but I have no idea what that is, and how it should look like in C++ ...


All times are GMT -4. The time now is 10:13.