Time series addon does not compile on FC6 [SOLVED]

Tecplot's Add-on Developer's Kit

Moderators: davetaflin, salter, steve, jprenaud, straton, Chris Idso

jprenaud
Moderator
Posts: 47
Joined: Thu Dec 21, 2006 3:53 am
Location: UK
Contact:

Time series addon does not compile on FC6 [SOLVED]

Postby jprenaud » Wed Feb 07, 2007 1:35 am

Hi, I saw this addon:

http://www.tecplottalk.com/addons/timeseries/

Unfortunately, I can't compile it under Linux, I get:

Code: Select all

g++ -c -I/opt/tecplot/tec360/include -DNETRESTRICT -DTHREED  -DADDON -DDATE='"02-07-2007"' -Wall -DIPC -fPIC -DLINUX -DIGNOREMOSTXERRORS -DUSEENUM -DLINUX64 -g /home/jp/Documents/tecplot/addons/TimeSeries/main.cpp
/home/jp/Documents/tecplot/addons/TimeSeries/main.cpp: In function ‘void GetSolutionTimes(Strand_t, std::vector<double, std::allocator<double> >&)’:
/home/jp/Documents/tecplot/addons/TimeSeries/main.cpp:71: warning: comparison between signed and unsigned integer expressions
/home/jp/Documents/tecplot/addons/TimeSeries/main.cpp:78: warning: comparison between signed and unsigned integer expressions
/home/jp/Documents/tecplot/addons/TimeSeries/main.cpp: In function ‘_Set_a* GetZonesAtSolutionTime(Strand_t, double)’:
/home/jp/Documents/tecplot/addons/TimeSeries/main.cpp:102: warning: unused variable ‘ii’
/home/jp/Documents/tecplot/addons/TimeSeries/main.cpp: In function ‘Boolean_t ExtractDataOverTime(Strand_t, double, double, double, Boolean_t)’:
/home/jp/Documents/tecplot/addons/TimeSeries/main.cpp:336: error: expected unqualified-id before numeric constant
/home/jp/Documents/tecplot/addons/TimeSeries/main.cpp:430: error: invalid lvalue in assignment
/home/jp/Documents/tecplot/addons/TimeSeries/main.cpp:436: error: invalid lvalue in assignment
/home/jp/Documents/tecplot/addons/TimeSeries/main.cpp: In function ‘void TimeSeriesPlotProbeCallback(Boolean_t)’:
/home/jp/Documents/tecplot/addons/TimeSeries/main.cpp:461: error: expected unqualified-id before numeric constant
/home/jp/Documents/tecplot/addons/TimeSeries/main.cpp:462: error: expected unqualified-id before numeric constant
/home/jp/Documents/tecplot/addons/TimeSeries/main.cpp:455: warning: unused variable ‘XVarNum’
/home/jp/Documents/tecplot/addons/TimeSeries/main.cpp:456: warning: unused variable ‘YVarNum’
/home/jp/Documents/tecplot/addons/TimeSeries/main.cpp: At global scope:
/home/jp/Documents/tecplot/addons/TimeSeries/main.cpp:124: warning: ‘void ClearFrame()’ defined but not used
make: *** [obj/linux64.26/test/main.o] Error 1


Any idea what might be causing this problem?

Note that this was done with Tecplot 360 (not 360 r2) would that be a problem? I can't run Tecplot 360r2 on Linux Fedora Core 6...
Last edited by jprenaud on Thu Feb 08, 2007 12:44 pm, edited 1 time in total.
JP Renaud

scottf
Tecplot Employee
Posts: 115
Joined: Wed Apr 05, 2006 8:58 am
Location: Bellevue, WA
Contact:

Time series addon does not compile on FC6

Postby scottf » Wed Feb 07, 2007 9:56 am

JP,

I tried compiling the add-on on one of our Linux boxes and saw the same problems. It looks like some of the variable names are possibly reserved words (I'm a Windows developer, so I'm not up to speed on all the reserved words on Linux).

If you get 'main.cpp' again from http://www.tecplottalk.com/addons/timeseries/ everything should be good.

Also, I noticed a round off issue with the add-on. The way the add-on works is that it relies on the user to probe the plot, then it queries the XYZ location and in turn probes that location at each solution time. If the user does a surface probe, it's possible (due to round off), for subsequent probes by the add-on to be slightly outside the bounds of the data, causing the probe to fail. I'm now playing some tricks to take care of this issue, but it hasn't been tested much.

There is a #define in main.cpp called

Code: Select all

#define USE_SMART_PROBE_AT_POSITION_METHOD

which can be used to turn on/off this behavior.[/code]

This add-on requires Tecplot 360 R2 or later. It exploits new functionality in the TecUtilDataSetAddZoneX() function. The add-on may compile and load with an earlier version of Tecplot, but will cause an assertion. That said, version checking should probably be added to ensure the add-on cannot be loaded on earlier versions of Tecplot.

jprenaud
Moderator
Posts: 47
Joined: Thu Dec 21, 2006 3:53 am
Location: UK
Contact:

Postby jprenaud » Wed Feb 07, 2007 10:41 am

Thanks Scott for your answer.

I did change the names of the variables in question and got the addon to compile fine although there are still quite a few warnings. However, as you said, I got an assertion when tryi ng tu use it under tecplot360(r1)... It really is a shame as at the moment, tecplot360r2 is not really usable for me on Fedora Core 6.

Note that on the addon description page, there is a mistake. You would need to include the line

Code: Select all

$!LoadAddon "timeseries"

and not "linktime" as suggested.
JP Renaud

scottf
Tecplot Employee
Posts: 115
Joined: Wed Apr 05, 2006 8:58 am
Location: Bellevue, WA
Contact:

Time series addon does not compile on FC6

Postby scottf » Wed Feb 07, 2007 1:15 pm

JP,

To be specific, the add-on takes advantage of 360 R2 functionality of TecUtilDataSetAddZoneX() in that you can specify a zone number that already exists as a method of replacing an existing zone.

I've posted a "fix" that instead of replacing the zone in the time series frame it creates a new zone. So, the add-on will collect the data from each probe to a different zone. The add-on then updates the zone number for the appropriate XY mapping.

Really this behavior should probably be an option on the menu (and the original behavior should only be available for 360 R2 or later).

See http://www.tecplottalk.com/addons/times ... pliant.cpp (right-click, Save As)

You should be able to do a diff of the two .cpp files and see what I changed.

Scott

P.S. I've updated the add-on page regarding the $!LoadAddon command.

jprenaud
Moderator
Posts: 47
Joined: Thu Dec 21, 2006 3:53 am
Location: UK
Contact:

Postby jprenaud » Thu Feb 08, 2007 5:11 am

Thanks again Scott. I have compiled it and run it successfully! I can send you a binary for tecplot360r1 on linux.64 if you want.

However, when running it on a simple 3D data file (tetrahedrons), the time series plot is slightly wrong. The curve starts at a value of 1 instead of zero. It starts at 1 and sharply drops to the real value (0) at time=0. I guess this is clear on the following picture:

Image

The input file contains no positives values so the time series is obviously wrong at the start.

Maybe I could send you the data file to have a look?
JP Renaud

jim

Postby jim » Thu Feb 08, 2007 8:07 am

jprenaud wrote:Thanks Scott for your answer.
It really is a shame as at the moment, tecplot360r2 is not really usable for me on Fedora Core 6.


JP, I sent you an email with a link to a distribution that I think/hope will solve the FC6 issue. I'm going to be traveling the next few days, but if you have an opportunity to take a look at it, please let me know if it helps.

Jim

scottf
Tecplot Employee
Posts: 115
Joined: Wed Apr 05, 2006 8:58 am
Location: Bellevue, WA
Contact:

Postby scottf » Thu Feb 08, 2007 9:31 am

JP,

Sending the data file would be fine. If it's small enough to email, send it to "tecplottalk [at sign] fowlerfamily [dot] com"

Otherwise ftp it following these instructions:

A. Using command line ftp:
1. ftp ftp.tecplot.com
2. log in as anonymous, with your e-mail address as password
3. ftp> bin
4. ftp> put
(specify local path and file name. e.g. “c:\filename.ext”)
(specify destination path and file name. e.g. “incoming/filename.ext”)


Return to “Add-on Developer's Kit (ADK)”

Who is online

Users browsing this forum: No registered users and 1 guest

cron