CFD Online Logo CFD Online URL
www.cfd-online.com
[Sponsors]
Home > Forums > Fluent UDF and Scheme Programming

Compilation error

Register Blogs Members List Search Today's Posts Mark Forums Read

Reply
 
LinkBack Thread Tools Display Modes
Old   July 29, 2013, 02:37
Default Compilation error
  #1
New Member
 
uday
Join Date: Jul 2013
Posts: 7
Rep Power: 4
uday sarkar is on a distinguished road
Hi im trying to model unsteady heat transfer from wall with the following udf:

#include "udf.h"
DEFINE_PROFILE(unsteady_heat, thread, position)
{
face_t f;
begin_f_loop(f, thread)
{
real t = RP_Get_Real("flow-time");
F_PROFILE(f, thread, position) = 0.01072*(300.0+(1527.84*doubleexp(double(0.0854*t) )));
}
end_f_loop(f, thread)
}

However I am getting syntax error while compiling.
Can anybody help me out?
thanks in advance.
uday sarkar is offline   Reply With Quote

Old   July 29, 2013, 02:53
Default
  #2
Senior Member
 
Paritosh Vasava
Join Date: Oct 2012
Location: Lappeenranta, Finland
Posts: 545
Rep Power: 12
vasava will become famous soon enough
You have not declared 'doubleexp'. Also use of type double within the code may not be valid.
vasava is offline   Reply With Quote

Old   July 29, 2013, 03:34
Default
  #3
New Member
 
uday
Join Date: Jul 2013
Posts: 7
Rep Power: 4
uday sarkar is on a distinguished road
hi thanks for the reply.
However "double exp (double x)" stands for the mathematical function exp(x) as defined under mathematical functions in udf help section.
does the error lie somewhere else?
please help.
uday sarkar is offline   Reply With Quote

Old   July 29, 2013, 05:15
Default
  #4
Senior Member
 
Paritosh Vasava
Join Date: Oct 2012
Location: Lappeenranta, Finland
Posts: 545
Rep Power: 12
vasava will become famous soon enough
When I try to compile it says that there is a ')' is missing. I strongly suspect that it is because of the type declaration with in the statement.

I dont have fluent license for couple of hours. I will check again and get back to you.
vasava is offline   Reply With Quote

Old   July 29, 2013, 08:46
Default
  #5
Senior Member
 
Paritosh Vasava
Join Date: Oct 2012
Location: Lappeenranta, Finland
Posts: 545
Rep Power: 12
vasava will become famous soon enough
As I said earlier the error is in the declaration. Yes "double exp (double x)" stands for the mathematical function exp(x) but that doen not mean that you can use it as it is inside a statement.

Try this one, it works:

#include "udf.h"
DEFINE_PROFILE(unsteady_heat, thread, position)
{
face_t f;
double t1, t2;
real t = CURRENT_TIME;

begin_f_loop(f, thread)
{
real t = RP_Get_Real("flow-time");
t1 = 0.0854*t;
t2 = exp(t1);
F_PROFILE(f, thread, position) = 0.01072*(300.0+(1527.84*t2));
}
end_f_loop(f, thread)
}
vasava is offline   Reply With Quote

Old   July 30, 2013, 03:31
Default
  #6
New Member
 
uday
Join Date: Jul 2013
Posts: 7
Rep Power: 4
uday sarkar is on a distinguished road
Thanks Vasava....
It works fine now...
uday sarkar is offline   Reply With Quote

Reply

Tags
syntax error, unsteady heat transfer

Thread Tools
Display Modes

Posting Rules
You may not post new threads
You may not post replies
You may not post attachments
You may not edit your posts

BB code is On
Smilies are On
[IMG] code is On
HTML code is Off
Trackbacks are On
Pingbacks are On
Refbacks are On


Similar Threads
Thread Thread Starter Forum Replies Last Post
Native ParaView Reader Bugs tj22 OpenFOAM Paraview & paraFoam 267 July 20, 2015 22:29
Pressure outlet boundary condition rolando OpenFOAM Running, Solving & CFD 58 November 12, 2014 14:51
OpenFOAM on MinGW crosscompiler hosted on Linux allenzhao OpenFOAM Installation 127 January 30, 2009 20:08
Compiling problems with hello worldC fw407 OpenFOAM Installation 21 January 6, 2008 18:38
user defined function cfduser CFX 0 April 29, 2006 10:58


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