Index: /issm/trunk-jpl/src/m/classes/clusters/discovery.m
===================================================================
--- /issm/trunk-jpl/src/m/classes/clusters/discovery.m	(revision 26993)
+++ /issm/trunk-jpl/src/m/classes/clusters/discovery.m	(revision 26994)
@@ -11,12 +11,13 @@
 		name          = 'discovery'
 		login         = '';
-		numnodes      = 20;
-		cpuspernode   = 8;
-		port          = 8000;
+		numnodes      = 1;
+		cpuspernode   = 16;
+		port          = 0;
 		codepath      = '';
 		executionpath = '';
 		interactive   = 0;
-		time          = 10; % hours
-		memory        = 2;
+		time          = 10; %in hours
+		memory        = 2;  %in Gb
+		email         = 'END,FAIL';
 
 	end
@@ -39,5 +40,4 @@
 			disp(sprintf('    numnodes: %i',cluster.numnodes));
 			disp(sprintf('    cpuspernode: %i',cluster.cpuspernode));
-			disp(sprintf('    np: %i',cluster.nprocs()));
 			disp(sprintf('    port: %i',cluster.port));
 			disp(sprintf('    codepath: %s',cluster.codepath));
@@ -45,5 +45,5 @@
 			disp(sprintf('    interactive: %i',cluster.interactive));
 			disp(sprintf('    time: %i hours',cluster.time));
-			disp(sprintf('    memory: %i',cluster.memory));
+			disp(sprintf('    memory: %i Gb',cluster.memory));
 		end
 		%}}}
@@ -58,5 +58,4 @@
 			if isempty(cluster.codepath), md = checkmessage(md,'codepath empty'); end
 			if isempty(cluster.executionpath), md = checkmessage(md,'executionpath empty'); end
-
 		end
 		%}}}
@@ -75,5 +74,10 @@
 			fprintf(fid,'#SBATCH --ntasks-per-node=%i\n',cluster.cpuspernode);
 			fprintf(fid,'#SBATCH --time=%s\n',datestr(cluster.time/24,'HH:MM:SS')); %walltime is in HH:MM:SS format. cluster.time is in hour
-			fprintf(fid,'#SBATCH --mem=%iG\n\n',cluster.memory);
+			fprintf(fid,'#SBATCH --mem=%iG\n',cluster.memory);
+			if ~isempty(cluster.email)
+				fprintf(fid,'#SBATCH --mail-type=%s\n',cluster.email);
+			end
+			fprintf(fid,'\n');
+
 			fprintf(fid,'export ISSM_DIR="%s/../"\n',cluster.codepath);
 			fprintf(fid,'source $ISSM_DIR/etc/environment.sh\n');      
@@ -87,40 +91,5 @@
 		%}}}
 		function BuildQueueScript(cluster,dirname,modelname,solution,io_gather,isvalgrind,isgprof,isdakota,isoceancoupling) % {{{
-
-			if(isvalgrind), disp('valgrind not supported by cluster, ignoring...'); end
-			if(isgprof),    disp('gprof not supported by cluster, ignoring...'); end
-
-			%write queuing script 
-			fid=fopen([modelname '.queue'],'w');
-			fprintf(fid,'#!/bin/bash\n');
-			fprintf(fid,'#SBATCH --job-name=%s\n',modelname);
-			fprintf(fid,'#SBATCH -o %s.outlog \n',modelname);
-			fprintf(fid,'#SBATCH -e %s.errlog \n',modelname);
-			fprintf(fid,'#SBATCH --nodes=%i\n',cluster.numnodes);
-			fprintf(fid,'#SBATCH --ntasks-per-node=%i\n',cluster.cpuspernode);
-			fprintf(fid,'#SBATCH --time=%s\n',datestr(cluster.time/24,'HH:MM:SS')); %walltime is in HH:MM:SS format. cluster.time is in hour
-			fprintf(fid,'#SBATCH --mem=%iG\n\n',cluster.memory);
-			fprintf(fid,'export ISSM_DIR="%s/../"\n',cluster.codepath);
-			fprintf(fid,'source $ISSM_DIR/etc/environment.sh\n');       
-			fprintf(fid,'cd %s/%s\n\n',cluster.executionpath,dirname);
-			fprintf(fid,'mpirun -n %i %s/issm.exe %s %s %s\n',cluster.nprocs(), cluster.codepath,solution,[cluster.executionpath '/' dirname],modelname);
-			if ~io_gather, %concatenate the output files:
-				fprintf(fid,'cat %s.outbin.* > %s.outbin',modelname,modelname);
-			end
-			fclose(fid);
-
-			%in interactive mode, create a run file, and errlog and outlog file
-			if cluster.interactive,
-				fid=fopen([modelname '.run'],'w');
-				fprintf(fid,'mpirun -n %i %s/issm.exe %s %s %s\n',cluster.nprocs(), cluster.codepath,solution,[cluster.executionpath '/' dirname],modelname);
-				if ~io_gather, %concatenate the output files:
-					fprintf(fid,'cat %s.outbin.* > %s.outbin',modelname,modelname);
-				end
-				fclose(fid);
-				fid=fopen([modelname '.errlog'],'w');
-				fclose(fid);
-				fid=fopen([modelname '.outlog'],'w');
-				fclose(fid);
-			end
+			error('not implemented yet');
 		end %}}}
 		function UploadQueueJob(cluster,modelname,dirname,filelist) % {{{
