You are an expert in writing code in many different languages. Your goal is to perform code completion for the following code, keeping in mind the rest of the code and the file meta data.
    Metadata details:
    filename: TDdispFS.m
    path of file: ./repos/CutAndDisplace/3dCode/TDFunctions
    
    the code of the file until where you have to start completion: function [DisplacementXYZ]=TDdispFS(X,Y,Z,P1,P2,P3,Ss,Ds,Ts,nu)
% TDdispFS 
% Calculates displacements associated with a triangular dislocation in an 

    
function [DisplacementXYZ]=TDdispFS(X,Y,Z,P1,P2,P3,Ss,Ds,Ts,nu)
% TDdispFS 
% Calculates displacements associated with a triangular dislocation in an 
% elastic full-space.
%
% TD: Triangular Dislocation
% EFCS: Earth-Fixed Coordinate System
% TDCS: Triangular Dislocation Coordinate System
% ADCS: Angular Dislocation Coordinate System
% 
% INPUTS
% X, Y and Z: 
% Coordinates of calculation points in EFCS (East, North, Up). X, Y and Z 
% must have the same size.
%
% P1,P2 and P3:
% Coordinates of TD vertices in EFCS.
% 
% Ss, Ds and Ts:
% TD slip vector components (Strike-slip, Dip-slip, Tensile-slip).
%
% nu:
% Poisson's ratio.
%
% OUTPUTS
% ue, un and uv:
% Calculated displacement vector components in EFCS. ue, un and uv have
% the same unit as Ss, Ds and Ts in the inputs.
% 
% 
% Example: Calculate and plot the first component of displacement vector 
% on a regular grid.
% 
% [X,Y,Z] = meshgrid(-3:.02:3,-3:.02:3,2);
% [ue,un,uv] = TDdispFS(X,Y,Z,[-1 0 0],[1 -1 -1],[0 1.5 .5],-1,2,3,.25);
% h = surf(X,Y,reshape(ue,size(X)),'edgecolor','none');
% view(2)
% axis equal
% axis tight
% set(gcf,'rend