mathlib-slatec-harwell.c

     1  //! @file mathlib-slatec-harwell.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  //! 10 subprograms from SLATEC-HARWELL
    24  
    25  // Compiled from Fortran source code by VIF.
    26  // Selected subprograms are:
    27  //
    28  // LA05AD LA05AS LA05BD LA05BS LA05CD LA05CS LA05ED LA05ES MC20AD MC20AS
    29  
    30  // Miscellaneous routines from SLATEC, not in other packages as BLAS,
    31  // EISPACK, FISHPACK, FFTPACK, FNLIB, LINPACK etcetera.
    32  // 
    33  // Source: netlib.org/slatec/
    34  // 
    35  // For VIF, all source file have been formatted and labels have been renumbered.
    36  
    37  // The license for SLATEC Fortran source code is:
    38  //
    39  // The SLATEC Common Mathematical Library was developed at
    40  // US government research laboratories and is in the public domain.
    41  // 
    42  // Repository: http://www.netlib.org/slatec/
    43  // 
    44  // The SLATEC common mathematical library is issued by the following
    45  // 
    46  //         Air Force Weapons Laboratory, Albuquerque
    47  //         Lawrence Livermore National Laboratory, Livermore
    48  //         Los Alamos National Laboratory, Los Alamos
    49  //         National Institute of Standards and Technology, Washington
    50  //         National Energy Research Supercomputer Center, Livermore
    51  //         Oak Ridge National Laboratory, Oak Ridge
    52  //         Sandia National Laboratories, Albuquerque
    53  //         Sandia National Laboratories, Livermore
    54  // 
    55  // All questions concerning the distribution of the library should be
    56  // directed to the NATIONAL ENERGY SOFTWARE CENTER, 9700 Cass Ave.,
    57  // Argonne, Illinois  60439, and not to the authors of the subprograms.
    58  // 
    59  //                  * * * * * Notice * * * * *
    60  // 
    61  // This material was prepared as an account of work sponsored by the
    62  // United States Government.  Neither the United States, nor the
    63  // Department of Energy, nor the Department of Defense, nor any of
    64  // their employees, nor any of their contractors, subcontractors, or
    65  // their employees, makes any warranty, expressed or implied, or
    66  // assumes any legal liability or responsibility for the accuracy,
    67  // completeness, or usefulness of any information, apparatus, product,
    68  // or process disclosed, or represents that its use would not infringe
    69  // upon privately owned rights.
    70  
    71  /*
    72  Generated by VIF - experimental VIntage Fortran compiler.
    73  VIF release 1.2.17
    74  */
    75  #if defined (__GNUC__)
    76  #pragma GCC diagnostic ignored "-Wimplicit-function-declaration"
    77  #pragma GCC diagnostic ignored "-Wincompatible-pointer-types"
    78  #if (__GNUC__ >= 14)
    79  #pragma GCC diagnostic ignored "-Wdeclaration-missing-parameter-type"
    80  #pragma GCC diagnostic ignored "-Wimplicit-int"
    81  #pragma GCC diagnostic ignored "-Wint-conversion"
    82  #pragma GCC diagnostic ignored "-Wreturn-mismatch"
    83  #endif
    84  #else
    85  #error VIF requires GCC
    86  #endif
   124  static CALLS __calls[__ncalls] = {
   125    {"la05ad", 0}, // subroutine
   126    {"la05as", 0}, // subroutine
   127    {"la05bd", 0}, // subroutine
   128    {"la05bs", 0}, // subroutine
   129    {"la05cd", 0}, // subroutine
   130    {"la05cs", 0}, // subroutine
   131    {"la05ed", 0}, // subroutine
   132    {"la05es", 0}, // subroutine
   133    {"mc20ad", 0}, // subroutine
   134    {"mc20as", 0}, // subroutine
   135    {NULL, 0}
   136  };
   137  
   138  static struct {
   139    int_4 lp_, lenl_, lenu_, ncp_, lrow_, lcol_;
   140    real_8 small_;
   141  } la05dd_;
   142  static struct {
   143    int_4 lp_, lenl_, lenu_, ncp_, lrow_, lcol_;
   144    real_4 small_;
   145  } la05ds_;
   147  int_4 _p_ iw_, real_8 _p_ w_, real_8 _p_ g_, real_8 _p_ u_);
   149  int_4 _p_ iw_, real_4 _p_ w_, real_4 _p_ g_, real_4 _p_ u_);
   151  real_8 _p_ w_, real_8 _p_ g_, real_8 _p_ b_, logical_4 _p_ trans_);
   153  real_4 _p_ w_, real_4 _p_ g_, real_4 _p_ b_, logical_4 _p_ trans_);
   155  real_8 _p_ w_, real_8 _p_ g_, real_8 _p_ u_, int_4 _p_ mm_);
   157  real_4 _p_ w_, real_4 _p_ g_, real_4 _p_ u_, int_4 _p_ mm_);
   159  logical_4 _p_ reals_);
   161  logical_4 _p_ reals_);
   163  jnum_, int_4 _p_ jdisp_);
   165  jnum_, int_4 _p_ jdisp_);
   166  int_4 _la05ad (real_8 _p_ a_, int_4 _p_ ind_, int_4 _p_ nz_, int_4 _p_ ia_, int_4 _p_ n_, int_4 _p_ ip_, int_4 _p_ iw_, 
   167  real_8 _p_ w_, real_8 _p_ g_, real_8 _p_ u_)
   168  { // ** body not listed **
   996  }
   997  
   998  int_4 _la05as (real_4 _p_ a_, int_4 _p_ ind_, int_4 _p_ nz_, int_4 _p_ ia_, int_4 _p_ n_, int_4 _p_ ip_, int_4 _p_ iw_, 
   999  real_4 _p_ w_, real_4 _p_ g_, real_4 _p_ u_)
  1000  { // ** body not listed **
  1828  }
  1829  
  1830  int_4 _la05bd (real_8 _p_ a_, int_4 _p_ ind_, int_4 _p_ ia_, int_4 _p_ n_, int_4 _p_ ip_, int_4 _p_ iw_, real_8 _p_ w_, 
  1831  real_8 _p_ g_, real_8 _p_ b_, logical_4 _p_ trans_)
  1832  { // ** body not listed **
  1947  }
  1948  
  1949  int_4 _la05bs (real_4 _p_ a_, int_4 _p_ ind_, int_4 _p_ ia_, int_4 _p_ n_, int_4 _p_ ip_, int_4 _p_ iw_, real_4 _p_ w_, 
  1950  real_4 _p_ g_, real_4 _p_ b_, logical_4 _p_ trans_)
  1951  { // ** body not listed **
  2066  }
  2067  
  2068  int_4 _la05cd (real_8 _p_ a_, int_4 _p_ ind_, int_4 _p_ ia_, int_4 _p_ n_, int_4 _p_ ip_, int_4 _p_ iw_, real_8 _p_ w_, 
  2069  real_8 _p_ g_, real_8 _p_ u_, int_4 _p_ mm_)
  2070  { // ** body not listed **
  2573  }
  2574  
  2575  int_4 _la05cs (real_4 _p_ a_, int_4 _p_ ind_, int_4 _p_ ia_, int_4 _p_ n_, int_4 _p_ ip_, int_4 _p_ iw_, real_4 _p_ w_, 
  2576  real_4 _p_ g_, real_4 _p_ u_, int_4 _p_ mm_)
  2577  { // ** body not listed **
  3080  }
  3081  
  3082  int_4 _la05ed (real_8 _p_ a_, int_4 _p_ irn_, int_4 _p_ ip_, int_4 _p_ n_, int_4 _p_ iw_, int_4 _p_ ia_, logical_4 _p_ 
  3083  reals_)
  3084  { // ** body not listed **
  3131  }
  3132  int_4 _la05es (real_4 _p_ a_, int_4 _p_ irn_, int_4 _p_ ip_, int_4 _p_ n_, int_4 _p_ iw_, int_4 _p_ ia_, logical_4 _p_ 
  3133  reals_)
  3134  { // ** body not listed **
  3181  }
  3182  int_4 _mc20ad (int_4 _p_ nc_, int_4 _p_ maxa_, real_8 _p_ a_, int_4 _p_ inum_, int_4 _p_ jptr_, int_4 _p_ jnum_, int_4 
  3183  _p_ jdisp_)
  3184  { // ** body not listed **
  3235  }
  3236  
  3237  int_4 _mc20as (int_4 _p_ nc_, int_4 _p_ maxa_, real_4 _p_ a_, int_4 _p_ inum_, int_4 _p_ jptr_, int_4 _p_ jnum_, int_4 
  3238  _p_ jdisp_)
  3239  { // ** body not listed **
  3290  }
  3291  


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