mathlib-slatec-dassl.c

     1  //! @file mathlib-slatec-dassl.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  //! 16 subprograms from SLATEC-DASSL
    24  
    25  // Compiled from Fortran source code by VIF.
    26  // Selected subprograms are:
    27  //
    28  // DDAINI DDANRM DDASSL DDATRP SDAINI SDANRM SDASSL SDASTP SDATRP SDAWTS
    29  // DDAJAC DDASLV DDASTP DDAWTS SDAJAC SDASLV
    30  
    31  // The license for SLATEC Fortran source code is:
    32  //
    33  // The SLATEC Common Mathematical Library was developed at
    34  // US government research laboratories and is in the public domain.
    35  // 
    36  // Repository: http://www.netlib.org/slatec/
    37  // 
    38  // The SLATEC common mathematical library is issued by the following
    39  // 
    40  //         Air Force Weapons Laboratory, Albuquerque
    41  //         Lawrence Livermore National Laboratory, Livermore
    42  //         Los Alamos National Laboratory, Los Alamos
    43  //         National Institute of Standards and Technology, Washington
    44  //         National Energy Research Supercomputer Center, Livermore
    45  //         Oak Ridge National Laboratory, Oak Ridge
    46  //         Sandia National Laboratories, Albuquerque
    47  //         Sandia National Laboratories, Livermore
    48  // 
    49  // All questions concerning the distribution of the library should be
    50  // directed to the NATIONAL ENERGY SOFTWARE CENTER, 9700 Cass Ave.,
    51  // Argonne, Illinois  60439, and not to the authors of the subprograms.
    52  // 
    53  //                  * * * * * Notice * * * * *
    54  // 
    55  // This material was prepared as an account of work sponsored by the
    56  // United States Government.  Neither the United States, nor the
    57  // Department of Energy, nor the Department of Defense, nor any of
    58  // their employees, nor any of their contractors, subcontractors, or
    59  // their employees, makes any warranty, expressed or implied, or
    60  // assumes any legal liability or responsibility for the accuracy,
    61  // completeness, or usefulness of any information, apparatus, product,
    62  // or process disclosed, or represents that its use would not infringe
    63  // upon privately owned rights.
    64  
    65  /*
    66  Generated by VIF - experimental VIntage Fortran compiler.
    67  VIF release 1.2.12
    68  */
   137  static CALLS __calls[__ncalls] = {
   138    {"ddaini", 0}, // subroutine
   139    {"ddajac", 0}, // subroutine
   140    {"ddanrm", 0}, // real*8 function
   141    {"ddaslv", 0}, // subroutine
   142    {"ddassl", 0}, // subroutine
   143    {"ddastp", 0}, // subroutine
   144    {"ddatrp", 0}, // subroutine
   145    {"ddawts", 0}, // subroutine
   146    {"sdaini", 0}, // subroutine
   147    {"sdajac", 0}, // subroutine
   148    {"sdanrm", 0}, // real*4 function
   149    {"sdaslv", 0}, // subroutine
   150    {"sdassl", 0}, // subroutine
   151    {"sdastp", 0}, // subroutine
   152    {"sdatrp", 0}, // subroutine
   153    {"sdawts", 0}, // subroutine
   154    {NULL, 0}
   155  };
   156  
   158  (*_jac)(), real_8 _p_ h_, real_8 _p_ wt_, int_4 _p_ idid_, real_8 _p_ rpar_, int_4 _p_ ipar_, real_8 _p_ phi_, real_8 
   159  _p_ delta_, real_8 _p_ e_, real_8 _p_ wm_, int_4 _p_ iwm_, real_8 _p_ hmin_, real_8 _p_ uround_, int_4 _p_ nonneg_, 
   160  int_4 _p_ ntemp_);
   162  _p_ cj_, real_8 _p_ h_, int_4 _p_ ier_, real_8 _p_ wt_, real_8 _p_ e_, real_8 _p_ wm_, int_4 _p_ iwm_, int_4 (*_res)(), 
   163  int_4 _p_ ires_, real_8 _p_ uround_, int_4 (*_jac)(), real_8 _p_ rpar_, int_4 _p_ ipar_, int_4 _p_ ntemp_);
   167  tout_, int_4 _p_ info_, real_8 _p_ rtol_, real_8 _p_ atol_, int_4 _p_ idid_, real_8 _p_ rwork_, int_4 _p_ lrw_, int_4 
   168  _p_ iwork_, int_4 _p_ liw_, real_8 _p_ rpar_, int_4 _p_ ipar_, int_4 (*_jac)());
   170  (*_jac)(), real_8 _p_ h_, real_8 _p_ wt_, int_4 _p_ jstart_, int_4 _p_ idid_, real_8 _p_ rpar_, int_4 _p_ ipar_, real_8 
   171  _p_ phi_, real_8 _p_ delta_, real_8 _p_ e_, real_8 _p_ wm_, int_4 _p_ iwm_, real_8 _p_ alpha_, real_8 _p_ beta_, real_8 
   172  _p_ gamma_, real_8 _p_ psi_, real_8 _p_ sigma_, real_8 _p_ cj_, real_8 _p_ cjold_, real_8 _p_ hold_, real_8 _p_ s_, 
   173  real_8 _p_ hmin_, real_8 _p_ uround_, int_4 _p_ iphase_, int_4 _p_ jcalc_, int_4 _p_ k_, int_4 _p_ kold_, int_4 _p_ ns_
   174  , int_4 _p_ nonneg_, int_4 _p_ ntemp_);
   176  _p_ kold_, real_8 _p_ phi_, real_8 _p_ psi_);
   178  wt_, real_8 _p_ rpar_, int_4 _p_ ipar_);
   180  (*_jac)(), real_4 _p_ h_, real_4 _p_ wt_, int_4 _p_ idid_, real_4 _p_ rpar_, int_4 _p_ ipar_, real_4 _p_ phi_, real_4 
   181  _p_ delta_, real_4 _p_ e_, real_4 _p_ wm_, int_4 _p_ iwm_, real_4 _p_ hmin_, real_4 _p_ uround_, int_4 _p_ nonneg_, 
   182  int_4 _p_ ntemp_);
   184  _p_ cj_, real_4 _p_ h_, int_4 _p_ ier_, real_4 _p_ wt_, real_4 _p_ e_, real_4 _p_ wm_, int_4 _p_ iwm_, int_4 (*_res)(), 
   185  int_4 _p_ ires_, real_4 _p_ uround_, int_4 (*_jac)(), real_4 _p_ rpar_, int_4 _p_ ipar_, int_4 _p_ ntemp_);
   189  tout_, int_4 _p_ info_, real_4 _p_ rtol_, real_4 _p_ atol_, int_4 _p_ idid_, real_4 _p_ rwork_, int_4 _p_ lrw_, int_4 
   190  _p_ iwork_, int_4 _p_ liw_, real_4 _p_ rpar_, int_4 _p_ ipar_, int_4 (*_jac)());
   192  (*_jac)(), real_4 _p_ h_, real_4 _p_ wt_, int_4 _p_ jstart_, int_4 _p_ idid_, real_4 _p_ rpar_, int_4 _p_ ipar_, real_4 
   193  _p_ phi_, real_4 _p_ delta_, real_4 _p_ e_, real_4 _p_ wm_, int_4 _p_ iwm_, real_4 _p_ alpha_, real_4 _p_ beta_, real_4 
   194  _p_ gamma_, real_4 _p_ psi_, real_4 _p_ sigma_, real_4 _p_ cj_, real_4 _p_ cjold_, real_4 _p_ hold_, real_4 _p_ s_, 
   195  real_4 _p_ hmin_, real_4 _p_ uround_, int_4 _p_ iphase_, int_4 _p_ jcalc_, int_4 _p_ k_, int_4 _p_ kold_, int_4 _p_ ns_
   196  , int_4 _p_ nonneg_, int_4 _p_ ntemp_);
   198  _p_ kold_, real_4 _p_ phi_, real_4 _p_ psi_);
   200  wt_, real_4 _p_ rpar_, int_4 _p_ ipar_);
   201  int_4 _ddaini (real_8 _p_ x_, real_8 _p_ y_, real_8 _p_ yprime_, int_4 _p_ neq_, int_4 (*_res)(), int_4 (*_jac)(), 
   202  real_8 _p_ h_, real_8 _p_ wt_, int_4 _p_ idid_, real_8 _p_ rpar_, int_4 _p_ ipar_, real_8 _p_ phi_, real_8 _p_ delta_, 
   203  real_8 _p_ e_, real_8 _p_ wm_, int_4 _p_ iwm_, real_8 _p_ hmin_, real_8 _p_ uround_, int_4 _p_ nonneg_, int_4 _p_ 
   204  ntemp_)
   205  { // ** body not listed **
   395  }
   396  
   397  int_4 _ddajac (int_4 _p_ neq_, real_8 _p_ x_, real_8 _p_ y_, real_8 _p_ yprime_, real_8 _p_ delta_, real_8 _p_ cj_, 
   398  real_8 _p_ h_, int_4 _p_ ier_, real_8 _p_ wt_, real_8 _p_ e_, real_8 _p_ wm_, int_4 _p_ iwm_, int_4 (*_res)(), int_4 
   399  _p_ ires_, real_8 _p_ uround_, int_4 (*_jac)(), real_8 _p_ rpar_, int_4 _p_ ipar_, int_4 _p_ ntemp_)
   400  { // ** body not listed **
   508  }
   509  
   510  real_8 _ddanrm (int_4 _p_ neq_, real_8 _p_ v_, real_8 _p_ wt_, real_8 _p_ rpar_, int_4 _p_ ipar_)
   511  { // ** body not listed **
   534  }
   535  
   536  int_4 _ddaslv (int_4 _p_ neq_, real_8 _p_ delta_, real_8 _p_ wm_, int_4 _p_ iwm_)
   537  { // ** body not listed **
   561  }
   562  
   563  int_4 _ddassl (real_4 (*_res)(), int_4 _p_ neq_, real_8 _p_ t_, real_8 _p_ y_, real_8 _p_ yprime_, real_8 _p_ tout_, 
   564  int_4 _p_ info_, real_8 _p_ rtol_, real_8 _p_ atol_, int_4 _p_ idid_, real_8 _p_ rwork_, int_4 _p_ lrw_, int_4 _p_ 
   565  iwork_, int_4 _p_ liw_, real_8 _p_ rpar_, int_4 _p_ ipar_, int_4 (*_jac)())
   566  { // ** body not listed **
  2523  }
  2524  
  2525  int_4 _ddastp (real_8 _p_ x_, real_8 _p_ y_, real_8 _p_ yprime_, int_4 _p_ neq_, int_4 (*_res)(), int_4 (*_jac)(), 
  2526  real_8 _p_ h_, real_8 _p_ wt_, int_4 _p_ jstart_, int_4 _p_ idid_, real_8 _p_ rpar_, int_4 _p_ ipar_, real_8 _p_ phi_, 
  2527  real_8 _p_ delta_, real_8 _p_ e_, real_8 _p_ wm_, int_4 _p_ iwm_, real_8 _p_ alpha_, real_8 _p_ beta_, real_8 _p_ 
  2528  gamma_, real_8 _p_ psi_, real_8 _p_ sigma_, real_8 _p_ cj_, real_8 _p_ cjold_, real_8 _p_ hold_, real_8 _p_ s_, real_8 
  2529  _p_ hmin_, real_8 _p_ uround_, int_4 _p_ iphase_, int_4 _p_ jcalc_, int_4 _p_ k_, int_4 _p_ kold_, int_4 _p_ ns_, int_4 
  2530  _p_ nonneg_, int_4 _p_ ntemp_)
  2531  { // ** body not listed **
  2968  }
  2969  
  2970  int_4 _ddatrp (real_8 _p_ x_, real_8 _p_ xout_, real_8 _p_ yout_, real_8 _p_ ypout_, int_4 _p_ neq_, int_4 _p_ kold_, 
  2971  real_8 _p_ phi_, real_8 _p_ psi_)
  2972  { // ** body not listed **
  2995  }
  2996  
  2997  int_4 _ddawts (int_4 _p_ neq_, int_4 _p_ iwt_, real_8 _p_ rtol_, real_8 _p_ atol_, real_8 _p_ y_, real_8 _p_ wt_, 
  2998  real_8 _p_ rpar_, int_4 _p_ ipar_)
  2999  { // ** body not listed **
  3015  }
  3016  
  3017  int_4 _sdaini (real_4 _p_ x_, real_4 _p_ y_, real_4 _p_ yprime_, int_4 _p_ neq_, int_4 (*_res)(), int_4 (*_jac)(), 
  3018  real_4 _p_ h_, real_4 _p_ wt_, int_4 _p_ idid_, real_4 _p_ rpar_, int_4 _p_ ipar_, real_4 _p_ phi_, real_4 _p_ delta_, 
  3019  real_4 _p_ e_, real_4 _p_ wm_, int_4 _p_ iwm_, real_4 _p_ hmin_, real_4 _p_ uround_, int_4 _p_ nonneg_, int_4 _p_ 
  3020  ntemp_)
  3021  { // ** body not listed **
  3211  }
  3212  
  3213  int_4 _sdajac (int_4 _p_ neq_, real_4 _p_ x_, real_4 _p_ y_, real_4 _p_ yprime_, real_4 _p_ delta_, real_4 _p_ cj_, 
  3214  real_4 _p_ h_, int_4 _p_ ier_, real_4 _p_ wt_, real_4 _p_ e_, real_4 _p_ wm_, int_4 _p_ iwm_, int_4 (*_res)(), int_4 
  3215  _p_ ires_, real_4 _p_ uround_, int_4 (*_jac)(), real_4 _p_ rpar_, int_4 _p_ ipar_, int_4 _p_ ntemp_)
  3216  { // ** body not listed **
  3324  }
  3325  
  3326  real_4 _sdanrm (int_4 _p_ neq_, real_4 _p_ v_, real_4 _p_ wt_, real_4 _p_ rpar_, int_4 _p_ ipar_)
  3327  { // ** body not listed **
  3350  }
  3351  
  3352  int_4 _sdaslv (int_4 _p_ neq_, real_4 _p_ delta_, real_4 _p_ wm_, int_4 _p_ iwm_)
  3353  { // ** body not listed **
  3377  }
  3378  
  3379  int_4 _sdassl (real_4 (*_res)(), int_4 _p_ neq_, real_4 _p_ t_, real_4 _p_ y_, real_4 _p_ yprime_, real_4 _p_ tout_, 
  3380  int_4 _p_ info_, real_4 _p_ rtol_, real_4 _p_ atol_, int_4 _p_ idid_, real_4 _p_ rwork_, int_4 _p_ lrw_, int_4 _p_ 
  3381  iwork_, int_4 _p_ liw_, real_4 _p_ rpar_, int_4 _p_ ipar_, int_4 (*_jac)())
  3382  { // ** body not listed **
  5339  }
  5340  
  5341  int_4 _sdastp (real_4 _p_ x_, real_4 _p_ y_, real_4 _p_ yprime_, int_4 _p_ neq_, int_4 (*_res)(), int_4 (*_jac)(), 
  5342  real_4 _p_ h_, real_4 _p_ wt_, int_4 _p_ jstart_, int_4 _p_ idid_, real_4 _p_ rpar_, int_4 _p_ ipar_, real_4 _p_ phi_, 
  5343  real_4 _p_ delta_, real_4 _p_ e_, real_4 _p_ wm_, int_4 _p_ iwm_, real_4 _p_ alpha_, real_4 _p_ beta_, real_4 _p_ 
  5344  gamma_, real_4 _p_ psi_, real_4 _p_ sigma_, real_4 _p_ cj_, real_4 _p_ cjold_, real_4 _p_ hold_, real_4 _p_ s_, real_4 
  5345  _p_ hmin_, real_4 _p_ uround_, int_4 _p_ iphase_, int_4 _p_ jcalc_, int_4 _p_ k_, int_4 _p_ kold_, int_4 _p_ ns_, int_4 
  5346  _p_ nonneg_, int_4 _p_ ntemp_)
  5347  { // ** body not listed **
  5784  }
  5785  
  5786  int_4 _sdatrp (real_4 _p_ x_, real_4 _p_ xout_, real_4 _p_ yout_, real_4 _p_ ypout_, int_4 _p_ neq_, int_4 _p_ kold_, 
  5787  real_4 _p_ phi_, real_4 _p_ psi_)
  5788  { // ** body not listed **
  5811  }
  5812  
  5813  int_4 _sdawts (int_4 _p_ neq_, int_4 _p_ iwt_, real_4 _p_ rtol_, real_4 _p_ atol_, real_4 _p_ y_, real_4 _p_ wt_, 
  5814  real_4 _p_ rpar_, int_4 _p_ ipar_)
  5815  { // ** body not listed **
  5831  }
  5832  


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