annotate gridDerivatives.m @ 982:a0b3161e44f3
feature/getBoundaryOp
Add the following methods in LaplaceCurvilinear: getBoundaryOperator, getBoundaryQuadrature, getBoundaryBorrowing. Remove get_boundary_ops. Make interface and boundary_condition methods use the new methods.
author |
Martin Almquist <malmquist@stanford.edu> |
date |
Tue, 08 Jan 2019 11:51:24 +0100 |
parents |
48b6fb693025 |
children |
|
rev |
line source |
0
|
1 % Calculates derivatives in all directions of function.
|
|
2 % Uses multi-dim vector form.
|
|
3 % gridDerivatives(F,Dx,Dy)
|
|
4 % gridDerivatives(F,Dx,Dy,Dz)
|
|
5 function varargout = gridDerivatives(F, varargin)
|
|
6 assert(length(varargin) == ndims(F));
|
|
7
|
|
8 switch ndims(F)
|
|
9 case 2
|
|
10 varargout{1} = (varargin{1}*F')';
|
|
11 varargout{2} = varargin{2}*F;
|
|
12 otherwise
|
|
13 error('Not implemented for ndims(F) = %d',ndims(F));
|
|
14 end
|
|
15 end |