Hello @schbt
For the glacier surface area, you can take the sum of the surface areas of all the elements that have ice? Something like this:
% Get areas of all triangles
areas =GetAreas(md.mesh.elements,md.mesh.x,md.mesh.y);
%flag elements that have ice
isice = min(md.mask.ice_levelset(md.mesh.elements),[],2)<0;
%sum areas of elements that have ice
sum(areas(find(isice)))
For the submerged area at calving faces it is going to need a bit more work... you can maybe use "isoline" which gives you a list of segments along the ice front and use the bed depth to do the integration?
contours=isoline(md, md.mask.ice_levelset, 'output','matrix');
Good luck!
Mathieu