PROLATESURFACEAREA Approximated surface area of a prolate ellipsoid. S = prolateSurfaceArea(R1,R2) Example prolateSurfaceArea See also geom3d, ellipsoidSurfaceArea, oblateSurfaceArea
0001 function S = prolateSurfaceArea(elli, varargin) 0002 %PROLATESURFACEAREA Approximated surface area of a prolate ellipsoid. 0003 % 0004 % S = prolateSurfaceArea(R1,R2) 0005 % 0006 % Example 0007 % prolateSurfaceArea 0008 % 0009 % See also 0010 % geom3d, ellipsoidSurfaceArea, oblateSurfaceArea 0011 % 0012 0013 % ------ 0014 % Author: David Legland 0015 % e-mail: david.legland@grignon.inra.fr 0016 % Created: 2015-07-03, using Matlab 7.9.0.529 (R2009b) 0017 % Copyright 2015 INRA - Cepia Software Platform. 0018 0019 %% Parse input argument 0020 0021 if size(elli, 2) == 7 0022 R1 = elli(:, 4); 0023 R2 = elli(:, 5); 0024 0025 elseif size(elli, 2) == 1 && ~isempty(varargin) 0026 R1 = elli(:, 1); 0027 R2 = varargin{1}; 0028 end 0029 0030 assert(R1 > R2, 'first radius must be larger than second radius'); 0031 0032 % surface theorique d'un ellipsoide prolate 0033 % cf http://fr.wikipedia.org/wiki/Ellipso%C3%AFde_de_r%C3%A9volution 0034 e = sqrt(R1.^2 - R2.^2) ./ R1; 0035 S = 2 * pi * R2.^2 + 2 * pi * R1 .* R2 .* asin(e) ./ e;