Index: /issm/trunk/src/m/classes/public/BuildQueueingScriptgreenplanet.m
===================================================================
--- /issm/trunk/src/m/classes/public/BuildQueueingScriptgreenplanet.m	(revision 2372)
+++ /issm/trunk/src/m/classes/public/BuildQueueingScriptgreenplanet.m	(revision 2372)
@@ -0,0 +1,81 @@
+function BuildQueueingScriptgreenplanet(md,executionpath,codepath)
+%BUILDQUEUEINGSCRIPTGEMINI - ...
+%
+%   Usage:
+%      BuildQueueingScriptgreenplanet(md,executionpath,codepath)
+
+scriptname=[md.name '.queue'];
+
+
+
+%check queue names: 
+if strcmpi(md.cluster,'greenplanet'),
+	available_queues={'debug','shortg','longg'};
+	if  ~ismemberi(md.queue,available_queues),
+		error('BuildQueueingScriptcosmos error message: availables queues are debug, shortg and longg');
+	end 
+
+	if strcmpi(md.queue,'debug'),
+		if md.np>50,
+			error('BuildQueueingScriptgreenplaneterror error message: debug queue only allows for 50 cpus max');
+		end
+		
+		if md.time>60,
+			error('BuildQueueingScriptgreenplaneterror error message: debug queue only allows for 60 minute runs');
+		end
+	end
+end
+
+if strcmpi(md.cluster,'castor'),
+	available_queues={'shortc','longc'};
+	if  ~ismemberi(md.queue,available_queues),
+		error('BuildQueueingScriptcosmos error message: availables queues are shortc and longc');
+	end 
+end
+
+if strcmpi(md.cluster,'pollux'),
+	available_queues={'shortp','longp'};
+	if  ~ismemberi(md.queue,available_queues),
+		error('BuildQueueingScriptcosmos error message: availables queues are shortp and longp');
+	end 
+end
+
+%test parameters valid for all queues
+if strcmpi(md.queue(1:5),'short'),
+	if md.np>128,
+		error('BuildQueueingScriptcosmos error message: short queue only allows 128 cpus');
+	end
+	if md.time>180,
+		error('BuildQueueingScriptcosmos error message: short queue only allows 180 minutes');
+	end
+end
+
+if strcmpi(md.queue(1:4),'long'),
+	if md.np>128,
+		error('BuildQueueingScriptcosmos error message: long queue only allows 128 cpus');
+	end
+	if md.time>720,
+		error('BuildQueueingScriptcosmos error message: long queue only allows 720 minutes');
+	end
+end
+
+fid=fopen(scriptname,'w');
+if fid==-1,
+	error(['BuildQueueingScriptgreenplaneterror message: could not open ' scriptname ' file for ascii writing']);
+end
+
+fprintf(fid,'#!/bin/sh\n');
+fprintf(fid,'#PBS -l walltime=%i\n',md.time*60); %walltime is in seconds.
+fprintf(fid,'#PBS -l ncpus=%i\n',md.np);
+if ~isempty(md.queue),
+	fprintf(fid,'#PBS -q %s\n',md.queue);
+end
+fprintf(fid,'#PBS -o %s.outlog \n',md.name);
+fprintf(fid,'#PBS -e %s.errlog \n',md.name);
+
+fprintf(fid,'export PBS_O_WORKDIR=%s\n',executionpath);
+fprintf(fid,'cd $PBS_O_WORKDIR\n');
+fprintf(fid,'export OMP_NUM_THREADS=1\n');
+fprintf(fid,'dplace -s1 -c0-%i mpirun -np %i %s/%s.exe %s %s.bin %s.outbin %s.lock',md.np-1,md.np,codepath,AnalysisTypeFromEnum(md.analysis_type),executionpath,md.name,md.name,md.name);
+
+fclose(fid);
Index: /issm/trunk/src/m/classes/public/LaunchQueueJobgreenplanet.m
===================================================================
--- /issm/trunk/src/m/classes/public/LaunchQueueJobgreenplanet.m	(revision 2372)
+++ /issm/trunk/src/m/classes/public/LaunchQueueJobgreenplanet.m	(revision 2372)
@@ -0,0 +1,31 @@
+function md=LaunchQueueJobgreenplanet(md,executionpath,options)
+%LAUNCHQUEUEJOBGEMINI - ...
+%
+%   Usage:
+%      LaunchQueueJobgreenplanet(md,executionpath)
+
+%first, check we have the binary file and the queueing script
+if ~exist([ md.name '.bin'],'file'),
+	error('LaunchQueueJobgreenplanet error message: Binary input file missing, cannot go forward');
+end
+
+if ~exist([ md.name '.queue'],'file'),
+	error('LaunchQueueJobgreenplanet error message: queueing script issing, cannot go forward');
+end
+
+%jpload both files to cluster
+if ~strcmpi(options.batch,'yes'),
+	disp('uploading input file,  queueing script and variables script');
+	if md.qmu_analysis, 
+		eval(['!scp ' md.name '.bin' ' ' md.name '.queue '  md.name '.qmu.in -P 1025 elarour@localhost:' executionpath]);
+	else
+		['!scp ' md.name '.bin' ' ' md.name '.queue -P 1025 elarour@localhost:' executionpath ]
+		eval(['!scp ' md.name '.bin' ' ' md.name '.queue -P 1025 elarour@localhost:' executionpath ]);
+	end
+else
+	disp('batch mode requested: not launching job interactively');
+end
+
+%new greenplanet cannot launch across cluster using ssh
+disp(['launch solution sequence on remote cluster by logging into it and typing qsub < ' md.name '.queue']);
+md.waitonlock=0;
