FSI with OpenFOAM and Code-Aster

  • Eugene
  • Topic Author
  • Offline
  • Fresh Boarder
  • Fresh Boarder
More
8 years 2 months ago #6591 by Eugene
Replied by Eugene on topic Re: FSI with OpenFOAM and Code-Aster
Hi Everyone

I've been able to assign a non-uniform, time-varying, distributed load to a simple 1D beam. The next step for me is to look at shell elements and my coupling scheme. I was wondering if it is possible to assign a pressure to a element or face instead of a force per node. I am aware of the FORCE_FACE command but as far as I looked mostly its used for groups of faces GROUP_MA. For the 1D beam I used a macro to specify the force at a node with something like:

_F(NOEUD = 'N%d' % (i),FZ=F[c],), from www.code-aster.org/forum2/viewtopic.php?id=14348

I was wondering if a similar method could be used but instead of a force per node I want to specify a pressure with a face or element? Can I just use MAILLE instead of NOEUD and Mi instead of Ni?

Thanx

Please Log in or Create an account to join the conversation.

  • Eugene
  • Topic Author
  • Offline
  • Fresh Boarder
  • Fresh Boarder
More
8 years 2 months ago #6593 by Eugene
Replied by Eugene on topic Re: FSI with OpenFOAM and Code-Aster
I found a way to apply the pressure to the shell elements like this:
BCLoad=AFFE_CHAR_MECA(MODELE=Model, PRES_REP=_F(MAILLE='M90', PRES=bP,),);

M90 being one of the face elements of the mesh. I noticed that my (shell) mesh consist of a list of elements of which the first few are line elements and then face elements. I suppose if the mesh was 3D then the face elements will be followed by solids? (1D, 2D, 3D)
Am I understanding it correctly?

When I try to replace the constant pressure bP with a function Vlist of pressures that change over time, something I was able to do for nodes (as seen below), I run into problems. I'm using DYNA_LINE_TRAN.

1)
In the past this worked for me for nodes:
BCLoad=AFFE_CHAR_MECA_F(MODELE=Model, FORCE_NODALE=_F(NOEUD='N2', FZ=Vlist,),);
with the following in DYNA_LINE_TRAN:
EXCIT=(_F(CHARGE = BCLoad,),_F(CHARGE = BCHold),),

2)
but using this same appraoch gives me a error: "try to apply pressure (as function) to non-zero element shell"
BCLoad=AFFE_CHAR_MECA_F(MODELE=Model, PRES_REP=_F(MAILLE='M90', PRES=Vlist,),);
with the following in DYNA_LINE_TRAN:
EXCIT=(_F(CHARGE = BCLoad,),_F(CHARGE = BCHold),),

3)
doing it this way works:
BCLoad=AFFE_CHAR_MECA(MODELE=Model, PRES_REP=_F(MAILLE='M90', PRES=bP,),);
with the following in DYNA_LINE_TRAN:
EXCIT=(_F(CHARGE = BCLoad,FONC_MULT=MyFunc),_F(CHARGE = BCHold),),
or
EXCIT=(_F(CHARGE = BCLoad,FONC_MULT=Vlist),_F(CHARGE = BCHold),),
Where MyFunc and Vlist is the same function just defined or read from file respectively.

Problem is that I need to expand this to apply a different pressure list to different faces.
I would prefer using approach 2 because I know how to use a macro to run through the faces but not sure how to get past that error.
Using approach 3 works but I'm not sure how to macro the EXCITE command so that I can incorporate different Vlists for each face.

Any help will be appreciated.

Thanx

Please Log in or Create an account to join the conversation.

  • Eugene
  • Topic Author
  • Offline
  • Fresh Boarder
  • Fresh Boarder
More
8 years 2 months ago #6594 by Eugene
Replied by Eugene on topic Re: FSI with OpenFOAM and Code-Aster
Looks like I should have used FORCE_COQUE instead of PRES_REP with option 2.
Slowly but surely getting there.

Please Log in or Create an account to join the conversation.

More
8 years 2 months ago #6595 by Claus
Replied by Claus on topic Re: FSI with OpenFOAM and Code-Aster
It is a very interesting project you have going there - hopyfully you keep notes for a future tutorial :)

/C

Code_Aster release : STA11.4 on OpenSUSE 12.3 64 bits - EDF/Intel version

Please Log in or Create an account to join the conversation.

More
8 years 1 month ago #6604 by RichardS
Replied by RichardS on topic Re: FSI with OpenFOAM and Code-Aster
Hello Joubert,
I'm currently starting to work on my masters thesis on the subject of FSI with Code_Aster and Open Foam, so I'm also intersetd in the progress of your work!
My aim is do develop a macro command similar to CALC_IFS_DNL, but rather using MPI instead of YACS module of salome for the communication. I hope we can share some of our experiences.

Best regards,
Richard

SimScale - Engineering Simulation in your browser!

Please Log in or Create an account to join the conversation.

  • Eugene
  • Topic Author
  • Offline
  • Fresh Boarder
  • Fresh Boarder
More
8 years 1 month ago #6623 by Eugene
Replied by Eugene on topic Re: FSI with OpenFOAM and Code-Aster
Hi Richard

Sorry for the late reply. I don't have experience with CALC_IFS_DNL so I won't be of much help there. I am looking at one-way coupling for small oscillations so for the moment using DYNA_LINE_TRAN. Looks like CALC_IFS_DNL uses DYNA_NON_LINE with two-way coupling between saturn and aster. In my case I am only interested in how to get the fluid forces of a finished simulation to the structure. I assume the structural displacement is small so the flow is unaffected. I solve the flow with openfoam, export the forces, import them in code-aster and solve for the structural dynamics. For the moment its very simplified and there is a lot of work to be done. My experience with code-aster is very limited but if you have questions about specific parts of the my approach and progress you are welcome to ask. Hopefully by beginning of next year I can have some experimental data to compare with.

Regards
Eugene

Please Log in or Create an account to join the conversation.

Moderators: catux
Time to create page: 0.114 seconds
Powered by Kunena Forum