view gridDerivatives.m @ 970:23d9ca6755be feature/poroelastic

Add getBoundaryQuadrature in Elastic2dVariable. Rename get_boundary_operator -> getBoundaryOperator. Add operators in getBoundaryOperator, with full size so that they work with multiblock.DiffOp.getBoundaryOperator.
author Martin Almquist <malmquist@stanford.edu>
date Tue, 25 Dec 2018 07:23:38 +0100
parents 48b6fb693025
children
line wrap: on
line source

% Calculates derivatives in all directions of function.
% Uses multi-dim vector form.
%   gridDerivatives(F,Dx,Dy)
%   gridDerivatives(F,Dx,Dy,Dz)
function varargout = gridDerivatives(F, varargin)
    assert(length(varargin) == ndims(F));

    switch ndims(F)
        case 2
            varargout{1} = (varargin{1}*F')';
            varargout{2} = varargin{2}*F;
        otherwise
            error('Not implemented for ndims(F) = %d',ndims(F));
    end
end