[cig-commits] commit: Merge with 1.4.x

Mercurial hg at geodynamics.org
Fri Feb 5 12:09:08 PST 2010


changeset:   249:ac5795055eb1
tag:         tip
parent:      241:82a69cd25ec5
parent:      248:f155cc3a20ad
user:        Walter Landry <wlandry at caltech.edu>
date:        Thu Feb 04 15:05:16 2010 -0800
files:       INSTALL
description:
Merge with 1.4.x


diff -r 82a69cd25ec5 -r ac5795055eb1 ChangeLog
--- /dev/null	Thu Jan 01 00:00:00 1970 +0000
+++ b/ChangeLog	Thu Feb 04 15:05:16 2010 -0800
@@ -0,0 +1,13 @@
+ChangeLog for Underworld-1.4
+
+* New configuration step in installation process, './configure.py -h' for help.
+* Changes to the XML user interface, see the file XMLChanges_1.4 for details.
+* Multigrid solver is now available. 
+* Superconvergent Patch Recovery (SPR) Method is now available.
+* Significant checkpointing improvements, hdf5 format is now the standard format, see manual for details.
+* Testing have been enabled. Currently 443 unit tests + 105 system tests.
+Automatic testing is run periodically on multiple platforms with Shinkou
+system, see https://www.mcc.monash.edu.au/trac/test/build.
+* New constructor/destroy/delete phases for all components and plugins.
+* Toolboxes / Context code tangle has been addressed.
+* Bugfixes and memory cleaning changes also.
diff -r 82a69cd25ec5 -r ac5795055eb1 INSTALL
--- a/INSTALL	Mon Feb 01 15:59:53 2010 -0800
+++ /dev/null	Thu Jan 01 00:00:00 1970 +0000
@@ -1,50 +0,0 @@
-========================
-  Installation Guide
-========================
-
-------------------------
-1. Dependencies
-------------------------
-
-  libXML2
-  MPI
-  PETSc
-  HDF5 (optional)
-
-(more to come)
-
-------------------------
-2. Configuration
-------------------------
-
-To configure:
-
-  ./configure.py
-
-Available options can be listed with:
-
-  ./configure.py --help
-
-------------------------
-3. Build
-------------------------
-
-To build:
-
-  ./scons.py
-
-To rebuild as fast as possible (note that this is
-not garaunteed to produce a consistent build):
-
-  ./fast-scons.py
-
-To run tests:
-
-  ./scons.py check             ... runs unit-tests & low resolution integration tests 
-  ./scons.py check-convergence ... runs only convergence tests
-  ./scons.py check-complete    ... runs all tests (recommended for cluster installs)
-
-To install:
-
-  ./scons.py install
-
diff -r 82a69cd25ec5 -r ac5795055eb1 README
--- /dev/null	Thu Jan 01 00:00:00 1970 +0000
+++ b/README	Thu Feb 04 15:05:16 2010 -0800
@@ -0,0 +1,80 @@
+========================
+  README File
+========================
+
+Includes an installation guide, known bugs and contact information
+
+========================
+  Installation Guide
+========================
+
+------------------------
+1. Dependencies
+------------------------
+
+  libXML2
+  MPI
+  PETSc
+  HDF5
+
+  For visualisation (optional):
+  X11 ( for desktop machines ) or OSMesa (for cluster or machines without displays) or SDL
+  libPNG or libJPEG
+  libFAME
+
+for more details see the http://www.underworldproject.org/documentation/Dependencies.html
+
+------------------------
+2. Configuration
+------------------------
+
+To configure:
+
+  ./configure.py
+
+Available options can be listed with:
+
+  ./configure.py --help
+
+------------------------
+3. Build
+------------------------
+
+To build:
+
+  ./scons.py
+
+To rebuild as fast as possible (note that this is
+not garaunteed to produce a consistent build):
+
+  ./fast-scons.py
+
+To run tests:
+
+  ./scons.py check             ... runs unit-tests & low resolution integration tests 
+  ./scons.py check-convergence ... runs only convergence tests
+  ./scons.py check-complete    ... runs all tests (recommended for cluster installs)
+  ./scons.py -h                ... for help on the checks available
+
+
+========================
+  KNOWN ISSUES
+========================
+
+* The test, PCDVCSuite, fails under optimised mode on 32-bit machines.
+* Significant warnings are produced in compile.... don't be alarmed, we are working on them.
+
+Please see XMLChanges_1.4, for details of important input file change for this release
+
+========================
+  CONTACT INFORMATION
+========================
+Mains web page:
+  http://www.underworldproject.org/
+  
+Email groups:
+   underworld-users at vpac.org    ... user group
+   underworld-dev at vpac.org      ... developer group
+  
+
+Julian Giordani (18 Jan 2010)
diff -r 82a69cd25ec5 -r ac5795055eb1 SConfigure
--- a/SConfigure	Mon Feb 01 15:59:53 2010 -0800
+++ b/SConfigure	Thu Feb 04 15:05:16 2010 -0800
@@ -6,7 +6,7 @@ from config import Package, packages, cc
 #
 
 options = [
-    ('--prefix', 'prefix', 'Installation prefix.', None),
+    ('--prefix', 'prefix', 'Installation prefix. (currently disabled)', None),
     ('--build-dir', 'build_dir', 'Sandbox location.', 'build'),
     ('--with-debugging', 'with_debugging', 'Build with debugging', 1, 'int'),
     ('--with-warnings', 'with_warnings', 'Print all warnings at compile time', 1, 'int'),
@@ -133,29 +133,27 @@ if not (GetOption('help') or GetOption('
         # Need an extra CPPDEFINE for gLucifer.
         env.AppendUnique(CPPDEFINES=['HAVE_GL'])
 
-        # If we're on Darwin go for a native windowing system first.
+        # X11 available?
         res = osm;  #Use osmesa for windowing if found
+        if not res and env.get('with_x11'):
+            res = env.ConfigurePackage(packages.X11, required=False).result
+
+        # Try for Carbon if on Darwin...
         if not res and platform.system() == 'Darwin' and env.get('with_carbon'):
             res = env.ConfigurePackage(packages.Carbon, required=False).result
 
-        # Then SDL. SDL is always compatible with others, so allow configure regardless
-        #if not res: 
-        #    res = env.ConfigurePackage(packages.SDL, required=False).result
+        # Try for SDL. SDL is always compatible with others, so allow configure regardless
         sdl = 0
         if env.get('with_sdl'):
             sdl = env.ConfigurePackage(packages.SDL, required=False).result
 
-         # Then X11.
-        if not res:
-            if env.get('with_x11'):
-                res = env.ConfigurePackage(packages.X11, required=False).result
-            if not (res or sdl):
-                print
-                print 'Need a windowing system for gLucifer, one of either SDL,'
-                print 'X11, Carbon or OSMesa. None of these could be found.'
-                print 'Details in \'config/config2/config.log\''
-                print
-                env.Exit()
+        if not (res or sdl):
+            print
+            print 'Need a windowing system for gLucifer, one of either SDL,'
+            print 'X11, Carbon or OSMesa. None of these could be found.'
+            print 'Details in \'config/config2/config.log\''
+            print
+            env.Exit()
 
         # Add auxilliary gLucifer packages.
         if env.get('with_png'):
diff -r 82a69cd25ec5 -r ac5795055eb1 XMLChanges_1.4
--- /dev/null	Thu Jan 01 00:00:00 1970 +0000
+++ b/XMLChanges_1.4	Thu Feb 04 15:05:16 2010 -0800
@@ -0,0 +1,84 @@
+XML Input File changes for Underworld 1.4
+==============================================
+
+
+===================================================
+1. User must specify the “context” of the model 
+===================================================
+This must be done first before other components are read into the dictionary, otherwise the simulation will halt in it's 'read from input file' phase. To perform this add:
+
+<struct name=”component” mergeType=”merge”>
+	<struct name=”context”>
+		<param name=”Type”>UnderworldContext</param>
+	</struct>
+</struct>
+
+We recommend this be included directly after <list name=”import”>...</list>
+
+===================================================
+2. Plugins are now defined in XML as components are
+===================================================
+
+To general syntax for adding a plugin is now:
+   <list name="plugins" mergeType="merge">
+       <struct>
+           <param name="Type">PlugingName</param>
+           <param name="Context">context</param>
+           ...
+       </struct>
+   </list>
+where the '...' represents arguments to pass into the plugin.
+
+So what was, as of Underworld 1.2
+	<list name="plugins" mergeType="merge">
+		<!-- Output Plugins -->
+		<param>StgFEM_FrequentOutput</param>	
+		<param>Underworld_Vrms</param>	
+		<param>StgFEM_CPUTime</param>
+	</list>
+
+Is now:
+	<list name="plugins" mergeType="merge">
+		<struct>
+			<param name="Type">StgFEM_FrequentOutput</param>
+			<param name="Context">context</param>
+		</struct>
+		<struct>
+			<param name="Type">Underworld_Vrms</param>
+			<param name="Context">context</param>
+			<param name="GaussSwarm">gaussSwarm</param>
+			<param name="VelocityField">VelocityField</param>
+		</struct>
+		<struct>
+			<param name="Type">StgFEM_CPUTime</param>
+			<param name="Context">context</param>
+		</struct>
+	</list>
+
+This adds verbosity to the plugins and requires the user to know what parameters to pass to a plugin. As with the “Components”, parameters passed in are error checked and the code will halt and report a problem if invalid parameters are found. This change is necessary for the code restructure of late 2009.
+
+==============================================
+3. Verticies ---- > Vertices
+==============================================
+The code now uses the correct spelling 'vertices' to define a list containing multiple vertex points. The previous, incorrect spelling was 'verticies'. Please check that your Shape definitions are consistent with this.
+
+==============================================
+4. Declaring gLucifer
+==============================================
+If creating gLucifer visualisation and NOT including the template <include>glucifer/window.xml</include>, one must define 
+
+<param name=”lucPluginContext”>context</param>
+<list name=”plugins” mergeType=”merge”>
+  <struct>
+    <param name=”Type”>lucPlugin</param>
+    <param name=”Context”>lucPluginContext</param>
+  </struct>
+</list>
+
+(see the file gLucifer/ModelComponents/window.xml as an example)
+
+
+See any .xml in the Underworld/InputFiles/ for examples of these changes.
+
+
+ 
diff -r 82a69cd25ec5 -r ac5795055eb1 script/systest.pl
--- a/script/systest.pl	Mon Feb 01 15:59:53 2010 -0800
+++ b/script/systest.pl	Thu Feb 04 15:05:16 2010 -0800
@@ -206,19 +206,22 @@ sub runTests {
 	print "$command";
 	&executeCommandline( $command );
 
-	# check error stream for error result
-	open( ERROR, "<$stderr" );
-	my $line;
-	foreach $line (<ERROR>) {
-		if( $line =~ m/[E|e]rror/ ) {
-			close(ERROR); 
-			die ("\n\n### ERROR ###\nError in runtime: see $stderr or $stdout - stopped" ); 
-		}
-	}
+	# check error stream for error result and produce warning
+   my $rm_stderr = 1;
+   open( ERROR, "<$stderr" );
+   my $line;
+   foreach $line (<ERROR>) {
+      if( $line =~ m/[E|e]rror/ ) {
+         close(ERROR); 
+         warn ("\n\n### Warning ###\nError reported in runtime: see $stderr - stopped" ); 
+         $rm_stderr=0;
+         last; # break out of the foreach loop
+      }
+   }
 
-	# if no error close file and delete it
-	close(ERROR); 
-	$command = "rm $stderr"; &executeCommandline($command);
+   # if no error close file and delete it
+   close(ERROR); 
+   if( $rm_stderr ) { $command = "rm $stderr"; &executeCommandline($command); }
 
 	# removing help.xml
 	$command = "rm help.xml";



More information about the CIG-COMMITS mailing list