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.10
    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  };
   157  (*_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 
   158  _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_, 
   159  int_4 _p_ ntemp_);
   161  _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)(), 
   162  int_4 _p_ ires_, real_8 _p_ uround_, int_4 (*_jac)(), real_8 _p_ rpar_, int_4 _p_ ipar_, int_4 _p_ ntemp_);
   166  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 
   167  _p_ iwork_, int_4 _p_ liw_, real_8 _p_ rpar_, int_4 _p_ ipar_, int_4 (*_jac)());
   169  (*_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 
   170  _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 
   171  _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_, 
   172  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_
   173  , int_4 _p_ nonneg_, int_4 _p_ ntemp_);
   175  _p_ kold_, real_8 _p_ phi_, real_8 _p_ psi_);
   177  wt_, real_8 _p_ rpar_, int_4 _p_ ipar_);
   179  (*_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 
   180  _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_, 
   181  int_4 _p_ ntemp_);
   183  _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)(), 
   184  int_4 _p_ ires_, real_4 _p_ uround_, int_4 (*_jac)(), real_4 _p_ rpar_, int_4 _p_ ipar_, int_4 _p_ ntemp_);
   188  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 
   189  _p_ iwork_, int_4 _p_ liw_, real_4 _p_ rpar_, int_4 _p_ ipar_, int_4 (*_jac)());
   191  (*_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 
   192  _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 
   193  _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_, 
   194  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_
   195  , int_4 _p_ nonneg_, int_4 _p_ ntemp_);
   197  _p_ kold_, real_4 _p_ phi_, real_4 _p_ psi_);
   199  wt_, real_4 _p_ rpar_, int_4 _p_ ipar_);
   200  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)(), 
   201  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_, 
   202  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_ 
   203  ntemp_)
   204  { // ** body not listed **
   394  }
   395  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_, 
   396  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 
   397  _p_ ires_, real_8 _p_ uround_, int_4 (*_jac)(), real_8 _p_ rpar_, int_4 _p_ ipar_, int_4 _p_ ntemp_)
   398  { // ** body not listed **
   506  }
   507  real_8 _ddanrm (int_4 _p_ neq_, real_8 _p_ v_, real_8 _p_ wt_, real_8 _p_ rpar_, int_4 _p_ ipar_)
   508  { // ** body not listed **
   531  }
   532  int_4 _ddaslv (int_4 _p_ neq_, real_8 _p_ delta_, real_8 _p_ wm_, int_4 _p_ iwm_)
   533  { // ** body not listed **
   557  }
   558  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_, 
   559  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_ 
   560  iwork_, int_4 _p_ liw_, real_8 _p_ rpar_, int_4 _p_ ipar_, int_4 (*_jac)())
   561  { // ** body not listed **
  2518  }
  2519  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)(), 
  2520  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_, 
  2521  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_ 
  2522  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 
  2523  _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 
  2524  _p_ nonneg_, int_4 _p_ ntemp_)
  2525  { // ** body not listed **
  2962  }
  2963  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_, 
  2964  real_8 _p_ phi_, real_8 _p_ psi_)
  2965  { // ** body not listed **
  2988  }
  2989  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_, 
  2990  real_8 _p_ rpar_, int_4 _p_ ipar_)
  2991  { // ** body not listed **
  3007  }
  3008  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)(), 
  3009  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_, 
  3010  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_ 
  3011  ntemp_)
  3012  { // ** body not listed **
  3202  }
  3203  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_, 
  3204  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 
  3205  _p_ ires_, real_4 _p_ uround_, int_4 (*_jac)(), real_4 _p_ rpar_, int_4 _p_ ipar_, int_4 _p_ ntemp_)
  3206  { // ** body not listed **
  3314  }
  3315  real_4 _sdanrm (int_4 _p_ neq_, real_4 _p_ v_, real_4 _p_ wt_, real_4 _p_ rpar_, int_4 _p_ ipar_)
  3316  { // ** body not listed **
  3339  }
  3340  int_4 _sdaslv (int_4 _p_ neq_, real_4 _p_ delta_, real_4 _p_ wm_, int_4 _p_ iwm_)
  3341  { // ** body not listed **
  3365  }
  3366  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_, 
  3367  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_ 
  3368  iwork_, int_4 _p_ liw_, real_4 _p_ rpar_, int_4 _p_ ipar_, int_4 (*_jac)())
  3369  { // ** body not listed **
  5326  }
  5327  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)(), 
  5328  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_, 
  5329  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_ 
  5330  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 
  5331  _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 
  5332  _p_ nonneg_, int_4 _p_ ntemp_)
  5333  { // ** body not listed **
  5770  }
  5771  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_, 
  5772  real_4 _p_ phi_, real_4 _p_ psi_)
  5773  { // ** body not listed **
  5796  }
  5797  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_, 
  5798  real_4 _p_ rpar_, int_4 _p_ ipar_)
  5799  { // ** body not listed **
  5815  }


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