Code covered by the BSD License  

Highlights from
slatec

from slatec by Ben Barrowes
The slatec library converted into matlab functions.

[x,rx,c,ai,dai]=jairy(x,rx,c,ai,dai);
function [x,rx,c,ai,dai]=jairy(x,rx,c,ai,dai);
%***BEGIN PROLOGUE  JAIRY
%***SUBSIDIARY
%***PURPOSE  Subsidiary to BESJ and BESY
%***LIBRARY   SLATEC
%***TYPE      SINGLE PRECISION (JAIRY-S, DJAIRY-D)
%***AUTHOR  Amos, D. E., (SNLA)
%           Daniel, S. L., (SNLA)
%           Weston, M. K., (SNLA)
%***DESCRIPTION
%
%                  JAIRY computes the Airy function AI(X)
%                   and its derivative DAI(X) for ASYJY
%
%                                   INPUT
%
%         X - Argument, computed by ASYJY, X unrestricted
%        RX - RX=SQRT(ABS(X)), computed by ASYJY
%         C - C=2.*(ABS(X)**1.5)/3., computed by ASYJY
%
%                                  OUTPUT
%
%        AI - Value of function AI(X)
%       DAI - Value of the derivative DAI(X)
%
%***SEE ALSO  BESJ, BESY
%***ROUTINES CALLED  (NONE)
%***REVISION HISTORY  (YYMMDD)
%   750101  DATE WRITTEN
%   891009  Removed unreferenced variable.  (WRB)
%   891214  Prologue converted to Version 4.0 format.  (BAB)
%   900328  Added TYPE section.  (WRB)
%   910408  Updated the AUTHOR section.  (WRB)
%***end PROLOGUE  JAIRY
%
persistent a ajn ajp ak1 ak2 ak3 b ccv con2 con3 con4 con5 cv da dajn dajp dak1 dak2 dak3 db e1 e2 ec f1 f2 firstCall fpi12 i j m1 m1d m2 m2d m3 m3d m4 m4d n1 n1d n2 n2d n3 n3d n4 n4d rtrx scv t temp1 temp2 tt ; if isempty(firstCall),firstCall=1;end; 

if isempty(i), i=0; end;
if isempty(j), j=0; end;
if isempty(m1), m1=0; end;
if isempty(m1d), m1d=0; end;
if isempty(m2), m2=0; end;
if isempty(m2d), m2d=0; end;
if isempty(m3), m3=0; end;
if isempty(m3d), m3d=0; end;
if isempty(m4), m4=0; end;
if isempty(m4d), m4d=0; end;
if isempty(n1), n1=0; end;
if isempty(n1d), n1d=0; end;
if isempty(n2), n2=0; end;
if isempty(n2d), n2d=0; end;
if isempty(n3), n3=0; end;
if isempty(n3d), n3d=0; end;
if isempty(n4), n4=0; end;
if isempty(n4d), n4d=0; end;
if isempty(a), a=zeros(1,15); end;
if isempty(ajn), ajn=zeros(1,19); end;
if isempty(ajp), ajp=zeros(1,19); end;
if isempty(ak1), ak1=zeros(1,14); end;
if isempty(ak2), ak2=zeros(1,23); end;
if isempty(ak3), ak3=zeros(1,14); end;
if isempty(b), b=zeros(1,15); end;
if isempty(ccv), ccv=0; end;
if isempty(con2), con2=0; end;
if isempty(con3), con3=0; end;
if isempty(con4), con4=0; end;
if isempty(con5), con5=0; end;
if isempty(cv), cv=0; end;
if isempty(da), da=zeros(1,15); end;
if isempty(dajn), dajn=zeros(1,19); end;
if isempty(dajp), dajp=zeros(1,19); end;
if isempty(dak1), dak1=zeros(1,14); end;
if isempty(dak2), dak2=zeros(1,24); end;
if isempty(dak3), dak3=zeros(1,14); end;
if isempty(db), db=zeros(1,15); end;
if isempty(ec), ec=0; end;
if isempty(e1), e1=0; end;
if isempty(e2), e2=0; end;
if isempty(fpi12), fpi12=0; end;
if isempty(f1), f1=0; end;
if isempty(f2), f2=0; end;
if isempty(rtrx), rtrx=0; end;
if isempty(scv), scv=0; end;
if isempty(t), t=0; end;
if isempty(temp1), temp1=0; end;
if isempty(temp2), temp2=0; end;
if isempty(tt), tt=0; end;
if firstCall,   n1 =[14];  end;
if firstCall,  n2 =[23];  end;
if firstCall,  n3 =[19];  end;
if firstCall,  n4=[15];  end;
if firstCall,   m1 =[12];  end;
if firstCall,  m2 =[21];  end;
if firstCall,  m3 =[17];  end;
if firstCall,  m4=[13];  end;
if firstCall,   fpi12 =[1.30899693899575e+00];  end;
if firstCall,  con2 =[5.03154716196777e+00];  end;
if firstCall,  con3 =[3.80004589867293e-01];  end;
if firstCall,  con4 =[8.33333333333333e-01];  end;
if firstCall,  con5=[8.66025403784439e-01];  end;
if firstCall,   ak1(1) =[2.20423090987793e-01];  end;
if firstCall,  ak1(2) =[-1.25290242787700e-01];  end;
if firstCall,  ak1(3) =[1.03881163359194e-02];  end;
if firstCall,  ak1(4) =[8.22844152006343e-04];  end;
if firstCall,  ak1(5) =[-2.34614345891226e-04];  end;
if firstCall,  ak1(6) =[1.63824280172116e-05];  end;
if firstCall,  ak1(7)=[3.06902589573189e-07];  end;
if firstCall,  ak1(8) =[-1.29621999359332e-07];  end;
if firstCall,  ak1(9) =[8.22908158823668e-09];  end;
if firstCall,  ak1(10) =[1.53963968623298e-11];  end;
if firstCall,  ak1(11) =[-3.39165465615682e-11];  end;
if firstCall,  ak1(12) =[2.03253257423626e-12];  end;
if firstCall,  ak1(13) =[-1.10679546097884e-14];  end;
if firstCall, ak1(14)=[-5.16169497785080e-15];  end;
if firstCall,   ak2(1) =[2.74366150869598e-01];  end;
if firstCall,  ak2(2) =[5.39790969736903e-03];  end;
if firstCall,  ak2(3) =[-1.57339220621190e-03];  end;
if firstCall,  ak2(4) =[4.27427528248750e-04];  end;
if firstCall,  ak2(5) =[-1.12124917399925e-04];  end;
if firstCall,  ak2(6) =[2.88763171318904e-05];  end;
if firstCall,  ak2(7)=[-7.36804225370554e-06];  end;
if firstCall,  ak2(8) =[1.87290209741024e-06];  end;
if firstCall,  ak2(9) =[-4.75892793962291e-07];  end;
if firstCall,  ak2(10) =[1.21130416955909e-07];  end;
if firstCall,  ak2(11) =[-3.09245374270614e-08];  end;
if firstCall,  ak2(12) =[7.92454705282654e-09];  end;
if firstCall,  ak2(13) =[-2.03902447167914e-09];  end;
if firstCall, ak2(14) =[5.26863056595742e-10];  end;
if firstCall,  ak2(15) =[-1.36704767639569e-10];  end;
if firstCall,  ak2(16) =[3.56141039013708e-11];  end;
if firstCall,  ak2(17) =[-9.31388296548430e-12];  end;
if firstCall,  ak2(18) =[2.44464450473635e-12];  end;
if firstCall,  ak2(19) =[-6.43840261990955e-13];  end;
if firstCall, ak2(20) =[1.70106030559349e-13];  end;
if firstCall,  ak2(21) =[-4.50760104503281e-14];  end;
if firstCall,  ak2(22) =[1.19774799164811e-14];  end;
if firstCall,  ak2(23)=[-3.19077040865066e-15];  end;
if firstCall,   ak3(1) =[2.80271447340791e-01];  end;
if firstCall,  ak3(2) =[-1.78127042844379e-03];  end;
if firstCall,  ak3(3) =[4.03422579628999e-05];  end;
if firstCall,  ak3(4) =[-1.63249965269003e-06];  end;
if firstCall,  ak3(5) =[9.21181482476768e-08];  end;
if firstCall,  ak3(6) =[-6.52294330229155e-09];  end;
if firstCall,  ak3(7)=[5.47138404576546e-10];  end;
if firstCall,  ak3(8) =[-5.24408251800260e-11];  end;
if firstCall,  ak3(9) =[5.60477904117209e-12];  end;
if firstCall,  ak3(10) =[-6.56375244639313e-13];  end;
if firstCall,  ak3(11) =[8.31285761966247e-14];  end;
if firstCall,  ak3(12) =[-1.12705134691063e-14];  end;
if firstCall,  ak3(13) =[1.62267976598129e-15];  end;
if firstCall, ak3(14)=[-2.46480324312426e-16];  end;
if firstCall,   ajp(1) =[7.78952966437581e-02];  end;
if firstCall,  ajp(2) =[-1.84356363456801e-01];  end;
if firstCall,  ajp(3) =[3.01412605216174e-02];  end;
if firstCall,  ajp(4) =[3.05342724277608e-02];  end;
if firstCall,  ajp(5) =[-4.95424702513079e-03];  end;
if firstCall,  ajp(6) =[-1.72749552563952e-03];  end;
if firstCall,  ajp(7)=[2.43137637839190e-04];  end;
if firstCall,  ajp(8) =[5.04564777517082e-05];  end;
if firstCall,  ajp(9) =[-6.16316582695208e-06];  end;
if firstCall,  ajp(10) =[-9.03986745510768e-07];  end;
if firstCall,  ajp(11) =[9.70243778355884e-08];  end;
if firstCall,  ajp(12) =[1.09639453305205e-08];  end;
if firstCall,  ajp(13) =[-1.04716330588766e-09];  end;
if firstCall, ajp(14) =[-9.60359441344646e-11];  end;
if firstCall,  ajp(15) =[8.25358789454134e-12];  end;
if firstCall,  ajp(16) =[6.36123439018768e-13];  end;
if firstCall,  ajp(17) =[-4.96629614116015e-14];  end;
if firstCall,  ajp(18) =[-3.29810288929615e-15];  end;
if firstCall,  ajp(19)=[2.35798252031104e-16];  end;
if firstCall,   ajn(1) =[3.80497887617242e-02];  end;
if firstCall,  ajn(2) =[-2.45319541845546e-01];  end;
if firstCall,  ajn(3) =[1.65820623702696e-01];  end;
if firstCall,  ajn(4) =[7.49330045818789e-02];  end;
if firstCall,  ajn(5) =[-2.63476288106641e-02];  end;
if firstCall,  ajn(6) =[-5.92535597304981e-03];  end;
if firstCall,  ajn(7)=[1.44744409589804e-03];  end;
if firstCall,  ajn(8) =[2.18311831322215e-04];  end;
if firstCall,  ajn(9) =[-4.10662077680304e-05];  end;
if firstCall,  ajn(10) =[-4.66874994171766e-06];  end;
if firstCall,  ajn(11) =[7.15218807277160e-07];  end;
if firstCall,  ajn(12) =[6.52964770854633e-08];  end;
if firstCall,  ajn(13) =[-8.44284027565946e-09];  end;
if firstCall, ajn(14) =[-6.44186158976978e-10];  end;
if firstCall,  ajn(15) =[7.20802286505285e-11];  end;
if firstCall,  ajn(16) =[4.72465431717846e-12];  end;
if firstCall,  ajn(17) =[-4.66022632547045e-13];  end;
if firstCall,  ajn(18) =[-2.67762710389189e-14];  end;
if firstCall,  ajn(19)=[2.36161316570019e-15];  end;
if firstCall,   a(1) =[4.90275424742791e-01];  end;
if firstCall,  a(2) =[1.57647277946204e-03];  end;
if firstCall,  a(3) =[-9.66195963140306e-05];  end;
if firstCall,  a(4) =[1.35916080268815e-07];  end;
if firstCall,  a(5) =[2.98157342654859e-07];  end;
if firstCall,  a(6) =[-1.86824767559979e-08];  end;
if firstCall,  a(7) =[-1.03685737667141e-09];  end;
if firstCall,  a(8) =[3.28660818434328e-10];  end;
if firstCall, a(9) =[-2.57091410632780e-11];  end;
if firstCall,  a(10) =[-2.32357655300677e-12];  end;
if firstCall,  a(11) =[9.57523279048255e-13];  end;
if firstCall,  a(12) =[-1.20340828049719e-13];  end;
if firstCall,  a(13) =[-2.90907716770715e-15];  end;
if firstCall,  a(14) =[4.55656454580149e-15];  end;
if firstCall, a(15)=[-9.99003874810259e-16];  end;
if firstCall,   b(1) =[2.78593552803079e-01];  end;
if firstCall,  b(2) =[-3.52915691882584e-03];  end;
if firstCall,  b(3) =[-2.31149677384994e-05];  end;
if firstCall,  b(4) =[4.71317842263560e-06];  end;
if firstCall,  b(5) =[-1.12415907931333e-07];  end;
if firstCall,  b(6) =[-2.00100301184339e-08];  end;
if firstCall,  b(7) =[2.60948075302193e-09];  end;
if firstCall,  b(8) =[-3.55098136101216e-11];  end;
if firstCall, b(9) =[-3.50849978423875e-11];  end;
if firstCall,  b(10) =[5.83007187954202e-12];  end;
if firstCall,  b(11) =[-2.04644828753326e-13];  end;
if firstCall,  b(12) =[-1.10529179476742e-13];  end;
if firstCall,  b(13) =[2.87724778038775e-14];  end;
if firstCall,  b(14) =[-2.88205111009939e-15];  end;
if firstCall, b(15)=[-3.32656311696166e-16];  end;
if firstCall,   n1d =[14];  end;
if firstCall,  n2d =[24];  end;
if firstCall,  n3d =[19];  end;
if firstCall,  n4d=[15];  end;
if firstCall,   m1d =[12];  end;
if firstCall,  m2d =[22];  end;
if firstCall,  m3d =[17];  end;
if firstCall,  m4d=[13];  end;
if firstCall,   dak1(1) =[2.04567842307887e-01];  end;
if firstCall,  dak1(2) =[-6.61322739905664e-02];  end;
if firstCall,  dak1(3) =[-8.49845800989287e-03];  end;
if firstCall,  dak1(4) =[3.12183491556289e-03];  end;
if firstCall,  dak1(5) =[-2.70016489829432e-04];  end;
if firstCall,  dak1(6) =[-6.35636298679387e-06];  end;
if firstCall, dak1(7) =[3.02397712409509e-06];  end;
if firstCall,  dak1(8) =[-2.18311195330088e-07];  end;
if firstCall,  dak1(9) =[-5.36194289332826e-10];  end;
if firstCall,  dak1(10) =[1.13098035622310e-09];  end;
if firstCall,  dak1(11) =[-7.43023834629073e-11];  end;
if firstCall,  dak1(12)=[4.28804170826891e-13];  end;
if firstCall,  dak1(13) =[2.23810925754539e-13];  end;
if firstCall,  dak1(14)=[-1.39140135641182e-14];  end;
if firstCall,   dak2(1) =[2.93332343883230e-01];  end;
if firstCall,  dak2(2) =[-8.06196784743112e-03];  end;
if firstCall,  dak2(3) =[2.42540172333140e-03];  end;
if firstCall,  dak2(4) =[-6.82297548850235e-04];  end;
if firstCall,  dak2(5) =[1.85786427751181e-04];  end;
if firstCall,  dak2(6) =[-4.97457447684059e-05];  end;
if firstCall, dak2(7) =[1.32090681239497e-05];  end;
if firstCall,  dak2(8) =[-3.49528240444943e-06];  end;
if firstCall,  dak2(9) =[9.24362451078835e-07];  end;
if firstCall,  dak2(10) =[-2.44732671521867e-07];  end;
if firstCall,  dak2(11) =[6.49307837648910e-08];  end;
if firstCall,  dak2(12)=[-1.72717621501538e-08];  end;
if firstCall,  dak2(13) =[4.60725763604656e-09];  end;
if firstCall,  dak2(14) =[-1.23249055291550e-09];  end;
if firstCall,  dak2(15) =[3.30620409488102e-10];  end;
if firstCall,  dak2(16) =[-8.89252099772401e-11];  end;
if firstCall,  dak2(17) =[2.39773319878298e-11];  end;
if firstCall, dak2(18) =[-6.48013921153450e-12];  end;
if firstCall,  dak2(19) =[1.75510132023731e-12];  end;
if firstCall,  dak2(20) =[-4.76303829833637e-13];  end;
if firstCall,  dak2(21) =[1.29498241100810e-13];  end;
if firstCall,  dak2(22) =[-3.52679622210430e-14];  end;
if firstCall, dak2(23) =[9.62005151585923e-15];  end;
if firstCall,  dak2(24)=[-2.62786914342292e-15];  end;
if firstCall,   dak3(1) =[2.84675828811349e-01];  end;
if firstCall,  dak3(2) =[2.53073072619080e-03];  end;
if firstCall,  dak3(3) =[-4.83481130337976e-05];  end;
if firstCall,  dak3(4) =[1.84907283946343e-06];  end;
if firstCall,  dak3(5) =[-1.01418491178576e-07];  end;
if firstCall,  dak3(6) =[7.05925634457153e-09];  end;
if firstCall, dak3(7) =[-5.85325291400382e-10];  end;
if firstCall,  dak3(8) =[5.56357688831339e-11];  end;
if firstCall,  dak3(9) =[-5.90889094779500e-12];  end;
if firstCall,  dak3(10) =[6.88574353784436e-13];  end;
if firstCall,  dak3(11) =[-8.68588256452194e-14];  end;
if firstCall,  dak3(12)=[1.17374762617213e-14];  end;
if firstCall,  dak3(13) =[-1.68523146510923e-15];  end;
if firstCall,  dak3(14)=[2.55374773097056e-16];  end;
if firstCall,   dajp(1) =[6.53219131311457e-02];  end;
if firstCall,  dajp(2) =[-1.20262933688823e-01];  end;
if firstCall,  dajp(3) =[9.78010236263823e-03];  end;
if firstCall,  dajp(4) =[1.67948429230505e-02];  end;
if firstCall,  dajp(5) =[-1.97146140182132e-03];  end;
if firstCall,  dajp(6) =[-8.45560295098867e-04];  end;
if firstCall, dajp(7) =[9.42889620701976e-05];  end;
if firstCall,  dajp(8) =[2.25827860945475e-05];  end;
if firstCall,  dajp(9) =[-2.29067870915987e-06];  end;
if firstCall,  dajp(10) =[-3.76343991136919e-07];  end;
if firstCall,  dajp(11) =[3.45663933559565e-08];  end;
if firstCall,  dajp(12)=[4.29611332003007e-09];  end;
if firstCall,  dajp(13) =[-3.58673691214989e-10];  end;
if firstCall,  dajp(14) =[-3.57245881361895e-11];  end;
if firstCall,  dajp(15) =[2.72696091066336e-12];  end;
if firstCall,  dajp(16) =[2.26120653095771e-13];  end;
if firstCall,  dajp(17) =[-1.58763205238303e-14];  end;
if firstCall, dajp(18) =[-1.12604374485125e-15];  end;
if firstCall,  dajp(19)=[7.31327529515367e-17];  end;
if firstCall,   dajn(1) =[1.08594539632967e-02];  end;
if firstCall,  dajn(2) =[8.53313194857091e-02];  end;
if firstCall,  dajn(3) =[-3.15277068113058e-01];  end;
if firstCall,  dajn(4) =[-8.78420725294257e-02];  end;
if firstCall,  dajn(5) =[5.53251906976048e-02];  end;
if firstCall,  dajn(6) =[9.41674060503241e-03];  end;
if firstCall, dajn(7) =[-3.32187026018996e-03];  end;
if firstCall,  dajn(8) =[-4.11157343156826e-04];  end;
if firstCall,  dajn(9) =[1.01297326891346e-04];  end;
if firstCall,  dajn(10) =[9.87633682208396e-06];  end;
if firstCall,  dajn(11) =[-1.87312969812393e-06];  end;
if firstCall,  dajn(12)=[-1.50798500131468e-07];  end;
if firstCall,  dajn(13) =[2.32687669525394e-08];  end;
if firstCall,  dajn(14) =[1.59599917419225e-09];  end;
if firstCall,  dajn(15) =[-2.07665922668385e-10];  end;
if firstCall,  dajn(16) =[-1.24103350500302e-11];  end;
if firstCall,  dajn(17) =[1.39631765331043e-12];  end;
if firstCall, dajn(18) =[7.39400971155740e-14];  end;
if firstCall,  dajn(19)=[-7.32887475627500e-15];  end;
if firstCall,   da(1) =[4.91627321104601e-01];  end;
if firstCall,  da(2) =[3.11164930427489e-03];  end;
if firstCall,  da(3) =[8.23140762854081e-05];  end;
if firstCall,  da(4) =[-4.61769776172142e-06];  end;
if firstCall,  da(5) =[-6.13158880534626e-08];  end;
if firstCall,  da(6) =[2.87295804656520e-08];  end;
if firstCall,  da(7) =[-1.81959715372117e-09];  end;
if firstCall, da(8) =[-1.44752826642035e-10];  end;
if firstCall,  da(9) =[4.53724043420422e-11];  end;
if firstCall,  da(10) =[-3.99655065847223e-12];  end;
if firstCall,  da(11) =[-3.24089119830323e-13];  end;
if firstCall,  da(12) =[1.62098952568741e-13];  end;
if firstCall,  da(13) =[-2.40765247974057e-14];  end;
if firstCall,  da(14) =[1.69384811284491e-16];  end;
if firstCall, da(15)=[8.17900786477396e-16];  end;
if firstCall,   db(1) =[-2.77571356944231e-01];  end;
if firstCall,  db(2) =[4.44212833419920e-03];  end;
if firstCall,  db(3) =[-8.42328522190089e-05];  end;
if firstCall,  db(4) =[-2.58040318418710e-06];  end;
if firstCall,  db(5) =[3.42389720217621e-07];  end;
if firstCall,  db(6) =[-6.24286894709776e-09];  end;
if firstCall,  db(7) =[-2.36377836844577e-09];  end;
if firstCall, db(8) =[3.16991042656673e-10];  end;
if firstCall,  db(9) =[-4.40995691658191e-12];  end;
if firstCall,  db(10) =[-5.18674221093575e-12];  end;
if firstCall,  db(11) =[9.64874015137022e-13];  end;
if firstCall,  db(12) =[-4.90190576608710e-14];  end;
if firstCall,  db(13) =[-1.77253430678112e-14];  end;
if firstCall,  db(14) =[5.55950610442662e-15];  end;
if firstCall, db(15)=[-7.11793337579530e-16];  end;
firstCall=0;
%***FIRST EXECUTABLE STATEMENT  JAIRY
if( x<0.0e0 )
%
if( c>5.0e0 )
%
t = 10.0e0./c - 1.0e0;
tt = t + t;
j = fix(n4);
f1 = a(j);
e1 = b(j);
f2 = 0.0e0;
e2 = 0.0e0;
for i = 1 : m4;
j = fix(j - 1);
temp1 = f1;
temp2 = e1;
f1 = tt.*f1 - f2 + a(j);
e1 = tt.*e1 - e2 + b(j);
f2 = temp1;
e2 = temp2;
end; i = fix(m4+1);
temp1 = t.*f1 - f2 + a(1);
temp2 = t.*e1 - e2 + b(1);
rtrx = sqrt(rx);
cv = c - fpi12;
ccv = cos(cv);
scv = sin(cv);
ai =(temp1.*ccv-temp2.*scv)./rtrx;
j = fix(n4d);
f1 = da(j);
e1 = db(j);
f2 = 0.0e0;
e2 = 0.0e0;
for i = 1 : m4d;
j = fix(j - 1);
temp1 = f1;
temp2 = e1;
f1 = tt.*f1 - f2 + da(j);
e1 = tt.*e1 - e2 + db(j);
f2 = temp1;
e2 = temp2;
end; i = fix(m4d+1);
temp1 = t.*f1 - f2 + da(1);
temp2 = t.*e1 - e2 + db(1);
e1 = ccv.*con5 + 0.5e0.*scv;
e2 = scv.*con5 - 0.5e0.*ccv;
dai =(temp1.*e1-temp2.*e2).*rtrx;
else;
t = 0.4e0.*c - 1.0e0;
tt = t + t;
j = fix(n3);
f1 = ajp(j);
e1 = ajn(j);
f2 = 0.0e0;
e2 = 0.0e0;
for i = 1 : m3;
j = fix(j - 1);
temp1 = f1;
temp2 = e1;
f1 = tt.*f1 - f2 + ajp(j);
e1 = tt.*e1 - e2 + ajn(j);
f2 = temp1;
e2 = temp2;
end; i = fix(m3+1);
ai =(t.*e1-e2+ajn(1)) - x.*(t.*f1-f2+ajp(1));
j = fix(n3d);
f1 = dajp(j);
e1 = dajn(j);
f2 = 0.0e0;
e2 = 0.0e0;
for i = 1 : m3d;
j = fix(j - 1);
temp1 = f1;
temp2 = e1;
f1 = tt.*f1 - f2 + dajp(j);
e1 = tt.*e1 - e2 + dajn(j);
f2 = temp1;
e2 = temp2;
end; i = fix(m3d+1);
dai = x.*x.*(t.*f1-f2+dajp(1)) +(t.*e1-e2+dajn(1));
return;
end;
elseif( c>5.0e0 ) ;
%
t = 10.0e0./c - 1.0e0;
tt = t + t;
j = fix(n1);
f1 = ak3(j);
f2 = 0.0e0;
for i = 1 : m1;
j = fix(j - 1);
temp1 = f1;
f1 = tt.*f1 - f2 + ak3(j);
f2 = temp1;
end; i = fix(m1+1);
rtrx = sqrt(rx);
ec = exp(-c);
ai = ec.*(t.*f1-f2+ak3(1))./rtrx;
j = fix(n1d);
f1 = dak3(j);
f2 = 0.0e0;
for i = 1 : m1d;
j = fix(j - 1);
temp1 = f1;
f1 = tt.*f1 - f2 + dak3(j);
f2 = temp1;
end; i = fix(m1d+1);
dai = -rtrx.*ec.*(t.*f1-f2+dak3(1));
return;
elseif( x>1.20e0 ) ;
%
t =(x+x-con2).*con3;
tt = t + t;
j = fix(n2);
f1 = ak2(j);
f2 = 0.0e0;
for i = 1 : m2;
j = fix(j - 1);
temp1 = f1;
f1 = tt.*f1 - f2 + ak2(j);
f2 = temp1;
end; i = fix(m2+1);
rtrx = sqrt(rx);
ec = exp(-c);
ai = ec.*(t.*f1-f2+ak2(1))./rtrx;
j = fix(n2d);
f1 = dak2(j);
f2 = 0.0e0;
for i = 1 : m2d;
j = fix(j - 1);
temp1 = f1;
f1 = tt.*f1 - f2 + dak2(j);
f2 = temp1;
end; i = fix(m2d+1);
dai = -ec.*(t.*f1-f2+dak2(1)).*rtrx;
return;
else;
t =(x+x-1.2e0).*con4;
tt = t + t;
j = fix(n1);
f1 = ak1(j);
f2 = 0.0e0;
for i = 1 : m1;
j = fix(j - 1);
temp1 = f1;
f1 = tt.*f1 - f2 + ak1(j);
f2 = temp1;
end; i = fix(m1+1);
ai = t.*f1 - f2 + ak1(1);
%
j = fix(n1d);
f1 = dak1(j);
f2 = 0.0e0;
for i = 1 : m1d;
j = fix(j - 1);
temp1 = f1;
f1 = tt.*f1 - f2 + dak1(j);
f2 = temp1;
end; i = fix(m1d+1);
dai = -(t.*f1-f2+dak1(1));
return;
end;
end
%DECK LA05AD

Contact us at files@mathworks.com