mathlib-slatec-extended.c

     1  //! @file mathlib-slatec-extended.c
     2  //
     3  //! @section copyright
     4  //
     5  // This file is part of VIF - vintage fortran compiler.
     6  // Copyright 2020-2025 J. Marcel van der Veer <algol68g@xs4all.nl>.
     7  //
     8  //! @section license
     9  //
    10  // This program is free software; you can redistribute it and/or modify it 
    11  // under the terms of the gnu general public license as published by the 
    12  // free software foundation; either version 3 of the license, or 
    13  // (at your option) any later version.
    14  //
    15  // This program is distributed in the hope that it will be useful, but 
    16  // without any warranty; without even the implied warranty of merchantability 
    17  // or fitness for a particular purpose. See the GNU general public license for 
    18  // more details. you should have received a copy of the GNU general public 
    19  // license along with this program. If not, see <http://www.gnu.org/licenses/>.
    20  //
    21  //! @Synopsis
    22  //
    23  //! 22 subprograms from SLATEC-EXTENDED
    24  
    25  // Compiled from Fortran source code by VIF.
    26  // Selected subprograms are:
    27  //
    28  // DXADD  DXNRMP DXPNRM DXQMU  DXSET  XCON   XNRMP  XPMUP  XPQNU  XQNU
    29  // DXCON  DXPMU  DXPQNU DXQNU  XADD   XLEGF  XPMU   XPNRM  XQMU   XSET
    30  // DXLEGF DXPMUP
    31  
    32  // The license for SLATEC Fortran source code is:
    33  //
    34  // The SLATEC Common Mathematical Library was developed at
    35  // US government research laboratories and is in the public domain.
    36  // 
    37  // Repository: http://www.netlib.org/slatec/
    38  // 
    39  // The SLATEC common mathematical library is issued by the following
    40  // 
    41  //         Air Force Weapons Laboratory, Albuquerque
    42  //         Lawrence Livermore National Laboratory, Livermore
    43  //         Los Alamos National Laboratory, Los Alamos
    44  //         National Institute of Standards and Technology, Washington
    45  //         National Energy Research Supercomputer Center, Livermore
    46  //         Oak Ridge National Laboratory, Oak Ridge
    47  //         Sandia National Laboratories, Albuquerque
    48  //         Sandia National Laboratories, Livermore
    49  // 
    50  // All questions concerning the distribution of the library should be
    51  // directed to the NATIONAL ENERGY SOFTWARE CENTER, 9700 Cass Ave.,
    52  // Argonne, Illinois  60439, and not to the authors of the subprograms.
    53  // 
    54  //                  * * * * * Notice * * * * *
    55  // 
    56  // This material was prepared as an account of work sponsored by the
    57  // United States Government.  Neither the United States, nor the
    58  // Department of Energy, nor the Department of Defense, nor any of
    59  // their employees, nor any of their contractors, subcontractors, or
    60  // their employees, makes any warranty, expressed or implied, or
    61  // assumes any legal liability or responsibility for the accuracy,
    62  // completeness, or usefulness of any information, apparatus, product,
    63  // or process disclosed, or represents that its use would not infringe
    64  // upon privately owned rights.
    65  
    66  /*
    67  Generated by VIF - experimental VIntage Fortran compiler.
    68  VIF release 1.2.17
    69  */
    70  #if defined (__GNUC__)
    71  #pragma GCC diagnostic ignored "-Wimplicit-function-declaration"
    72  #pragma GCC diagnostic ignored "-Wincompatible-pointer-types"
    73  #if (__GNUC__ >= 14)
    74  #pragma GCC diagnostic ignored "-Wdeclaration-missing-parameter-type"
    75  #pragma GCC diagnostic ignored "-Wimplicit-int"
    76  #pragma GCC diagnostic ignored "-Wint-conversion"
    77  #pragma GCC diagnostic ignored "-Wreturn-mismatch"
    78  #endif
    79  #else
    80  #error VIF requires GCC
    81  #endif
   109  static CALLS __calls[__ncalls] = {
   110    {"dxadd", 0}, // subroutine
   111    {"dxcon", 0}, // subroutine
   112    {"dxlegf", 0}, // subroutine
   113    {"dxnrmp", 0}, // subroutine
   114    {"dxpmu", 0}, // subroutine
   115    {"dxpmup", 0}, // subroutine
   116    {"dxpnrm", 0}, // subroutine
   117    {"dxpqnu", 0}, // subroutine
   118    {"dxqmu", 0}, // subroutine
   119    {"dxqnu", 0}, // subroutine
   120    {"dxset", 0}, // subroutine
   121    {"xadd", 0}, // subroutine
   122    {"xcon", 0}, // subroutine
   123    {"xlegf", 0}, // subroutine
   124    {"xnrmp", 0}, // subroutine
   125    {"xpmu", 0}, // subroutine
   126    {"xpmup", 0}, // subroutine
   127    {"xpnrm", 0}, // subroutine
   128    {"xpqnu", 0}, // subroutine
   129    {"xqmu", 0}, // subroutine
   130    {"xqnu", 0}, // subroutine
   131    {"xset", 0}, // subroutine
   132    {NULL, 0}
   133  };
   134  
   135  static struct {
   136    int_4 l_, l2_, kmax_;
   137    real_8 radix_, radixl_, rad2l_, dlg10r_;
   138  } dxblk2_;
   139  static struct {
   140    int_4 nbitsf_;
   141  } dxblk1_;
   142  static struct {
   143    int_4 nlg102_, mlg102_, lg102_[21];
   144  } dxblk3_;
   145  static struct {
   146    int_4 l_, l2_, kmax_;
   147    real_4 radix_, radixl_, rad2l_, dlg10r_;
   148  } xblk2_;
   149  static struct {
   150    int_4 nbitsf_;
   151  } xblk1_;
   152  static struct {
   153    int_4 nlg102_, mlg102_, lg102_[21];
   154  } xblk3_;
   156  _p_ ierror_);
   159  _p_ id_, real_8 _p_ pqa_, int_4 _p_ ipqa_, int_4 _p_ ierror_);
   161  dpn_, int_4 _p_ ipn_, int_4 _p_ isig_, int_4 _p_ ierror_);
   163  x_, real_8 _p_ sx_, int_4 _p_ id_, real_8 _p_ pqa_, int_4 _p_ ipqa_, int_4 _p_ ierror_);
   165  ipqa_, int_4 _p_ ierror_);
   167  ipqa_, int_4 _p_ ierror_);
   169  pqa_, int_4 _p_ ipqa_, int_4 _p_ ierror_);
   171  x_, real_8 _p_ sx_, int_4 _p_ id_, real_8 _p_ pqa_, int_4 _p_ ipqa_, int_4 _p_ ierror_);
   173  sx_, int_4 _p_ id_, real_8 _p_ pqa_, int_4 _p_ ipqa_, int_4 _p_ ierror_);
   176  _p_ ierror_);
   179  _p_ id_, real_4 _p_ pqa_, int_4 _p_ ipqa_, int_4 _p_ ierror_);
   181  spn_, int_4 _p_ ipn_, int_4 _p_ isig_, int_4 _p_ ierror_);
   183  x_, real_4 _p_ sx_, int_4 _p_ id_, real_4 _p_ pqa_, int_4 _p_ ipqa_, int_4 _p_ ierror_);
   185  ipqa_, int_4 _p_ ierror_);
   187  ipqa_, int_4 _p_ ierror_);
   189  pqa_, int_4 _p_ ipqa_, int_4 _p_ ierror_);
   191  x_, real_4 _p_ sx_, int_4 _p_ id_, real_4 _p_ pqa_, int_4 _p_ ipqa_, int_4 _p_ ierror_);
   193  sx_, int_4 _p_ id_, real_4 _p_ pqa_, int_4 _p_ ipqa_, int_4 _p_ ierror_);
   195  int_4 _dxadd (real_8 _p_ x_, int_4 _p_ ix_, real_8 _p_ y_, int_4 _p_ iy_, real_8 _p_ z_, int_4 _p_ iz_, int_4 _p_ 
   196  ierror_)
   197  { // ** body not listed **
   372  }
   373  
   374  int_4 _dxcon (real_8 _p_ x_, int_4 _p_ ix_, int_4 _p_ ierror_)
   375  { // ** body not listed **
   528  }
   529  
   530  int_4 _dxlegf (real_8 _p_ dnu1_, int_4 _p_ nudiff_, int_4 _p_ mu1_, int_4 _p_ mu2_, real_8 _p_ theta_, int_4 _p_ id_, 
   531  real_8 _p_ pqa_, int_4 _p_ ipqa_, int_4 _p_ ierror_)
   532  { // ** body not listed **
   644  }
   645  
   646  int_4 _dxnrmp (int_4 _p_ nu_, int_4 _p_ mu1_, int_4 _p_ mu2_, real_8 _p_ darg_, int_4 _p_ mode_, real_8 _p_ dpn_, int_4 
   647  _p_ ipn_, int_4 _p_ isig_, int_4 _p_ ierror_)
   648  { // ** body not listed **
   822  }
   823  
   824  int_4 _dxpmu (real_8 _p_ nu1_, real_8 _p_ nu2_, int_4 _p_ mu1_, int_4 _p_ mu2_, real_8 _p_ theta_, real_8 _p_ x_, 
   825  real_8 _p_ sx_, int_4 _p_ id_, real_8 _p_ pqa_, int_4 _p_ ipqa_, int_4 _p_ ierror_)
   826  { // ** body not listed **
   874  }
   875  
   876  int_4 _dxpmup (real_8 _p_ nu1_, real_8 _p_ nu2_, int_4 _p_ mu1_, int_4 _p_ mu2_, real_8 _p_ pqa_, int_4 _p_ ipqa_, 
   877  int_4 _p_ ierror_)
   878  { // ** body not listed **
   956  }
   957  
   958  int_4 _dxpnrm (real_8 _p_ nu1_, real_8 _p_ nu2_, int_4 _p_ mu1_, int_4 _p_ mu2_, real_8 _p_ pqa_, int_4 _p_ ipqa_, 
   959  int_4 _p_ ierror_)
   960  { // ** body not listed **
  1047  }
  1048  
  1049  int_4 _dxpqnu (real_8 _p_ nu1_, real_8 _p_ nu2_, int_4 _p_ mu_, real_8 _p_ theta_, int_4 _p_ id_, real_8 _p_ pqa_, 
  1050  int_4 _p_ ipqa_, int_4 _p_ ierror_)
  1051  { // ** body not listed **
  1242  }
  1243  
  1244  int_4 _dxqmu (real_8 _p_ nu1_, real_8 _p_ nu2_, int_4 _p_ mu1_, int_4 _p_ mu2_, real_8 _p_ theta_, real_8 _p_ x_, 
  1245  real_8 _p_ sx_, int_4 _p_ id_, real_8 _p_ pqa_, int_4 _p_ ipqa_, int_4 _p_ ierror_)
  1246  { // ** body not listed **
  1318  }
  1319  
  1320  int_4 _dxqnu (real_8 _p_ nu1_, real_8 _p_ nu2_, int_4 _p_ mu1_, real_8 _p_ theta_, real_8 _p_ x_, real_8 _p_ sx_, int_4 
  1321  _p_ id_, real_8 _p_ pqa_, int_4 _p_ ipqa_, int_4 _p_ ierror_)
  1322  { // ** body not listed **
  1431  }
  1432  
  1433  int_4 _dxset (int_4 _p_ irad_, int_4 _p_ nradpl_, real_8 _p_ dzero_, int_4 _p_ nbits_, int_4 _p_ ierror_)
  1434  { // ** body not listed **
  1619  }
  1620  
  1621  int_4 _xadd (real_4 _p_ x_, int_4 _p_ ix_, real_4 _p_ y_, int_4 _p_ iy_, real_4 _p_ z_, int_4 _p_ iz_, int_4 _p_ 
  1622  ierror_)
  1623  { // ** body not listed **
  1798  }
  1799  
  1800  int_4 _xcon (real_4 _p_ x_, int_4 _p_ ix_, int_4 _p_ ierror_)
  1801  { // ** body not listed **
  1954  }
  1955  
  1956  int_4 _xlegf (real_4 _p_ dnu1_, int_4 _p_ nudiff_, int_4 _p_ mu1_, int_4 _p_ mu2_, real_4 _p_ theta_, int_4 _p_ id_, 
  1957  real_4 _p_ pqa_, int_4 _p_ ipqa_, int_4 _p_ ierror_)
  1958  { // ** body not listed **
  2070  }
  2071  
  2072  int_4 _xnrmp (int_4 _p_ nu_, int_4 _p_ mu1_, int_4 _p_ mu2_, real_4 _p_ sarg_, int_4 _p_ mode_, real_4 _p_ spn_, int_4 
  2073  _p_ ipn_, int_4 _p_ isig_, int_4 _p_ ierror_)
  2074  { // ** body not listed **
  2248  }
  2249  
  2250  int_4 _xpmu (real_4 _p_ nu1_, real_4 _p_ nu2_, int_4 _p_ mu1_, int_4 _p_ mu2_, real_4 _p_ theta_, real_4 _p_ x_, real_4 
  2251  _p_ sx_, int_4 _p_ id_, real_4 _p_ pqa_, int_4 _p_ ipqa_, int_4 _p_ ierror_)
  2252  { // ** body not listed **
  2300  }
  2301  
  2302  int_4 _xpmup (real_4 _p_ nu1_, real_4 _p_ nu2_, int_4 _p_ mu1_, int_4 _p_ mu2_, real_4 _p_ pqa_, int_4 _p_ ipqa_, int_4 
  2303  _p_ ierror_)
  2304  { // ** body not listed **
  2382  }
  2383  
  2384  int_4 _xpnrm (real_4 _p_ nu1_, real_4 _p_ nu2_, int_4 _p_ mu1_, int_4 _p_ mu2_, real_4 _p_ pqa_, int_4 _p_ ipqa_, int_4 
  2385  _p_ ierror_)
  2386  { // ** body not listed **
  2473  }
  2474  
  2475  int_4 _xpqnu (real_4 _p_ nu1_, real_4 _p_ nu2_, int_4 _p_ mu_, real_4 _p_ theta_, int_4 _p_ id_, real_4 _p_ pqa_, int_4 
  2476  _p_ ipqa_, int_4 _p_ ierror_)
  2477  { // ** body not listed **
  2668  }
  2669  
  2670  int_4 _xqmu (real_4 _p_ nu1_, real_4 _p_ nu2_, int_4 _p_ mu1_, int_4 _p_ mu2_, real_4 _p_ theta_, real_4 _p_ x_, real_4 
  2671  _p_ sx_, int_4 _p_ id_, real_4 _p_ pqa_, int_4 _p_ ipqa_, int_4 _p_ ierror_)
  2672  { // ** body not listed **
  2744  }
  2745  
  2746  int_4 _xqnu (real_4 _p_ nu1_, real_4 _p_ nu2_, int_4 _p_ mu1_, real_4 _p_ theta_, real_4 _p_ x_, real_4 _p_ sx_, int_4 
  2747  _p_ id_, real_4 _p_ pqa_, int_4 _p_ ipqa_, int_4 _p_ ierror_)
  2748  { // ** body not listed **
  2857  }
  2858  
  2859  int_4 _xset (int_4 _p_ irad_, int_4 _p_ nradpl_, real_4 _p_ dzero_, int_4 _p_ nbits_, int_4 _p_ ierror_)
  2860  { // ** body not listed **
  3045  }
  3046  


© 2002-2025 J.M. van der Veer (jmvdveer@xs4all.nl)