Commit Graph

406 Commits

Author SHA1 Message Date
John M. Penn
83fd363eb7 Update picture in the SIM_sun README file. REF: #242 2016-05-26 18:37:23 -05:00
John M. Penn
5b53f8155a Delete these tutorial files because they are going into the wiki rather than here. Ref #241 2016-05-25 17:06:33 -05:00
John M. Penn
323ea2a40a First four sections of rewritten tutorial. Refs #241 2016-05-25 15:58:06 -05:00
Alex Lin
3e82f79f28 Use udunits package for units conversions.
FieldDescription.cpp is missing and include for stack.  Strange it compiles
on most platforms.

refs #231
2016-05-18 08:26:14 -05:00
Alex Lin
82d950bb9a Use udunits package for units conversions
Changed the java GUIs to use udunit symbol names

refs #231
2016-05-17 10:58:08 -05:00
Alex Lin
8a9497a9bc Use udunits package for units conversions
removed udunits.h from makefile dependencies

refs #231
2016-05-17 09:55:12 -05:00
Alex Lin
a95e8e086b Use udunits package for units conversions
Copied the units_conv.c from 15 that includes the new units to master.

Swept through the code removing includes to Unit.hh and UCF.h where they
are no longer needed.  Remade makefile dependencies.

refs #231
2016-05-17 09:01:37 -05:00
Alex Lin
7e218a0472 Use udunits package for units conversions
Change the Variable Server to use udunits.

refs #231
2016-05-16 17:14:50 -05:00
Alex Lin
9d3a51625f Allow --with-gtest argument with no directory
Added the option to not provide a directory name when using
--with-gtest

refs #237
2016-05-12 14:42:23 -05:00
Alex Lin
f19c002365 ./configure needs to properly enforce java version dependency
Really strange, all of the python flags changed.  Must have been
using an old autoconf cache for a long time.

refs #234
2016-05-12 09:31:05 -05:00
Alex Lin
83e299f618 ./configure needs to properly enforce java version dependency
Somewhere along the way the configure variable PYTHON_LDFLAGS changed
to PYTHON_LIBS.

refs #234
2016-05-12 09:27:17 -05:00
Alex Lin
7dc034315f ./configure needs to properly enforce java version dependency
Had to change the redirect syntax on the mac.

refs #234
2016-05-12 08:55:59 -05:00
Alex Lin
c9b8992fc1 ./configure needs to properly enforce java version dependency
Added a javac version check >= 1.8 to configure.

refs #234
2016-05-12 08:50:42 -05:00
Alex Lin
ee8f07469e Use udunits package for units conversions
Changed the files in our math utilities to use the udunits symbols

refs #231
2016-05-11 16:20:44 -05:00
Alex Lin
384519ce24 Use udunits package for units conversions
PyFrame_GetLineNumber is not present in python 2.6.  We have
to use PyCode_Addr2Line instead to get the line number.

refs #231
2016-05-11 15:14:19 -05:00
Alex Lin
929372e863 Use udunits package for units conversions
Created a UDUNITS_LDFLAGS to store an link library path and -luduints2.

refs #231
2016-05-11 14:43:53 -05:00
Alex Lin
01fd86a513 Use udunits package for units conversions
Needed to add UDUNITS_INCLUDES to the ICG makefile and remove
the hardcoded udunits include path

refs #231
2016-05-11 11:27:39 -05:00
Alex Lin
d7569bf9f2 Use udunits package for units conversions
Some individual tests in SIM_test_ip were still failing because the conversion
between lb and kg has a different number of digits now.

refs #231
2016-05-11 10:56:33 -05:00
Alex Lin
26cb44e946 Use udunits package for units conversions
So our unit tests did their job, they pointed to quite a few errors.
Fixed them all on my platform (CentOS 7).

refs #231
2016-05-11 09:01:54 -05:00
Alex Lin
d72aa59fdd Use udunits package for units conversions
Converted data products to use udunits.

refs #231
2016-05-10 14:45:31 -05:00
Alex Lin
1454236a81 Use udunits package for units conversions
Created a check in the configure script looking for the udunits header
files.  Also added a sim to test some of the new units capabilities.

refs #231
2016-05-09 16:40:48 -05:00
Alex Lin
6defa99b34 Use udunits package for units conversions
Changed the include for udunits to #include <udunits2.h> to work
on all platforms.  Added the include directory /usr/include/udunits2
for Linux.

refs #231
2016-05-09 10:23:19 -05:00
Alex Lin
4f3ef64002 Use udunits package for units conversions
Changed the handling of how we handle doubles and ints allowing
more mathematical operations like multiplication, division, and
some limited exponentiation.

refs #231
2016-05-09 08:36:43 -05:00
Alex Lin
684f0e6bdc Use udunits package for units conversions
Initial checkin of using udunits for measurement units conversions.  Replaced
our conversion code in ICG and swig code to use udunits.

Also added code to convert unit symbols that we used in Trick that are different
names in udunits.

Added a sim_object that will eventually allow users to specify a custom
set of files to read units information.

refs #231
2016-05-05 14:49:49 -05:00
Alex Lin
d144907b49 Use udunits package for units conversions
First thing is to move the misnamed Units directory to UnitsMap.

refs #231
2016-05-05 13:42:00 -05:00
Alex Lin
9e743ffa92 Invoking trick-ICG without any arguments results in a Segmentation fault
ICG dies on a strdup if the the input file is empty.  Added a check for
an empty input file name.  We exit with an error message if there is
no input file given.

refs #229
2016-04-27 11:24:03 -05:00
Alex Lin
c307668fef All command line arguments that start with "-d" being matched by input processor.
Changed the string compare to match the whole argument to "-d".

refs #230
2016-04-26 15:57:33 -05:00
Alex Lin
83d96b4bcc HDF5 data recording broken
Need to enclose the HDF5 code in write_data with an ifdef.

refs #188
2016-04-25 10:04:58 -05:00
Alex Lin
8354546160 HDF5 data recording broken
Overrode the write_data routine for HDF5 recording.  The new routine writes
out all buffered values of an individual variable with one or two HDF5 calls.
This is much more efficient than before where we were making an HDF5 call
for a single value.

refs #188
2016-04-25 09:47:13 -05:00
Alex Lin
57bed25466 Split test sims and fun sims into separate directories.
removed SIM_target because we don't use it.

refs #191
2016-04-20 15:29:22 -05:00
Alex Lin
d503d52bd8 Debugger command on mac is now lldb not gdb
Added a test to set the debugger command to gdb or lldb depending
on availability.  Created a new script for lldb to run.  Modified
the script for gdb to backtrace all threads.

refs #227
2016-04-20 14:12:03 -05:00
Alex Lin
8c3e322ed1 Variable server restart issues
Added mutexes in the variable server listener thread and each variable server thread.
During checkpoint restart all of these mutexes are locked by the master thread to
stop accepting new connections and stop all read/writing to all variable server clients.
Communication is resumed after the checkpoint has been reloaded.

refs #168
2016-04-19 13:50:30 -05:00
Alex Lin
fad36fc544 trick comm byteswap functions can't handle sizes above 65536 bytes
fix indentation while I'm here.

refs #187
2016-04-19 09:19:18 -05:00
Alex Lin
8633facc86 trick comm byteswap functions can't handle sizes above 65536 bytes
sigh, I forgot to actually set the pthread specific data.

refs #187
2016-04-19 09:16:42 -05:00
Alex Lin
2cf25b9825 trick comm byteswap functions can't handle sizes above 65536 bytes
Added a pthread specific swap buffer in both tc_read and tc_write.
The buffer is resized if a thread tries to send a buffer larger than
the current swap size.

refs #187
2016-04-19 09:02:57 -05:00
Alex Lin
2381c487d1 Build fails on Ubuntu 16.04
clang changed a call in 3.8.0 from uppercase to lowercase.  I changed
pp.getBuiltinInfo().InitializeBuiltins to pp.getBuiltinInfo().initializeBuiltins

refs #174
2016-04-18 15:22:52 -05:00
Alex Lin
af781d5383 Data products will not compile if TRICK_FORCE_32BIT is set.
The makefiles need to compile the units directory and they were
not at this time.  The units need to be compiled in the native
bit size regardless of whether we are forcing 32 bit or not.

refs #225
2016-04-18 09:57:59 -05:00
Alex Lin
6c991fae31 Remove catches for non-Trick exceptions
Forgot to add prototypes to turn on/off SIGABRT catching.

refs #220
2016-04-15 16:12:59 -05:00
Alex Lin
03d6105c6c Remove catches for non-Trick exceptions
Removed the catches for std:exceptions and unknown exceptions.  The best way
I found to provide a clue to where the exception comes from is to allow the
handler for unhandled exceptions execute.  This is std::terminate which calls
abort and trips a SIGABRT.  I added a signal handler for SIGABRT which like
SIGSEGV, we can print a stack trace or attach a debugger to the process before
exiting.  The stack trace print is on by default.  By default the signal
handler is on, stack trace is on, debugger is off.

refs #220
2016-04-15 15:01:14 -05:00
Alex Lin
d6e01ee1c4 Ignore privacy
We need to exclude STL or other template io_src code being created with they use
a protected/private enumerations, just like classes.  Also remove a check for
a static bitfield, because you can't have a static bitfield.

refs #218
2016-04-15 15:01:14 -05:00
John M. Penn
f2dd53f0b5 Fix address arithmetic in MemoryManager_ref_assignment.cpp and add unit test. refs #224 2016-04-15 14:34:38 -05:00
Alex Lin
112cc780e0 checkpoint_safestore_set_enabled() has the worst name ever
renamed checkpoint_safestore to checkpoint_safestore_period
renamed checkpoint_safestore_set_enabled to checkpoint_safestore

refs #196
2016-04-15 09:41:28 -05:00
Alex Lin
6198ce1f7f Add perl module Text::Balanced to list of prerequisites while configuring
Added lines in our configure script to search for perl modules
Text::Balanced and Digest::MD5

refs #205
2016-04-15 09:23:35 -05:00
Alex Lin
6dcfed6215 Split test sims and fun sims into separate directories.
removing trick_model code that does not belong to any sim.

refs #191
2016-04-15 08:30:07 -05:00
Alex Lin
c4df54e53e echo_jobs and debug_pause are not working
Changed the sim_object names in echo_jobs and debug_pase from "instrumentation"
to "trick_instrumentation"

refs #223
2016-04-14 13:22:25 -05:00
Alex Lin
5d9ab6e6c0 Create the conversions between quaternion and Euler angles
Test compilation requires -lpthread on Ubuntu.  Also added a .gitignore
for the test executable and object code files.

refs #216
2016-04-14 10:48:20 -05:00
Alex Lin
3ae6fc50e1 Ignore privacy
I moved the item size into the attribute structure itself.  When moving this, I did not follow
what was written before.  The difference caused problems.  Fixed it so the size
written now matches what was written before.

refs #218
2016-04-14 09:22:23 -05:00
Alex Lin
54591ec005 Ignore privacy
Found some of those uncommon cases like inheriting from templates which contain
private embedded classes.

refs #218
2016-04-13 16:07:16 -05:00
Alex Lin
6ea18b425d Ignore privacy
Removed an #if 0 section of code.

refs #218
2016-04-13 16:07:15 -05:00
Alex Lin
f63f44d876 Ignore privacy
Changed the storage of offsets from bytes to bits to better handle bitfields.
Added code to track classes that are defined within other classes and are
private/protected.  These classes cannot be used in templates because our
io_src code declares variables outside of the class that would try and use
these private/protected variables.  When a template is found to use a
private/protected class it is skipped.

refs #218
2016-04-13 16:07:15 -05:00