-
-
May 29, 2021 at 5:12 pmteomanSubscriberHi Rob
I tried the code given in Item 2.6.4. DEFINE_GRID_MOTION .and while interpreting an error occurs at
Thread *tf = DT_THREAD(dt); command line.
What is the reason for that .And How I can fi it.
Thanks a lot.
Teoman
-
May 30, 2021 at 8:24 amteomanSubscriberWhile interpreting the compiler gives "structure reference not implemented" message for the Thread *tf = DT_THREAD(dt);command line.
Waiting for your advice.
Teoman
-
June 1, 2021 at 11:55 amSystemSubscriberThis discussion was created from comments split from: help me with understanding the structure of the udf for oscillating diaphragm in dynamic mesh.
-
June 1, 2021 at 11:55 amRobForum Moderator
-
June 1, 2021 at 5:08 pmteomanSubscriberHi Rob
Thanks for the info.
It requires customer registry.But ,I am a student of ─░stanbul Tech.Univ.
Please copy the io tet here.
Regrads
-
June 2, 2021 at 9:35 amteomanSubscriberHi Rob
Firstly, Sorry for the mistyping.
As I mentioned beor ,I am unable to read the link you gave.
I am waiting for your kind help.
Regards.
-
June 2, 2021 at 9:37 amteomanSubscriberKeyboard needs to be repaired ,some letters are malfunctioning .
Sorry again.
-
June 2, 2021 at 9:54 am
-
June 2, 2021 at 11:20 amteomanSubscriberThanks indeed.
I have already read the related items in The Help Manulas.Manual is not describing how to solve or being free from "structure reference not implemented" error message.
Despite the interpreting error , the UDF (eactly same with Manual) has been compiled and opened .but does not seem to be working .
I do not know what to do more.
Looking forward having your help.
Best Regards.
-
June 2, 2021 at 11:30 amRobForum ModeratorIf it compiled without error did you then hook the UDF up to the solver? Ie attach to the various models and boundary conditions? In the Help system there are tutorials and videos, I think at least one covers the moving mesh.
-
June 2, 2021 at 12:50 pmteomanSubscriberMany Thanks
I will work on it.
Best Regards.
-
June 3, 2021 at 9:20 amteomanSubscriberHi Rob
I hooked the udf without any error message except the one.
But it is not working.Because , when Thread*tf=DT_THREAD(dt); is not implemented.
begin_f_loop(f,tf) command is not working. I guess ,the cause is that "tf" not defined.
I have put a Message line in UDF and it shows that time stepping is ok .But when I put it into begin_f_loop no message apperars on the screen.
I am desperately needing your help.
Regards
Teoman
#include"udf.h"
DEFINE_GRID_MOTION(beam,domain,dt,time,dtime)
{
Thread*tf=DT_THREAD(dt);
face_tf;
intn;
Node*v;
real dy;
dy=5*sin(25*time);
/*getthethreadpointerforwhichthismotionisdefined*/
SET_DEFORMING_THREAD_FLAG(THREAD_T0(tf));
Message("time=%f,dy=%f\n",time,dy);
begin_f_loop(f,tf)
{
f_node_loop(f,tf,n)
{
v=F_NODE(f,tf,n);
if(NODE_X(v)>50.0&&NODE_POS_NEED_UPDATE(v))
{
NODE_POS_UPDATED(v);
NODE_Y(v)=NODE_Y(v)+NODE_X(v)*dy;
}
}
}
end_f_loop(f,tf);
}
-
June 3, 2021 at 11:37 amRobForum ModeratorTry adding a space between Thread and *tf otherwise you'll need to rely on the wider community as we (staff) won't be debugging code.
-
June 3, 2021 at 1:35 pmteomanSubscriberCertainly, I am not expecting anyone debugging .
The syntax ,You saw was just one of syntax I tried. First ,I used exactly same Grid_Motion sample UDF given in the Manual.
After having the interpreting error ; I thought , There could be a mistyping in the Manual Then I tried diferent syntaxs.
Customization Manual Item 4.3 mentiones the same error ; I had; can happen. But not advicing any solution.
So , this error is a systemic error without solution , I am afraid.
The only helping source is you and your colleques that I can rely on.
Many many thanks
Teo
-
June 3, 2021 at 1:40 pmRobForum ModeratorIt compiles but then gives the Thread *tf error or it gives the Thread *tf error when compiling? Did you copy + paste from the manual or type in from scratch?
-
June 3, 2021 at 2:26 pm
-
June 4, 2021 at 1:03 pmteomanSubscriberHi Rob
Finally I discovered the problem which was another syntax error in my code.
Please accept my apologies for taking your time .
And accept my sincere thanks for your kind help and effort.
Best Regrads
Teoman
-
June 4, 2021 at 3:11 pmRobForum ModeratorYou're welcome. Please post the working code so others can learn from it.
-
June 9, 2021 at 2:16 pmteomanSubscriberThe problematic command line is
if(NODE_X(v)>50.0&&NODE_POS_NEED_UPDATE(v))
UDF uses dimension unit as "meter" even if You adusted the unit to "milimeter" in fluent. Then the dimension
in the command line " 50.0" is meter for UDF and equals to 50000 milimeter and if you CAD model is smaller in dimension Than the code does not work.
Fluent dimension set up should override UDF's unit system.
-
June 9, 2021 at 4:09 pmRobForum ModeratorIt does say somewhere that Fluent assumes all inputs and outputs of UDFs are in SI units. It's our way of forcing the US to catch up with the rest of the world and stop using BTU/in/ft2 as a unit.
-
March 27, 2022 at 7:50 ammirandaSubscriberHello Teoman we are also trying to solve a similar problem. So we have a few questions to ask you. We are a group of senior design students form MEF university ─░stanbul. If you available can you please contact with us from this email adress: emremiranda134@gmail.com
-
Viewing 20 reply threads
- The topic ‘DEFINE_GRID_MOTION’ is closed to new replies.
Ansys Innovation Space
Trending discussions
- Non-Intersected faces found for matching interface periodic-walls
- Unburnt Hydrocarbons contour in ANSYS FORTE for sector mesh
- Help: About the expression of turbulent viscosity in Realizable k-e model
- Cyclone (Stairmand) simulation using RSM
- error udf
- Diesel with Ammonia/Hydrogen blend combustion
- Fluent fails with Intel MPI protocol on 2 nodes
- Mass Conservation Issue in Methane Pyrolysis Shock Tube Simulation
- Script error Code: 800a000d
- Encountering Error in Heterogeneous Surface Reaction
Top Contributors
-
1191
-
513
-
488
-
225
-
209
Top Rated Tags
© 2024 Copyright ANSYS, Inc. All rights reserved.
Ansys does not support the usage of unauthorized Ansys software. Please visit www.ansys.com to obtain an official distribution.