Index: /issm/trunk/src/m/classes/public/mesh/meshyams.m
===================================================================
--- /issm/trunk/src/m/classes/public/mesh/meshyams.m	(revision 2567)
+++ /issm/trunk/src/m/classes/public/mesh/meshyams.m	(revision 2568)
@@ -53,13 +53,6 @@
 %load velocities 
 disp('loading velocities...');
-A=whos('-file',velocities);
-if length(A)==4,
-	intep='grid';
-elseif  length(A)==5,
-	interp='mesh';
-else
-	error(['meshyams error message: file ' velocities ' does not contain 4 (x,y,vx,vy) or 5 (x,y,index,vx,vy) variables']);
-end
-load(velocities);
+Names=VelFindVarNames(velocities);
+Vel=load(velocities);
 
 %start mesh adaptation
@@ -69,6 +62,11 @@
 	%interpolate velocities onto mesh
 	disp('   interpolating velocities...');
-	vx_obs=InterpFromGridToMesh(x_m,y_m,vx,md.x,md.y,0);
-	vy_obs=InterpFromGridToMesh(x_m,y_m,vy,md.x,md.y,0);
+	if strcmpi(Names.interp,'grid'),
+		vx_obs=InterpFromGridToMesh(Vel.(Names.xname),Vel.(Names.yname),Vel.(Names.vxname),md.x,md.y,0);
+		vy_obs=InterpFromGridToMesh(Vel.(Names.xname),Vel.(Names.yname),Vel.(Names.vyname),md.x,md.y,0);
+	else
+		vx_obs=InterpMeshFromToMesh2d(Vel.(Names.indexname),Vel.(Names.xname),Vel.(Names.yname),Vel.(Names.vxname),md.x,md.y,0);
+		vy_obs=InterpMeshFromToMesh2d(Vel.(Names.indexname),Vel.(Names.xname),Vel.(Names.yname),Vel.(Names.vyname),md.x,md.y,0);
+	end
 	field=sqrt(vx_obs.^2+vy_obs.^2);
 
