Added exception handling in mulgrids to new_node_name() and new_column_name() methods, so that refine() will raise an exception if the naming convention overflows
Rewrote handling of TOUGH2 results tables in t2listing, to cope with listings where internal headers are not flagged with line feed characters
In t2listing, added parse_table_header_AUTOUGH2() and parse_table_header_TOUGH2() methods, and added regexp logic to detect start of table- for the case of TOUGH2-MP EOS5 which has no space between the top header and element table
Added is_results_line(), skip_to_results_line() and table_expected_floats() methods to t2listing class, to refine detection of start of results tables
Added support for tilted grids (via GDCX,GDCY properties) in mulgrid class; added tilt_vector property for calculating gravity cosines of connections on tilted grids
Added tilt calculations to connection gravity cosines in t2grid fromgeo() method
Added documentation in mulgrid refine() method about using optimize() method in conjunction with it
Modified mulgrid get_tilt_vector() method to handle theta = pi/2 case
Added documentation of mulgrid gdcx, gdcy tilting properties - in mulgrid property table and t2grid fromgeo() method
Moved all mulgrid gdcx, gdcy documentation to its own new subsection in the mulgrids chapter
In t2grids add_horizontal_layer_connections(), replaced angle conversion with math radians() function
Merged changes from tilt branch
Bugfix in mulgrid column_boundary_nodes(): failed for grids with 2-node boundary columns
Fixed mistake in user guide table 4.13- EL,NE and SL,NS TOUGH2 parameters were swapped
Added case to t2data section_insertion_index(), so that new TIMES sections go after PARAM section
Modified mulgrids optimize() to use numpy *.npy files, instead of plain text files, to load and save variables on disk for PEST, and reshape() to reshape arrays
Modified mulgrids optimize() method to use reshape() when pest = False, and raise an exception if scipy leastsq() does not converge
Altered documentation of PEST option in mulgrid optimize() method
Fixed another mistake in user guide table 4.13- TOUGH2 parameter for enthalpy was F1 instead of F3
In t2data, revised the way the _sections list is maintained and used- new update_sections() method called before writing, and removed old additional_sections variable in write()- this means sections added by the user should be correctly ordered when the object is written to file