/usr/share/octave/packages/fpl-1.3.4/deprecated/FPL2pdequiver.m is in octave-fpl 1.3.4-2.
This file is owned by root:root, with mode 0o644.
The actual contents of the file can be viewed below.
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 70 71 72 73 74 75 76 77 78 79 80 81 82 83 84 85 86 87 88 89 90 91 92 | ## Copyright (C) 2004-2008 Carlo de Falco, Massimiliano Culpo
##
## This file is part of
##
## FPL - Fem PLotting package for octave
##
## FPL is free software; you can redistribute it and/or modify
## it under the terms of the GNU General Public License as published by
## the Free Software Foundation; either version 3 of the License, or
## (at your option) any later version.
##
## FPL is distributed in the hope that it will be useful,
## but WITHOUT ANY WARRANTY; without even the implied warranty of
## MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
## GNU General Public License for more details.
##
## You should have received a copy of the GNU General Public License
## along with FPL; If not, see <http://www.gnu.org/licenses/>.
##
##
## AUTHORS:
## Carlo de Falco <cdf _AT_ users.sourceforge.net>
##
## Culpo Massimiliano
## Bergische Universitaet Wuppertal
## Fachbereich C - Mathematik und Naturwissenschaften
## Arbeitsgruppe fuer Angewandte MathematD-42119 Wuppertal Gaussstr. 20
## D-42119 Wuppertal, Germany
## -*- texinfo -*-
## @deftypefn {Function File} {} FPL2pdequiver (@var{mesh}, @
## @var{vx}, @var{vy}, [ @var{property}, @var{value} ...])
##
## Plots the 2D vector field @var{vx}, @var{vy}
## defined on the triangulation @var{mesh} using opendx.
##
## Options (default values):
## @var{sample_density} (100)
##
## @seealso{FPL2pdesurf, FPL2ptcsurf, FPL2ptcquiver}
## @end deftypefn
function FPL2pdequiver(mesh,vecfieldx,vecfieldy,varargin);
sample_density = "100";
if( (nargin >= 3) && (rem(nargin,2)==1) )
for ii=1:2:length(varargin)
[ varargin{ii} " = " varargin{ii+1} ";" ]
eval([ varargin{ii} " = """ varargin{ii+1} """;" ]);
endfor
else
error(["wrong number of parameters " num2str (nargin)])
endif
JX = sum(vecfieldx,1)'/3;
JY = sum(vecfieldy,1)'/3;
dataname = mktemp("/tmp",".dx");
scriptname = mktemp("/tmp",".net");
FPL2dxoutputdata(dataname,mesh.p,mesh.t,[ JX JY],'J',1,2,1);
showmesh = file_in_path(path,"FPL2pdequiver.net");
system (["cp " showmesh " " scriptname]);
system (["sed -i \'s|__FILE__DX__|" dataname "|g\' " scriptname]);
system (["sed -i \'s|__SAMPLE__DENSITY__|" sample_density "|g\' " scriptname]);
command = ["dx -noConfirmedQuit -program " scriptname " -execute -image >& /dev/null & "];
system(command);
endfunction
function filename = mktemp (direct,ext);
if (~exist(direct,"dir"))
error("trying to save temporary file to non existing directory")
endif
done=false;
while ~done
filename = [direct,"/FPL.",num2str(floor(rand*1e7)),ext];
if ~exist(filename,"file")
done =true;
endif
endwhile
endfunction
|