/* Ported to GNU C openVMS/Alpha by Klaus Kämpf, kkaempf@progis.de */ /* * * Math run-time library routines. */ #ifndef _MTH$ROUTINES_H #define _MTH$ROUTINES_H # ifdef __cplusplus extern "C" { # endif /* MTH$ACOS,MTH$DACOS,MTH$GACOS -- arc cosine of angle in radians */ #define mth$acos MTH$ACOS float mth$acos(); #define mth$dacos MTH$DACOS double mth$dacos(); #define mth$gacos MTH$GACOS double mth$gacos(); /* MTH$ACOSD,MTH$DACOSD,MTH$GACOSD -- arc cosine of angle in degrees */ #define mth$acosd MTH$ACOSD float mth$acosd(); #define mth$dacosd MTH$DACOSD double mth$dacosd(); #define mth$gacosd MTH$GACOSD double mth$gacosd(); /* MTH$ASIN,MTH$DASIN,MTH$GASIN -- arc sine in radians */ #define mth$asin MTH$ASIN float mth$asin(); #define mth$dasin MTH$DASIN double mth$dasin(); #define mth$gasin MTH$GASIN double mth$gasin(); /* MTH$ASIND,MTH$DASIND,MTH$GASIND -- arc sine in degrees */ #define mth$asind MTH$ASIND float mth$asind(); #define mth$dasind MTH$DASIND double mth$dasind(); #define mth$gasind MTH$GASIND double mth$gasind(); /* MTH$ATAN,MTH$DATAN,MTH$GATAN -- arc tangent in radians */ #define mth$atan MTH$ATAN float mth$atan(); #define mth$datan MTH$DATAN double mth$datan(); #define mth$gatan MTH$GATAN double mth$gatan(); /* MTH$ATAN2,MTH$DATAN2,MTH$GATAN2 -- arc tangent in radians with two arguments */ #define mth$atan2 MTH$ATAN2 float mth$atan2(); #define mth$datan2 MTH$DATAN2 double mth$datan2(); #define mth$gatan2 MTH$GATAN2 double mth$gatan2(); /* MTH$ATAND,MTH$DATAND,MTH$GATAND -- arc tangent in degrees */ #define mth$atand MTH$ATAND float mth$atand(); #define mth$datand MTH$DATAND double mth$datand(); #define mth$gatand MTH$GATAND double mth$gatand(); /* MTH$ATANH,MTH$DATANH,MTH$GATANH -- hyperbolic arc tangent */ #define mth$atanh MTH$ATANH float mth$atanh(); #define mth$datanh MTH$DATANH double mth$datanh(); #define mth$gatanh MTH$GATANH double mth$gatanh(); /* MTH$ATAND2,MTH$DATAND2,MTH$GATAND2 -- arc tangent in degrees with two arguments */ #define mth$atand2 MTH$ATAND2 float mth$atand2(); #define mth$datand2 MTH$DATAND2 double mth$datand2(); #define mth$gatand2 MTH$GATAND2 double mth$gatand2(); /* obtain the index of the first element of a vector having the largest absolute value */ /* BLAS1$VISAMAX,BLAS1$VIDAMAX,BLAS1$VIGAMAX,BLAS1$VICAMAX,BLAS1$VIZAMAX,BLAS1$VIWAMAX */ #define blas1$visamax BLAS1$VISAMAX long blas1$visamax(); #define blas1$vidamax BLAS1$VIDAMAX long blas1$vidamax(); #define blas1$vigamax BLAS1$VIGAMAX long blas1$vigamax(); #define blas1$vicamax BLAS1$VICAMAX long blas1$vicamax(); #define blas1$vizamax BLAS1$VIZAMAX long blas1$vizamax(); #define blas1$viwamax BLAS1$VIWAMAX long blas1$viwamax(); /* obtain the sum of the absolute values of the elements of a vector */ /* BLAS1$VSASUM,BLAS1$VDASUM,BLAS1$VGASUM,BLAS1$VSCASUM,BLAS1$VDZASUM,BLAS1$VGWASUM */ #define blas1$vsasum BLAS1$VSASUM float blas1$vsasum(); #define blas1$vdasum BLAS1$VDASUM double blas1$vdasum(); #define blas1$vgasum BLAS1$VGASUM double blas1$vgasum(); /*- mumble blas1$vscasum(), blas1$vdzasum(), blas1$vgwasum(); */ /* multiply a vector by a scalar and add a vector */ /* BLAS1$VSAXPY,BLAS1$VDAXPY,BLAS1$VGAXPY,BLAS1$VCAXPY,BLAS1$VZAXPY,BLAS1$VWAXPY */ #define blas1$vsaxpy BLAS1$VSAXPY int blas1$vsaxpy(); #define blas1$vdaxpy BLAS1$VDAXPY int blas1$vdaxpy(); #define blas1$vgaxpy BLAS1$VGAXPY int blas1$vgaxpy(); #define blas1$vcaxpy BLAS1$VCAXPY int blas1$vcaxpy(); #define blas1$vzaxpy BLAS1$VZAXPY int blas1$vzaxpy(); #define blas1$vwaxpy BLAS1$VWAXPY int blas1$vwaxpy(); /* copy a vector */ /* BLAS1$VSCOPY,BLAS1$VDCOPY,BLAS1$VCCOPY,BLAS1$VZCOPY */ #define blas1$vscopy BLAS1$VSCOPY int blas1$vscopy(); #define blas1$vdcopy BLAS1$VDCOPY int blas1$vdcopy(); #define blas1$vccopy BLAS1$VCCOPY int blas1$vccopy(); #define blas1$vzcopy BLAS1$VZCOPY int blas1$vzcopy(); /* obtain the inner product of two vectors */ /* BLAS1$VSDOT,BLAS1$VDDOT,BLAS1$VGDOT,BLAS1$VCDOTU,BLAS1$VCDOTC */ /* BLAS1$VZDOTU -- Obtain the Inner Product of Two Vectors */ /* BLAS1$VZDOTC -- Obtain the Inner Product of Two Vectors */ /* BLAS1$VWDOTU -- Obtain the Inner Product of Two Vectors */ /* BLAS1$VWDOTC -- Obtain the Inner Product of Two Vectors */ #define blas1$vsdot BLAS1$VSDOT float blas1$vsdot(); #define blas1$vddot BLAS1$VDDOT double blas1$vddot(); #define blas1$vgdot BLAS1$VGDOT double blas1$vgdot(); /*- mumble blas1$vcdotu(), blas1$vcdotc(), blas1$vzdotu(), blas1$vzdotc(); */ /*- mumble blas1$vwdotu(), blas1$vwdotc(); */ /* obtain the euclidean norm of a vector */ /* BLAS1$VSNRM2,BLAS1$VDNRM2,BLAS1$VGNRM2,BLAS1$VSCNRM2,BLAS1$VDZNRM2,BLAS1$VGWNRM2 */ #define blas1$vsnrm2 BLAS1$VSNRM2 float blas1$vsnrm2(); #define blas1$vdnrm2 BLAS1$VDNRM2 double blas1$vdnrm2(); #define blas1$vgnrm2 BLAS1$VGNRM2 double blas1$vgnrm2(); /*- mumble blas1$vscnrm2(), blas1$vdznrm2(), blas1$vgwnrm2(); */ /* apply a givens plane rotation */ /* BLAS1$VSROT,BLAS1$VDROT,BLAS1$VGROT,BLAS1$VCSROT,BLAS1$VZDROT,BLAS1$VWGROT */ #define blas1$vsrot BLAS1$VSROT int blas1$vsrot() #define blas1$vdrot BLAS1$VDROT int blas1$vdrot() #define blas1$vgrot BLAS1$VGROT int blas1$vgrot(), #define blas1$vcsrot BLAS1$VCSROT int blas1$vcsrot() #define blas1$vzdrot BLAS1$VZDROT int blas1$vzdrot() #define blas1$vwgrot BLAS1$VWGROT int blas1$vwgrot(); /* generate the elements for a givens plane rotation */ /* BLAS1$VSROTG,BLAS1$VDROTG,BLAS1$VGROTG,BLAS1$VCROTG,BLAS1$VZROTG,BLAS1$VWROTG */ #define blas1$vsrotg BLAS1$VSROTG int blas1$vsrotg(); #define blas1$vdrotg BLAS1$VDROTG int blas1$vdrotg(); #define blas1$vgrotg BLAS1$VGROTG int blas1$vgrotg(); #define blas1$vcrotg BLAS1$VCROTG int blas1$vcrotg(); #define blas1$vzrotg BLAS1$VZROTG int blas1$vzrotg(); #define blas1$vwrotg BLAS1$VWROTG int blas1$vwrotg(); /* scale the elements of a vector */ /* BLAS1$VSSCAL,BLAS1$VDSCAL,BLAS1$VGSCAL,BLAS1$VCSCAL,BLAS1$VCSSCAL */ /* BLAS1$VZSCAL,BLAS1$VWSCAL,BLAS1$VZDSCAL,BLAS1$VWGSCAL */ #define blas1$vsscal BLAS1$VSSCAL int blas1$vsscal(); #define blas1$vdscal BLAS1$VDSCAL int blas1$vdscal(); #define blas1$vgscal BLAS1$VGSCAL int blas1$vgscal(); #define blas1$vcscal BLAS1$VCSCAL int blas1$vcscal(); #define blas1$vcsscal BLAS1$VCSSCAL int blas1$vcsscal(); #define blas1$vzscal BLAS1$VZSCAL int blas1$vzscal(); #define blas1$vwscal BLAS1$VWSCAL int blas1$vwscal(); #define blas1$vzdscal BLAS1$VZDSCAL int blas1$vzdscal(); #define blas1$vwgscal BLAS1$VWGSCAL int blas1$vwgscal(); /* swap the elements of two vectors */ /* BLAS1$VSSWAP,BLAS1$VDSWAP,BLAS1$VCSWAP,BLAS1$VZSWAP */ #define blas1$vsswap BLAS1$VSSWAP int blas1$vsswap(); #define blas1$vdswap BLAS1$VDSWAP int blas1$vdswap(); #define blas1$vcswap BLAS1$VCSWAP int blas1$vcswap(); #define blas1$vzswap BLAS1$VZSWAP int blas1$vzswap(); /* MTH$CABS,MTH$CDABS,MTH$CGABS -- complex absolute value */ #define mth$cabs MTH$CABS float mth$cabs(); #define mth$cdabs MTH$CDABS double mth$cdabs(); #define mth$cgabs MTH$CGABS double mth$cgabs(); /* MTH$CCOS -- cosine of a complex number (F-floating value) */ /*- complex float mth$ccos(); */ /* MTH$CEXP -- complex exponential (F-floating value) */ /*- complex float mth$cexp(); */ /* MTH$CLOG -- complex natural logarithm (F-floating value) */ /*- complex float mth$clog(); */ /* MTH$CMPLX,MTH$DCMPLX,MTH$GCMPLX -- complex number made floating point */ /*- complex float mth$cmplx(); */ /*- double complex mth$dcmplx(), mth$gcmplx(); */ /* MTH$CONJG,MTH$DCONJG,MTH$GCONJG -- conjugate of a complex number */ /*- complex float mth$conjg(); */ /*- double complex mth$dconjg(), mth$gconjg(); */ /* MTH$COS,MTH$DCOS,MTH$GCOS -- cosine of angle in radians */ #define mth$cos MTH$COS float mth$cos(); #define mth$dcos MTH$DCOS double mth$dcos(); #define mth$gcos MTH$GCOS double mth$gcos(); /* MTH$COSD,MTH$DCOSD,MTH$GCOSD -- cosine of angle in degrees */ #define mth$cosd MTH$COSD float mth$cosd(); #define mth$dcosd MTH$DCOSD double mth$dcosd(); #define mth$gcosd MTH$GCOSD double mth$gcosd(); /* MTH$COSH,MTH$DCOSH,MTH$GCOSH -- hyperbolic cosine */ #define mth$cosh MTH$COSH float mth$cosh(); #define mth$dcosh MTH$DCOSH double mth$dcosh(); #define mth$gcosh MTH$GCOSH double mth$gcosh(); /* MTH$CSIN -- sine of a complex number (F-floating value) */ /*- complex float mth$csin(); */ /* MTH$CSQRT -- complex square root (F-floating value) */ /*- complex float mth$csqrt(); */ /* MTH$CVT_D_G,MTH$CVT_G_D -- convert one double-precision value */ #define mth$cvt_d_g MTH$CVT_D_G double mth$cvt_d_g(); #define mth$cvt_g_d MTH$CVT_G_D double mth$cvt_g_d(); /* MTH$CVT_DA_GA,MTH$CVT_GA_DA -- convert an array of double-precision values */ #define mth$cvt_da_ga MTH$CVT_DA_GA double *mth$cvt_da_ga(); #define mth$cvt_ga_da MTH$CVT_GA_DA double *mth$cvt_ga_da(); /* MTH$CDCOS,MTH$CGCOS -- cosine of a complex number */ /*- double complex mth$cdcos(), mth$cgcos(); */ /* MTH$CDEXP,MTH$CGEXP -- complex exponential */ /*- double complex mth$cdexp(), mth$cgexp(); */ /* MTH$CDLOG,MTH$CGLOG -- complex natural logarithm */ /*- double complex mth$cdlog(), mth$cglog(); */ /* MTH$CDSIN,MTH$CGSIN -- sine of complex number */ /*- double complex mth$cdsin(), mth$cgsin(); */ /* MTH$CDSQRT,MTH$CGSQRT -- complex square root */ /*- double complex mth$cdsqrt(), mth$cgsqrt(); */ /* MTH$EXP -- exponential */ #define mth$exp MTH$EXP float mth$exp(); /* MTH$DEXP -- exponential */ #define mth$dexp MTH$DEXP double mth$dexp(); /* MTH$GEXP -- exponential */ #define mth$gexp MTH$GEXP double mth$gexp(); /* MTH$VJFOLRLP_MA_V5 -- first order linear recurrence --- multiplication and addition --- last value */ #define mth$vjfolrlp_ma_v5 MTH$VJFOLRLP_MA_V5 long mth$vjfolrlp_ma_v5(); /* MTH$VFFOLRLP_MA_V5 -- First Order Linear Recurrence --- Multiplication and Addition --- Last Value */ #define mth$vffolrlp_ma_v5 MTH$VFFOLRLP_MA_V5 float mth$vffolrlp_ma_v5(); /* MTH$VDFOLRLP_MA_V5 -- First Order Linear Recurrence --- Multiplication and Addition --- Last Value */ #define mth$vdfolrlp_ma_v5 MTH$VDFOLRLP_MA_V5 double mth$vdfolrlp_ma_v5(); /* MTH$VGFOLRLP_MA_V5 -- First Order Linear Recurrence --- Multiplication and Addition --- Last Value */ #define mth$vgfolrlp_ma_v5 MTH$VGFOLRLP_MA_V5 double mth$vgfolrlp_ma_v5(); /* MTH$VJFOLRLN_MA_V5 -- First Order Linear Recurrence --- Multiplication and Addition --- Last Value */ #define mth$vjfolrln_ma_v5 MTH$VJFOLRLN_MA_V5 long mth$vjfolrln_ma_v5(); /* MTH$VFFOLRLN_MA_V5 -- First Order Linear Recurrence --- Multiplication and Addition --- Last Value */ #define mth$vffolrln_ma_v5 MTH$VFFOLRLN_MA_V5 float mth$vffolrln_ma_v5(); /* MTH$VDFOLRLN_MA_V5 -- First Order Linear Recurrence --- Multiplication and Addition --- Last Value */ #define mth$vdfolrln_ma_v5 MTH$VDFOLRLN_MA_V5 double mth$vdfolrln_ma_v5(); /* MTH$VGFOLRLN_MA_V5 -- First Order Linear Recurrence --- Multiplication and Addition --- Last Value */ #define mth$vgfolrln_ma_v5 MTH$VGFOLRLN_MA_V5 double mth$vgfolrln_ma_v5(); /* MTH$VJFOLRLP_M_V2 -- First Order Linear Recurrence --- Multiplication or Addition --- Last Value */ #define mth$vjfolrlp_m_v2 MTH$VJFOLRLP_M_V2 long mth$vjfolrlp_m_v2(); /* MTH$VFFOLRLP_M_V2 -- First Order Linear Recurrence --- Multiplication or Addition --- Last Value */ #define mth$vffolrlp_m_v2 MTH$VFFOLRLP_M_V2 float mth$vffolrlp_m_v2(); /* MTH$VDFOLRLP_M_V2 -- First Order Linear Recurrence --- Multiplication or Addition --- Last Value */ #define mth$vdfolrlp_m_v2 MTH$VDFOLRLP_M_V2 double mth$vdfolrlp_m_v2(); /* MTH$VGFOLRLP_M_V2 -- First Order Linear Recurrence --- Multiplication or Addition --- Last Value */ #define mth$vgfolrlp_m_v2 MTH$VGFOLRLP_M_V2 double mth$vgfolrlp_m_v2(); /* MTH$VJFOLRLN_M_V2 -- First Order Linear Recurrence --- Multiplication or Addition --- Last Value */ #define mth$vjfolrln_m_v2 MTH$VJFOLRLN_M_V2 long mth$vjfolrln_m_v2(); /* MTH$VFFOLRLN_M_V2 -- First Order Linear Recurrence --- Multiplication or Addition --- Last Value */ #define mth$vffolrln_m_v2 MTH$VFFOLRLN_M_V2 float mth$vffolrln_m_v2(); /* MTH$VDFOLRLN_M_V2 -- First Order Linear Recurrence --- Multiplication or Addition --- Last Value */ #define mth$vdfolrln_m_v2 MTH$VDFOLRLN_M_V2 double mth$vdfolrln_m_v2(); /* MTH$VGFOLRLN_M_V2 -- First Order Linear Recurrence --- Multiplication or Addition --- Last Value */ #define mth$vgfolrln_m_v2 MTH$VGFOLRLN_M_V2 double mth$vgfolrln_m_v2(); /* MTH$VJFOLRLP_A_V2 -- First Order Linear Recurrence --- Multiplication or Addition --- Last Value */ #define mth$vjfolrlp_a_v2 MTH$VJFOLRLP_A_V2 long mth$vjfolrlp_a_v2(); /* MTH$VFFOLRLP_A_V2 -- First Order Linear Recurrence --- Multiplication or Addition --- Last Value */ #define mth$vffolrlp_a_v2 MTH$VFFOLRLP_A_V2 float mth$vffolrlp_a_v2(); /* MTH$VDFOLRLP_A_V2 -- First Order Linear Recurrence --- Multiplication or Addition --- Last Value */ #define mth$vdfolrlp_a_v2 MTH$VDFOLRLP_A_V2 double mth$vdfolrlp_a_v2(); /* MTH$VGFOLRLP_A_V2 -- First Order Linear Recurrence --- Multiplication or Addition --- Last Value */ #define mth$vgfolrlp_a_v2 MTH$VGFOLRLP_A_V2 double mth$vgfolrlp_a_v2(); /* MTH$VJFOLRLN_A_V2 -- First Order Linear Recurrence --- Multiplication or Addition --- Last Value */ #define mth$vjfolrln_a_v2 MTH$VJFOLRLN_A_V2 long mth$vjfolrln_a_v2(); /* MTH$VFFOLRLN_A_V2 -- First Order Linear Recurrence --- Multiplication or Addition --- Last Value */ #define mth$vffolrln_a_v2 MTH$VFFOLRLN_A_V2 float mth$vffolrln_a_v2(); /* MTH$VDFOLRLN_A_V2 -- First Order Linear Recurrence --- Multiplication or Addition --- Last Value */ #define mth$vdfolrln_a_v2 MTH$VDFOLRLN_A_V2 double mth$vdfolrln_a_v2(); /* MTH$VGFOLRLN_A_V2 -- First Order Linear Recurrence --- Multiplication or Addition --- Last Value */ #define mth$vgfolrln_a_v2 MTH$VGFOLRLN_A_V2 double mth$vgfolrln_a_v2(); /* MTH$VJFOLRP_MA_V15 -- First Order Linear Recurrence --- Multiplication and Addition */ #define mth$vjfolrp_ma_v15 MTH$VJFOLRP_MA_V15 int mth$vjfolrp_ma_v15(); /* MTH$VFFOLRP_MA_V15 -- First Order Linear Recurrence --- Multiplication and Addition */ #define mth$vffolrp_ma_v15 MTH$VFFOLRP_MA_V15 int mth$vffolrp_ma_v15(); /* MTH$VDFOLRP_MA_V15 -- First Order Linear Recurrence --- Multiplication and Addition */ #define mth$vdfolrp_ma_v15 MTH$VDFOLRP_MA_V15 int mth$vdfolrp_ma_v15(); /* MTH$VGFOLRP_MA_V15 -- First Order Linear Recurrence --- Multiplication and Addition */ #define mth$vgfolrp_ma_v15 MTH$VGFOLRP_MA_V15 int mth$vgfolrp_ma_v15(); /* MTH$VJFOLRN_MA_V15 -- First Order Linear Recurrence --- Multiplication and Addition */ #define mth$vjfolrn_ma_v15 MTH$VJFOLRN_MA_V15 int mth$vjfolrn_ma_v15(); /* MTH$VFFOLRN_MA_V15 -- First Order Linear Recurrence --- Multiplication and Addition */ #define mth$vffolrn_ma_v15 MTH$VFFOLRN_MA_V15 int mth$vffolrn_ma_v15(); /* MTH$VDFOLRN_MA_V15 -- First Order Linear Recurrence --- Multiplication and Addition */ #define mth$vdfolrn_ma_v15 MTH$VDFOLRN_MA_V15 int mth$vdfolrn_ma_v15(); /* MTH$VGFOLRN_MA_V15 -- First Order Linear Recurrence --- Multiplication and Addition */ #define mth$vgfolrn_ma_v15 MTH$VGFOLRN_MA_V15 int mth$vgfolrn_ma_v15(); /* MTH$VJFOLRP_M_V8 -- First Order Linear Recurrence --- Multiplication or Addition */ #define mth$vjfolrp_m_v8 MTH$VJFOLRP_M_V8 int mth$vjfolrp_m_v8(); /* MTH$VFFOLRP_M_V8 -- First Order Linear Recurrence --- Multiplication or Addition */ #define mth$vffolrp_m_v8 MTH$VFFOLRP_M_V8 int mth$vffolrp_m_v8(); /* MTH$VDFOLRP_M_V8 -- First Order Linear Recurrence --- Multiplication or Addition */ #define mth$vdfolrp_m_v8 MTH$VDFOLRP_M_V8 int mth$vdfolrp_m_v8(); /* MTH$VGFOLRP_M_V8 -- First Order Linear Recurrence --- Multiplication or Addition */ #define mth$vgfolrp_m_v8 MTH$VGFOLRP_M_V8 int mth$vgfolrp_m_v8(); /* MTH$VJFOLRN_M_V8 -- First Order Linear Recurrence --- Multiplication or Addition */ #define mth$vjfolrn_m_v8 MTH$VJFOLRN_M_V8 int mth$vjfolrn_m_v8(); /* MTH$VFFOLRN_M_V8 -- First Order Linear Recurrence --- Multiplication or Addition */ #define mth$vffolrn_m_v8 MTH$VFFOLRN_M_V8 int mth$vffolrn_m_v8() ; /* MTH$VDFOLRN_M_V8 -- First Order Linear Recurrence --- Multiplication or Addition */ #define mth$vdfolrn_m_v8 MTH$VDFOLRN_M_V8 int mth$vdfolrn_m_v8(); /* MTH$VGFOLRN_M_V8 -- First Order Linear Recurrence --- Multiplication or Addition */ #define mth$vgfolrn_m_v8 MTH$VGFOLRN_M_V8 int mth$vgfolrn_m_v8(); /* MTH$VJFOLRP_A_V8 -- First Order Linear Recurrence --- Multiplication or Addition */ #define mth$vjfolrp_a_v8 MTH$VJFOLRP_A_V8 int mth$vjfolrp_a_v8(); /* MTH$VFFOLRP_A_V8 -- First Order Linear Recurrence --- Multiplication or Addition */ #define mth$vffolrp_a_v8 MTH$VFFOLRP_A_V8 int mth$vffolrp_a_v8(); /* MTH$VDFOLRP_A_V8 -- First Order Linear Recurrence --- Multiplication or Addition */ #define mth$vdfolrp_a_v8 MTH$VDFOLRP_A_V8 int mth$vdfolrp_a_v8(); /* MTH$VGFOLRP_A_V8 -- First Order Linear Recurrence --- Multiplication or Addition */ #define mth$vgfolrp_a_v8 MTH$VGFOLRP_A_V8 int mth$vgfolrp_a_v8(); /* MTH$VJFOLRN_A_V8 -- First Order Linear Recurrence --- Multiplication or Addition */ #define mth$vjfolrn_a_v8 MTH$VJFOLRN_A_V8 int mth$vjfolrn_a_v8(); /* MTH$VFFOLRN_A_V8 -- First Order Linear Recurrence --- Multiplication or Addition */ #define mth$vffolrn_a_v8 MTH$VFFOLRN_A_V8 int mth$vffolrn_a_v8(); /* MTH$VDFOLRN_A_V8 -- First Order Linear Recurrence --- Multiplication or Addition */ #define mth$vdfolrn_a_v8 MTH$VDFOLRN_A_V8 int mth$vdfolrn_a_v8(); /* MTH$VGFOLRN_A_V8 -- First Order Linear Recurrence --- Multiplication or Addition */ #define mth$vgfolrn_a_v8 MTH$VGFOLRN_A_V8 int mth$vgfolrn_a_v8(); /* MTH$HACOS -- arc cosine of angle expressed in radians (H-floating value) */ #define mth$hacos MTH$HACOS int mth$hacos(); /* MTH$HACOSD -- arc cosine of angle expressed in degrees (H-floating value) */ #define mth$hacosd MTH$HACOSD int mth$hacosd(); /* MTH$HASIN -- arc sine in radians (H-floating value) */ #define mth$hasin MTH$HASIN int mth$hasin(); /* MTH$HASIND -- arc sine in degrees (H-floating value) */ #define mth$hasind MTH$HASIND int mth$hasind(); /* MTH$HATAN -- arc tangent in radians (H-floating value) */ #define mth$hatan MTH$HATAN int mth$hatan(); /* MTH$HATAN2 -- arc tangent in radians (H-floating value) with two arguments */ #define mth$hatan2 MTH$HATAN2 int mth$hatan2(); /* MTH$HATAND -- arc tangent in degrees (H-floating value) */ #define mth$hatand MTH$HATAND int mth$hatand(); /* MTH$HATANH -- hyperbolic arc tangent (H-floating value) */ #define mth$hatanh MTH$HATANH int mth$hatanh(); /* MTH$HCOS -- cosine of angle expressed in radians (H-floating value) */ #define mth$hcos MTH$HCOS int mth$hcos(); /* MTH$HCOSD -- cosine of angle expressed in degrees (H-floating value) */ #define mth$hcosd MTH$HCOSD int mth$hcosd(); /* MTH$HCOSH -- hyperbolic cosine (H-floating value) */ #define mth$hcosh MTH$HCOSH int mth$hcosh(); /* MTH$HEXP -- exponential (H-floating value) */ #define mth$hexp MTH$HEXP int mth$hexp(); /* MTH$HLOG10 -- common logarithm (H-floating value) */ #define mth$hlog10 MTH$HLOG10 int mth$hlog10(); /* MTH$HLOG -- natural logarithm (H-floating value) */ #define mth$hlog MTH$HLOG int mth$hlog(); /* MTH$HLOG2 -- base 2 logarithm (H-floating value) */ #define mth$hlog2 MTH$HLOG2 int mth$hlog2(); /* MTH$HSIN -- sine of angle expressed in radians (H-floating value) */ #define mth$hsin MTH$HSIN int mth$hsin(); /* MTH$HSIND -- sine of angle expressed in degrees (H-floating value) */ #define mth$hsind MTH$HSIND int mth$hsind(); /* MTH$HSINH -- hyperbolic sine (H-floating value) */ #define mth$hsinh MTH$HSINH int mth$hsinh(); /* MTH$HSQRT -- square root (H-floating value) */ #define mth$hsqrt MTH$HSQRT int mth$hsqrt(); /* MTH$HTAN -- tangent of angle expressed in radians (H-floating value) */ #define mth$htan MTH$HTAN int mth$htan(); /* MTH$HTAND -- tangent of angle expressed in degrees (H-floating value) */ #define mth$htand MTH$HTAND int mth$htand(); /* MTH$HTANH -- compute the hyperbolic tangent (H-floating value) */ #define mth$htanh MTH$HTANH int mth$htanh(); /* MTH$HATAND2 -- arc tangent in degrees (H-floating value) with two arguments */ #define mth$hatand2 MTH$HATAND2 int mth$hatand2(); /* MTH$AIMAG,MTH$DIMAG,MTH$GIMAG -- imaginary part of a complex number */ #define mth$aimag MTH$AIMAG float mth$aimag(); #define mth$dimag MTH$DIMAG double mth$dimag(); #define mth$gimag MTH$GIMAG double mth$gimag(); /* MTH$ALOG,MTH$DLOG,MTH$GLOG -- natural logarithm */ #define mth$alog MTH$ALOG float mth$alog(); #define mth$dlog MTH$DLOG double mth$dlog(); #define mth$glog MTH$GLOG double mth$glog(); /* MTH$ALOG10,MTH$DLOG10,MTH$GLOG10 -- common logarithm */ #define mth$alog10 MTH$ALOG10 float mth$alog10(); #define mth$dlog10 MTH$DLOG10 double mth$dlog10(); #define mth$glog10 MTH$GLOG10 double mth$glog10(); /* MTH$ALOG2,MTH$DLOG2,MTH$GLOG2 -- base 2 logarithm */ #define mth$alog2 MTH$ALOG2 float mth$alog2(); #define mth$dlog2 MTH$DLOG2 double mth$dlog2(); #define mth$glog2 MTH$GLOG2 double mth$glog2(); /* MTH$RANDOM -- random number generator, uniformly distributed */ #define mth$random MTH$RANDOM float mth$random(); /* MTH$REAL,MTH$DREAL,MTH$GREAL -- real part of a complex number */ #define mth$real MTH$REAL float mth$real(); #define mth$dreal MTH$DREAL double mth$dreal(); #define mth$greal MTH$GREAL double mth$greal(); /* MTH$SIN,MTH$DSIN,MTH$GSIN -- sine of angle expressed in radians */ #define mth$sin MTH$SIN float mth$sin(); #define mth$dsin MTH$DSIN double mth$dsin(); #define mth$gsin MTH$GSIN double mth$gsin(); /* MTH$SIND,MTH$DSIND,MTH$GSIND -- sine of angle expressed in degrees */ #define mth$sind MTH$SIND float mth$sind(); #define mth$dsind MTH$DSIND double mth$dsind(); #define mth$gsind MTH$GSIND double mth$gsind(); /* MTH$SINH,MTH$DSINH,MTH$GSINH -- hyperbolic sine */ #define mth$sinh MTH$SINH float mth$sinh(); #define mth$dsinh MTH$DSINH double mth$dsinh(); #define mth$gsinh MTH$GSINH double mth$gsinh(); /* sine and cosine of angle in radians */ /* MTH$SINCOS,MTH$DSINCOS,MTH$GSINCOS,MTH$HSINCOS */ #define mth$sincos MTH$SINCOS int mth$sincos(); #define mth$dsincos MTH$DSINCOS int mth$dsincos(); #define mth$gsincos MTH$GSINCOS int mth$gsincos(); #define mth$hsincos MTH$HSINCOS int mth$hsincos(); /* sine and cosine of angle in degrees */ /* MTH$SINCOSD,MTH$DSINCOSD,MTH$GSINCOSD,MTH$HSINCOSD */ #define mth$sincosd MTH$SINCOSD int mth$sincosd(); #define mth$dsincosd MTH$DSINCOSD int mth$dsincosd(); #define mth$gsincosd MTH$GSINCOSD int mth$gsincosd(); #define mth$hsincosd MTH$HSINCOSD int mth$hsincosd(); /* MTH$SQRT,MTH$DSQRT,MTH$GSQRT -- square root */ #define mth$sqrt MTH$SQRT float mth$sqrt(); #define mth$dsqrt MTH$DSQRT double mth$dsqrt(); #define mth$gsqrt MTH$GSQRT double mth$gsqrt(); /* MTH$TAN,MTH$DTAN,MTH$GTAN -- tangent of angle expressed in radians */ #define mth$tan MTH$TAN float mth$tan(); #define mth$dtan MTH$DTAN double mth$dtan(); #define mth$gtan MTH$GTAN double mth$gtan(); /* MTH$TAND,MTH$DTAND,MTH$GTAND -- tangent of angle expressed in degrees */ #define mth$tand MTH$TAND float mth$tand(); #define mth$dtand MTH$DTAND double mth$dtand(); #define mth$gtand MTH$GTAND double mth$gtand(); /* MTH$TANH,MTH$DTANH,MTH$GTANH -- compute the hyperbolic tangent */ #define mth$tanh MTH$TANH float mth$tanh(); #define mth$dtanh MTH$DTANH double mth$dtanh(); #define mth$gtanh MTH$GTANH double mth$gtanh(); /* MTH$UMAX -- compute unsigned maximum */ #define mth$umax MTH$UMAX unsigned long mth$umax(); /* MTH$UMIN -- compute unsigned minimum */ #define mth$umin MTH$UMIN unsigned long mth$umin(); /* MTH$ABS,MTH$DABS,MTH$GABS,MTH$HABS -- floating absolute value */ #define mth$abs MTH$ABS float mth$abs(); #define mth$dabs MTH$DABS double mth$dabs(); #define mth$gabs MTH$GABS double mth$gabs(); #define mth$habs MTH$HABS int mth$habs(); /*(no return value)*/ /* MTH$IIABS,MTH$JIABS -- integer absolute value */ #define mth$iiabs MTH$IIABS short mth$iiabs(); #define mth$jiabs MTH$JIABS long mth$jiabs(); /* MTH$IIAND -- bitwise and of two word parameters */ #define mth$iiand MTH$IIAND unsigned short mth$iiand(); /* MTH$JIAND -- bitwise and of two longword parameters */ #define mth$jiand MTH$JIAND unsigned long mth$jiand(); /* MTH$DBLE,MTH$GDBLE -- convert floating to double-precision (exact) */ #define mth$dble MTH$DBLE double mth$dble(); #define mth$gdble MTH$GDBLE double mth$gdble(); /* MTH$DIM,MTH$DDIM,MTH$GDIM,MTH$HDIM -- positive difference of two floating parameters */ #define mth$dim MTH$DIM float mth$dim(); #define mth$ddim MTH$DDIM double mth$ddim(); #define mth$gdim MTH$GDIM double mth$gdim(); #define mth$hdim MTH$HDIM int mth$hdim(); /*(no return value)*/ /* MTH$IIDIM,MTH$JIDIM -- positive difference of two integer parameters */ #define mth$iidim MTH$IIDIM short mth$iidim(); #define mth$jidim MTH$JIDIM long mth$jidim(); /* MTH$IIEOR -- bitwise exclusive or of two word parameters */ #define mth$iieor MTH$IIEOR unsigned short mth$iieor(); /* MTH$JIEOR -- bitwise exclusive or of two longword parameters */ #define mth$jieor MTH$JIEOR unsigned long mth$jieor(); /* MTH$IIFIX -- convert F-floating to word (truncated) */ #define mth$iifix MTH$IIFIX short mth$iifix(); /* MTH$JIFIX -- convert F-floating to longword (truncated) */ #define mth$jifix MTH$JIFIX long mth$jifix(); /* MTH$FLOATI,MTH$DFLOTI,MTH$GFLOTI -- convert word to floating (exact) */ #define mth$floati MTH$FLOATI float mth$floati(); #define mth$dfloti MTH$DFLOTI double mth$dfloti(); #define mth$gfloti MTH$GFLOTI double mth$gfloti(); /* MTH$FLOATJ,MTH$DFLOTJ,MTH$GFLOTJ -- convert longword to G-floating (exact) */ #define mth$floatj MTH$FLOATJ float mth$floatj(); #define mth$dflotj MTH$DFLOTJ double mth$dflotj(); #define mth$gflotj MTH$GFLOTJ double mth$gflotj(); /* MTH$FLOOR,MTH$DFLOOR,MTH$GFLOOR,MTH$HFLOOR -- convert floating to greater floating integer */ #define mth$floor MTH$FLOOR float mth$floor(); #define mth$dfloor MTH$DFLOOR double mth$dfloor(); #define mth$gfloor MTH$GFLOOR double mth$gfloor(); #define mth$hfloor MTH$HFLOOR int mth$hfloor(); /*(no return value)*/ /* MTH$AINT -- convert F-floating to truncated F-floating */ #define mth$aint MTH$AINT float mth$aint(); /* MTH$DINT -- convert D-floating to truncated D-floating */ #define mth$dint MTH$DINT double mth$dint(); /* MTH$IIDINT -- convert D-floating to word (truncated) */ #define mth$iidint MTH$IIDINT short mth$iidint(); /* MTH$JIDINT -- convert D-floating to longword (truncated) */ #define mth$jidint MTH$JIDINT long mth$jidint(); /* MTH$GINT -- convert G-floating to G-floating (truncated) */ #define mth$gint MTH$GINT double mth$gint(); /* MTH$IIGINT -- convert G-floating to word (truncated) */ #define mth$iigint MTH$IIGINT short mth$iigint(); /* MTH$JIGINT -- convert G-floating to longword (truncated) */ #define mth$jigint MTH$JIGINT long mth$jigint(); /* MTH$HINT -- convert H-floating to H-floating (truncated) */ #define mth$hint MTH$HINT int mth$hint(); /* MTH$IIHINT -- convert H-floating to truncated word */ #define mth$iihint MTH$IIHINT short mth$iihint(); /* MTH$JIHINT -- convert H-floating to truncated longword */ #define mth$jihint MTH$JIHINT long mth$jihint(); /* MTH$IINT -- convert F-floating to word (truncated) */ #define mth$iint MTH$IINT short mth$iint(); /* MTH$JINT -- convert f-floating to longword (truncated) */ #define mth$jint MTH$JINT long mth$jint(); /* MTH$IIOR -- bitwise inclusive or of two word parameters */ #define mth$iior MTH$IIOR unsigned short mth$iior(); /* MTH$JIOR -- bitwise inclusive or of two longword parameters */ #define mth$jior MTH$JIOR unsigned long mth$jior(); /* MTH$AIMAX0 -- F-floating maximum of N word parameters */ #define mth$aimax0 MTH$AIMAX0 float mth$aimax0(); /* MTH$AJMAX0 -- F-floating maximum of N longword parameters */ #define mth$ajmax0 MTH$AJMAX0 float mth$ajmax0(); /* MTH$IMAX0 -- word maximum of N word parameters */ #define mth$imax0 MTH$IMAX0 short mth$imax0(); /* MTH$JMAX0 -- longword maximum of N longword parameters */ #define mth$jmax0 MTH$JMAX0 long mth$jmax0(); /* MTH$AMAX1 -- F-floating maximum of N F-floating parameters */ #define mth$amax1 MTH$AMAX1 float mth$amax1(); /* MTH$DMAX1 -- D-floating maximum of N D-floating parameters */ #define mth$dmax1 MTH$DMAX1 double mth$dmax1(); /* MTH$GMAX1 -- G-floating maximum of N G-floating parameters */ #define mth$gmax1 MTH$GMAX1 double mth$gmax1(); /* MTH$HMAX1 -- H-floating maximum of N H-floating parameters */ #define mth$hmax1 MTH$HMAX1 int mth$hmax1(); /* MTH$IMAX1 -- word maximum of N F-floating parameters */ #define mth$imax1 MTH$IMAX1 short mth$imax1(); /* MTH$JMAX1 -- longword maximum of N F-floating parameters */ #define mth$jmax1 MTH$JMAX1 long mth$jmax1(); /* MTH$AIMIN0 -- F-floating minimum of N word parameters */ #define mth$aimin0 MTH$AIMIN0 float mth$aimin0(); /* MTH$AJMIN0 -- F-floating minimum of N longword parameters */ #define mth$ajmin0 MTH$AJMIN0 float mth$ajmin0(); /* MTH$IMIN0 -- word minimum of N word parameters */ #define mth$imin0 MTH$IMIN0 short mth$imin0(); /* MTH$JMIN0 -- longword minimum of N longword parameters */ #define mth$jmin0 MTH$JMIN0 long mth$jmin0(); /* MTH$AMIN1 -- F-floating minimum of N F-floating parameters */ #define mth$amin1 MTH$AMIN1 float mth$amin1(); /* MTH$DMIN1 -- D-floating minimum of N D-floating parameters */ #define mth$dmin1 MTH$DMIN1 double mth$dmin1(); /* MTH$GMIN1 -- G-floating minimum of N G-floating parameters */ #define mth$gmin1 MTH$GMIN1 double mth$gmin1(); /* MTH$HMIN1 -- H-floating minimum of N H-floating parameters */ #define mth$hmin1 MTH$HMIN1 int mth$hmin1(); /* MTH$IMIN1 -- word minimum of N F-floating parameters */ #define mth$imin1 MTH$IMIN1 short mth$imin1(); /* MTH$JMIN1 -- longword minimum of N F-floating parameters */ #define mth$jmin1 MTH$JMIN1 long mth$jmin1(); /* MTH$AMOD,MTH$DMOD,MTH$GMOD,MTH$HMOD -- remainder of two floating parameters */ #define mth$amod MTH$AMOD float mth$amod(); #define mth$dmod MTH$DMOD double mth$dmod(); #define mth$gmod MTH$GMOD double mth$gmod(); #define mth$hmod MTH$HMOD int mth$hmod(); /*(no return value)*/ /* MTH$IMOD,MTH$JMOD -- remainder of two integer parameters */ #define mth$imod MTH$IMOD short mth$imod(); #define mth$jmod MTH$JMOD long mth$jmod(); /* MTH$ANINT,MTH$DNINT,MTH$GNINT,MTH$HNINT -- convert floating to nearest floating integer */ #define mth$anint MTH$ANINT float mth$anint(); #define mth$dnint MTH$DNINT double mth$dnint(); #define mth$gnint MTH$GNINT double mth$gnint(); #define mth$hnint MTH$HNINT int mth$hnint(); /*(no return value)*/ /* MTH$ININT,MTH$JNINT -- convert F-floating to nearest integer */ #define mth$inint MTH$ININT short mth$inint(); #define mth$jnint MTH$JNINT long mth$jnint(); /* MTH$IIDNNT,MTH$JIDNNT -- convert D-floating to nearest integer */ #define mth$iidnnt MTH$IIDNNT short mth$iidnnt(); #define mth$jidnnt MTH$JIDNNT long mth$jidnnt(); /* MTH$IIGNNT,MTH$JIGNNT -- convert G-floating to nearest integer */ #define mth$iignnt MTH$IIGNNT short mth$iignnt(); #define mth$jignnt MTH$JIGNNT long mth$jignnt(); /* MTH$IIHNNT,MTH$JIHNNT -- convert H-floating to nearest integer */ #define mth$iihnnt MTH$IIHNNT short mth$iihnnt(); #define mth$jihnnt MTH$JIHNNT long mth$jihnnt(); /* MTH$INOT -- bitwise complement of word parameter */ #define mth$inot MTH$INOT unsigned short mth$inot(); /* MTH$JNOT -- bitwise complement of longword parameter */ #define mth$jnot MTH$JNOT unsigned long mth$jnot(); /* MTH$DPROD,MTH$GPROD -- double-precision product of two F-floating parameters */ #define mth$dprod MTH$DPROD double mth$dprod(); #define mth$gprod MTH$GPROD double mth$gprod(); /* MTH$SGN -- F-floating sign function */ #define mth$sgn MTH$SGN long mth$sgn(); /* MTH$IISHFT -- bitwise shift of word */ #define mth$iishft MTH$IISHFT unsigned short mth$iishft(); /* MTH$JISHFT -- bitwise shift of longword */ #define mth$jishft MTH$JISHFT unsigned long mth$jishft(); /* MTH$SIGN -- F-floating transfer of sign */ #define mth$sign MTH$SIGN float mth$sign(); /* MTH$DSIGN -- D-floating transfer of sign */ #define mth$dsign MTH$DSIGN double mth$dsign(); /* MTH$GSIGN -- G-floating transfer of sign */ #define mth$gsign MTH$GSIGN double mth$gsign(); /* MTH$HSIGN -- H-floating transfer of sign */ #define mth$hsign MTH$HSIGN int mth$hsign(); /* MTH$IISIGN -- word transfer of sign */ #define mth$iisign MTH$IISIGN short mth$iisign(); /* MTH$JISIGN -- longword transfer of sign */ #define mth$jisign MTH$JISIGN long mth$jisign(); /* MTH$SNGL,MTH$SNGLG -- convert double-precision to F-floating (rounded) */ #define mth$sngl MTH$SNGL float mth$sngl(); #define mth$snglg MTH$SNGLG float mth$snglg(); # ifdef __cplusplus } # endif #endif /*_MTH$ROUTINES_H*/