From dc71274f16f7ff65145e034900f582b62453a033 Mon Sep 17 00:00:00 2001 From: Norbert Preining Date: Sat, 14 Oct 2017 11:43:11 +0900 Subject: rename and update ketpic -> ketcindy --- .../ketcindy/ketlib/ketpicscifiles6/Paramplot.sci | 140 +++++++++++++++++++++ 1 file changed, 140 insertions(+) create mode 100644 texmf-dist/scripts/ketcindy/ketlib/ketpicscifiles6/Paramplot.sci (limited to 'texmf-dist/scripts/ketcindy/ketlib/ketpicscifiles6/Paramplot.sci') diff --git a/texmf-dist/scripts/ketcindy/ketlib/ketpicscifiles6/Paramplot.sci b/texmf-dist/scripts/ketcindy/ketlib/ketpicscifiles6/Paramplot.sci new file mode 100644 index 00000000..4e3effdc --- /dev/null +++ b/texmf-dist/scripts/ketcindy/ketlib/ketpicscifiles6/Paramplot.sci @@ -0,0 +1,140 @@ +// 08.06.18 (N) +// 08.12.18 +// 09.03.12 +// 09.12.31 (gsort) +// 13.10.19 ( __ added to variables ) +// 14.10.24 N,D,E => N__, etc +// 14.12.11 Assign used +// 15.11.16 N changed to number of intervals +// 16.12.13 in case of T1=T2 + +function P__=Paramplot(varargin) + Eps__=10^(-5); + Nargs__=length(varargin); + if type(varargin(1))==13 + Fnflg__=1; + Fnx__=varargin(1); + Fny__=varargin(2); Is__=3; + if type(varargin(Is__))==13 + Fnflg__=Fnflg__+1; + Fnargx__=varargin(Is__); + Fnargy__=varargin(Is__+1); + Is__=Is__+2; + end; + else + Fnflg__=0; + Fnstr__=varargin(1); Is__=2; + end; + Rgstr__=varargin(Is__); Is__=Is__+1; + Range__=[0,2*%pi]; + N__=50; // Numpoints + E__=[]; // Exclusions + D__=%inf; // Discont + for I__=Is__:Nargs__ + Tmp__=varargin(I__); + K__=mtlb_findstr(Tmp__,'='); + Tmp1__=strsplit(Tmp__,[K__-1,K__]); + Tmp2__=ascii(Tmp1__(1,1)); + Lhs__=char(Tmp2__(1)); + Str__=Lhs__+'__='+Tmp1__(3,1); + execstr(Str__); + end; + K__=mtlb_findstr(Rgstr__,'='); + if K__~=[] + Tmp__=strsplit(Rgstr__,[K__-1,K__]); + Vname__=Tmp__(1,1); + Rng__=evstr(Tmp__(3,1)); + else + Vname__=Rgstr__; + Rng__=[XMIN,XMAX]; + end + T1__=Rng__(1); T2__=Rng__(2); +// Dt__=(T2__-T1__)/(N__-1); + Dt__=(T2__-T1__)/(N__); // 15.11.16 + if Fnflg__==0 + Str__=Assign(Fnstr__,Vname__,'t__'); + end; + if abs(Dt__)Eps__ + if Fnflg__==0 + Pa__=evstr(Str__); + else + if Fnflg__==1 + Pa__=[Fnx__(t__),Fny__(t__)]; + else + if type(Fnargx__)==1 + Tmp1__=Fnx__(t__); + else + Tmp1__=Fnx__(Fnargx__,t__); + end; + if type(Fnargy__)==1 + Tmp2__=Fny__(t__); + else + Tmp2__=Fny__(Fnargy__,t__); + end; + Pa__=[Tmp1__,Tmp2__]; + end; + end; + Ke__=Ke__+1; + end + if Pa__~=[] + if Pa__(1)==%inf + P__=[P__; Pa__] + elseif P__==[] + P__=[Pa__]; + else + Tmp__=P__(size(P__,1),:); + if Tmp__(1)==%inf + P__=[P__;Pa__]; + elseif norm(Tmp__-Pa__)