mathlib-minpack.c

     1  //! @file mathlib-minpack.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  //! Subprograms from MINPACK
    24  
    25  // Compiled from Fortran source code by VIF.
    26  
    27  // Minpack includes software for solving nonlinear equations and
    28  // nonlinear least squares problems.  Five algorithmic paths each include
    29  // a core subroutine and an easy-to-use driver.  The algorithms proceed
    30  // either from an analytic specification of the Jacobian matrix or
    31  // directly from the problem functions.  The paths include facilities for
    32  // systems of equations with a banded Jacobian matrix, for least squares
    33  // problems with a large amount of data, and for checking the consistency
    34  // of the Jacobian matrix with the functions.
    35  // 
    36  // This directory contains the double-precision versions.
    37  // 
    38  // Origonal authors are Jorge More, Burt Garbow, and Ken Hillstrom.
    39  // 
    40  // This version of MINPACK is adapted for VIF.
    41  // Adaptations are trivial, concerning choosing alternative names for
    42  // variable names that coincided with intrinsic functions.
    43  // 
    44  // Source: netlib.org/minpack/
    45  
    46  // The license for MINPACK Fortran source code is:
    47  //
    48  // Minpack Copyright Notice (1999) University of Chicago.  All rights reserved
    49  // 
    50  // Redistribution and use in source and binary forms, with or
    51  // without modification, are permitted provided that the
    52  // following conditions are met:
    53  // 
    54  // 1. Redistributions of source code must retain the above
    55  // copyright notice, this list of conditions and the following
    56  // disclaimer.
    57  // 
    58  // 2. Redistributions in binary form must reproduce the above
    59  // copyright notice, this list of conditions and the following
    60  // disclaimer in the documentation and/or other materials
    61  // provided with the distribution.
    62  // 
    63  // 3. The end-user documentation included with the
    64  // redistribution, if any, must include the following
    65  // acknowledgment:
    66  // 
    67  //    "This product includes software developed by the
    68  //    University of Chicago, as Operator of Argonne National
    69  //    Laboratory.
    70  // 
    71  // Alternately, this acknowledgment may appear in the software
    72  // itself, if and wherever such third-party acknowledgments
    73  // normally appear.
    74  // 
    75  // 4. WARRANTY DISCLAIMER. THE SOFTWARE IS SUPPLIED "AS IS"
    76  // WITHOUT WARRANTY OF ANY KIND. THE COPYRIGHT HOLDER, THE
    77  // UNITED STATES, THE UNITED STATES DEPARTMENT OF ENERGY, AND
    78  // THEIR EMPLOYEES: (1) DISCLAIM ANY WARRANTIES, EXPRESS OR
    79  // IMPLIED, INCLUDING BUT NOT LIMITED TO ANY IMPLIED WARRANTIES
    80  // OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE, TITLE
    81  // OR NON-INFRINGEMENT, (2) DO NOT ASSUME ANY LEGAL LIABILITY
    82  // OR RESPONSIBILITY FOR THE ACCURACY, COMPLETENESS, OR
    83  // USEFULNESS OF THE SOFTWARE, (3) DO NOT REPRESENT THAT USE OF
    84  // THE SOFTWARE WOULD NOT INFRINGE PRIVATELY OWNED RIGHTS, (4)
    85  // DO NOT WARRANT THAT THE SOFTWARE WILL FUNCTION
    86  // UNINTERRUPTED, THAT IT IS ERROR-FREE OR THAT ANY ERRORS WILL
    87  // BE CORRECTED.
    88  // 
    89  // 5. LIMITATION OF LIABILITY. IN NO EVENT WILL THE COPYRIGHT
    90  // HOLDER, THE UNITED STATES, THE UNITED STATES DEPARTMENT OF
    91  // ENERGY, OR THEIR EMPLOYEES: BE LIABLE FOR ANY INDIRECT,
    92  // INCIDENTAL, CONSEQUENTIAL, SPECIAL OR PUNITIVE DAMAGES OF
    93  // ANY KIND OR NATURE, INCLUDING BUT NOT LIMITED TO LOSS OF
    94  // PROFITS OR LOSS OF DATA, FOR ANY REASON WHATSOEVER, WHETHER
    95  // SUCH LIABILITY IS ASSERTED ON THE BASIS OF CONTRACT, TORT
    96  // (INCLUDING NEGLIGENCE OR STRICT LIABILITY), OR OTHERWISE,
    97  // EVEN IF ANY OF SAID PARTIES HAS BEEN WARNED OF THE
    98  // POSSIBILITY OF SUCH LOSS OR DAMAGES.
    99  // 
   100  // 
   101  
   102  // VIF  THU 20 NOV 2025 22:20:50  ** MARCEL                       ** MINPACK                                          PAGE 00001
   103  
   104  
   105  
   106  //                                   M     M    A    RRRRRR   CCCCC  EEEEEEE L
   107  //                                   MM   MM   A A   R     R C     C E       L
   108  //                                   M M M M  A   A  R     R C       E       L
   109  //                                   M  M  M A     A RRRRRR  C       EEEEE   L
   110  //                                   M     M AAAAAAA R   R   C       E       L
   111  //                                   M     M A     A R    R  C     C E       L
   112  //                                   M     M A     A R     R  CCCCC  EEEEEEE LLLLLLL
   113  
   114  //                                M     M   III   N     N PPPPPP     A     CCCCC  K    K
   115  //                                MM   MM    I    NN    N P     P   A A   C     C K   K
   116  //                                M M M M    I    N N   N P     P  A   A  C       K  K
   117  //                                M  M  M    I    N  N  N PPPPPP  A     A C       KKK
   118  //                                M     M    I    N   N N P       AAAAAAA C       K  K
   119  //                                M     M    I    N    NN P       A     A C     C K   K
   120  //                                M     M   III   N     N P       A     A  CCCCC  K    K
   121  
   122  
   123  
   124  
   125  // VIF  THU 20 NOV 2025 22:20:50  ** GLOBAL SCOPE                 ** DIAGNOSTICS                                      PAGE 00002
   126  
   127  // ** linker     ** object size 215976 bytes
   128  // ** statistics ** 23 subprograms, no errors, no warnings
   129  
   130  
   131  // VIF  THU 20 NOV 2025 22:20:50  ** GLOBAL SCOPE                 ** JOB CONTROL                                      PAGE 00003
   132  
   133  
   134  //   Line    JCL *...*....1....|....2....|....3....|....4....|....5....|....6....|....7..*.|....8
   135  
   136  
   137  
   138  // VIF  THU 20 NOV 2025 22:20:50  ** GLOBAL SCOPE                 ** DEFINITIONS                                      PAGE 00004
   139  
   140  /*
   141  Generated by VIF - experimental VIntage Fortran compiler.
   142  VIF release 1.4.1
   143  */
   144  
   145  #if defined (__GNUC__)
   146  #pragma GCC diagnostic ignored "-Wimplicit-function-declaration"
   147  #pragma GCC diagnostic ignored "-Wincompatible-pointer-types"
   148  #if (__GNUC__ >= 14)
   149  #pragma GCC diagnostic ignored "-Wdeclaration-missing-parameter-type"
   150  #pragma GCC diagnostic ignored "-Wimplicit-int"
   151  #pragma GCC diagnostic ignored "-Wint-conversion"
   152  #pragma GCC diagnostic ignored "-Wreturn-mismatch"
   153  #endif
   154  #else
   155  #error VIF requires GCC
   156  #endif
   157  
   158  #include <vif.h>
   159  
   160  static int_4 _km1 = -1, _k0 = 0, _k1 = 1;
   161  
   162  
   163  
   164  
   165  
   166  // VIF  THU 20 NOV 2025 22:20:50  ** GLOBAL SCOPE                 ** TYPEDEFS                                         PAGE 00005
   167  
   168  static FORMAT *__fmt_a = NULL;
   169  
   170  
   171  // VIF  THU 20 NOV 2025 22:20:50  ** GLOBAL SCOPE                 ** FREQUENCY TABLE                                  PAGE 00006
   172  
   173  #define __ncalls 24
   174  static CALLS __calls[__ncalls] = {
   175  { // ** body not listed **"chkder", 0}, // subroutine
   177  { // ** body not listed **"dpmpar", 0}, // real*8 function
   179  { // ** body not listed **"fdjac1", 0}, // subroutine
   181  { // ** body not listed **"hybrd1", 0}, // subroutine
   183  { // ** body not listed **"hybrj1", 0}, // subroutine
   185  { // ** body not listed **"lmder1", 0}, // subroutine
   187  { // ** body not listed **"lmdif1", 0}, // subroutine
   189  { // ** body not listed **"lmpar", 0}, // subroutine
   191  { // ** body not listed **"lmstr", 0}, // subroutine
   193  { // ** body not listed **"qrfac", 0}, // subroutine
   195  { // ** body not listed **"r1mpyq", 0}, // subroutine
   197  { // ** body not listed **"rwupdt", 0}, // subroutine
   199  };
   200  
   201  
   202  
   203  // VIF  THU 20 NOV 2025 22:20:50  ** GLOBAL SCOPE                 ** COMMON BLOCKS                                    PAGE 00007
   204  
   205  
   206  
   207  // VIF  THU 20 NOV 2025 22:20:50  ** GLOBAL SCOPE                 ** PROTOTYPES                                       PAGE 00008
   208  
   209  
   210  prototype int_4 _chkder (int_4 _p_ m_, int_4 _p_ n_, real_8 _p_ x_, real_8 _p_ fvec_, real_8 _p_ fjac_, int_4 _p_ 
   211  ldfjac_, real_8 _p_ xp_, real_8 _p_ fvecp_, int_4 _p_ mode_, real_8 _p_ err_);
   212  prototype int_4 _dogleg (int_4 _p_ n_, real_8 _p_ r_, int_4 _p_ lr_, real_8 _p_ diag_, real_8 _p_ qtb_, real_8 _p_ 
   213  delta_, real_8 _p_ x_, real_8 _p_ wa1_, real_8 _p_ wa2_);
   214  prototype real_8 _dpmpar (int_4 _p_ i_);
   215  prototype real_8 _enorm (int_4 _p_ n_, real_8 _p_ x_);
   216  prototype int_4 _fdjac1 (int_4 (*_fcn)(), int_4 _p_ n_, real_8 _p_ x_, real_8 _p_ fvec_, real_8 _p_ fjac_, int_4 _p_ 
   217  ldfjac_, int_4 _p_ iflag_, int_4 _p_ ml_, int_4 _p_ mu_, real_8 _p_ epsfcn_, real_8 _p_ wa1_, real_8 _p_ wa2_);
   218  prototype int_4 _fdjac2 (int_4 (*_fcn)(), int_4 _p_ m_, int_4 _p_ n_, real_8 _p_ x_, real_8 _p_ fvec_, real_8 _p_ fjac_
   219  , int_4 _p_ ldfjac_, int_4 _p_ iflag_, real_8 _p_ epsfcn_, real_8 _p_ wa_);
   220  prototype int_4 _hybrd1 (real_4 (*_fcn)(), int_4 _p_ n_, real_8 _p_ x_, real_8 _p_ fvec_, real_8 _p_ tol_, int_4 _p_ 
   221  info_, real_8 _p_ wa_, int_4 _p_ lwa_);
   222  prototype int_4 _hybrd (int_4 (*_fcn)(), int_4 _p_ n_, real_8 _p_ x_, real_8 _p_ fvec_, real_8 _p_ xtol_, int_4 _p_ 
   223  maxfev_, int_4 _p_ ml_, int_4 _p_ mu_, real_8 _p_ epsfcn_, real_8 _p_ diag_, int_4 _p_ mode_, real_8 _p_ factor_, int_4 
   224  _p_ nprint_, int_4 _p_ info_, int_4 _p_ nfev_, real_8 _p_ fjac_, int_4 _p_ ldfjac_, real_8 _p_ r_, int_4 _p_ lr_, 
   225  real_8 _p_ qtf_, real_8 _p_ wa1_, real_8 _p_ wa2_, real_8 _p_ wa3_, real_8 _p_ wa4_);
   226  prototype int_4 _hybrj1 (real_4 (*_fcn)(), int_4 _p_ n_, real_8 _p_ x_, real_8 _p_ fvec_, real_8 _p_ fjac_, int_4 _p_ 
   227  ldfjac_, real_8 _p_ tol_, int_4 _p_ info_, real_8 _p_ wa_, int_4 _p_ lwa_);
   228  prototype int_4 _hybrj (int_4 (*_fcn)(), int_4 _p_ n_, real_8 _p_ x_, real_8 _p_ fvec_, real_8 _p_ fjac_, int_4 _p_ 
   229  ldfjac_, real_8 _p_ xtol_, int_4 _p_ maxfev_, real_8 _p_ diag_, int_4 _p_ mode_, real_8 _p_ factor_, int_4 _p_ nprint_, 
   230  int_4 _p_ info_, int_4 _p_ nfev_, int_4 _p_ njev_, real_8 _p_ r_, int_4 _p_ lr_, real_8 _p_ qtf_, real_8 _p_ wa1_, 
   231  real_8 _p_ wa2_, real_8 _p_ wa3_, real_8 _p_ wa4_);
   232  prototype int_4 _lmder1 (real_4 (*_fcn)(), int_4 _p_ m_, int_4 _p_ n_, real_8 _p_ x_, real_8 _p_ fvec_, real_8 _p_ 
   233  fjac_, int_4 _p_ ldfjac_, real_8 _p_ tol_, int_4 _p_ info_, int_4 _p_ ipvt_, real_8 _p_ wa_, int_4 _p_ lwa_);
   234  prototype int_4 _lmder (int_4 (*_fcn)(), int_4 _p_ m_, int_4 _p_ n_, real_8 _p_ x_, real_8 _p_ fvec_, real_8 _p_ fjac_, 
   235  int_4 _p_ ldfjac_, real_8 _p_ ftol_, real_8 _p_ xtol_, real_8 _p_ gtol_, int_4 _p_ maxfev_, real_8 _p_ diag_, int_4 _p_ 
   236  mode_, real_8 _p_ factor_, int_4 _p_ nprint_, int_4 _p_ info_, int_4 _p_ nfev_, int_4 _p_ njev_, int_4 _p_ ipvt_, 
   237  real_8 _p_ qtf_, real_8 _p_ wa1_, real_8 _p_ wa2_, real_8 _p_ wa3_, real_8 _p_ wa4_);
   238  prototype int_4 _lmdif1 (real_4 (*_fcn)(), int_4 _p_ m_, int_4 _p_ n_, real_8 _p_ x_, real_8 _p_ fvec_, real_8 _p_ tol_
   239  , int_4 _p_ info_, int_4 _p_ iwa_, real_8 _p_ wa_, int_4 _p_ lwa_);
   240  prototype int_4 _lmdif (int_4 (*_fcn)(), int_4 _p_ m_, int_4 _p_ n_, real_8 _p_ x_, real_8 _p_ fvec_, real_8 _p_ ftol_, 
   241  real_8 _p_ xtol_, real_8 _p_ gtol_, int_4 _p_ maxfev_, real_8 _p_ epsfcn_, real_8 _p_ diag_, int_4 _p_ mode_, real_8 
   242  _p_ factor_, int_4 _p_ nprint_, int_4 _p_ info_, int_4 _p_ nfev_, real_8 _p_ fjac_, int_4 _p_ ldfjac_, int_4 _p_ ipvt_, 
   243  real_8 _p_ qtf_, real_8 _p_ wa1_, real_8 _p_ wa2_, real_8 _p_ wa3_, real_8 _p_ wa4_);
   244  prototype int_4 _lmpar (int_4 _p_ n_, real_8 _p_ r_, int_4 _p_ ldr_, int_4 _p_ ipvt_, real_8 _p_ diag_, real_8 _p_ qtb_
   245  , real_8 _p_ delta_, real_8 _p_ par_, real_8 _p_ x_, real_8 _p_ sdiag_, real_8 _p_ wa1_, real_8 _p_ wa2_);
   246  prototype int_4 _lmstr1 (real_4 (*_fcn)(), int_4 _p_ m_, int_4 _p_ n_, real_8 _p_ x_, real_8 _p_ fvec_, real_8 _p_ 
   247  fjac_, int_4 _p_ ldfjac_, real_8 _p_ tol_, int_4 _p_ info_, int_4 _p_ ipvt_, real_8 _p_ wa_, int_4 _p_ lwa_);
   248  prototype int_4 _lmstr (int_4 (*_fcn)(), int_4 _p_ m_, int_4 _p_ n_, real_8 _p_ x_, real_8 _p_ fvec_, real_8 _p_ fjac_, 
   249  int_4 _p_ ldfjac_, real_8 _p_ ftol_, real_8 _p_ xtol_, real_8 _p_ gtol_, int_4 _p_ maxfev_, real_8 _p_ diag_, int_4 _p_ 
   250  mode_, real_8 _p_ factor_, int_4 _p_ nprint_, int_4 _p_ info_, int_4 _p_ nfev_, int_4 _p_ njev_, int_4 _p_ ipvt_, 
   251  real_8 _p_ qtf_, real_8 _p_ wa1_, real_8 _p_ wa2_, real_8 _p_ wa3_, real_8 _p_ wa4_);
   252  prototype int_4 _qform (int_4 _p_ m_, int_4 _p_ n_, real_8 _p_ q_, int_4 _p_ ldq_, real_8 _p_ wa_);
   253  prototype int_4 _qrfac (int_4 _p_ m_, int_4 _p_ n_, real_8 _p_ a_, int_4 _p_ lda_, logical_4 _p_ pivot_, int_4 _p_ 
   254  ipvt_, int_4 _p_ lipvt_, real_8 _p_ rdiag_, real_8 _p_ acnorm_, real_8 _p_ wa_);
   255  prototype int_4 _qrsolv (int_4 _p_ n_, real_8 _p_ r_, int_4 _p_ ldr_, int_4 _p_ ipvt_, real_8 _p_ diag_, real_8 _p_ 
   256  qtb_, real_8 _p_ x_, real_8 _p_ sdiag_, real_8 _p_ wa_);
   257  prototype int_4 _r1mpyq (int_4 _p_ m_, int_4 _p_ n_, real_8 _p_ a_, int_4 _p_ lda_, real_8 _p_ v_, real_8 _p_ w_);
   258  prototype int_4 _r1updt (int_4 _p_ m_, int_4 _p_ n_, real_8 _p_ s_, int_4 _p_ ls_, real_8 _p_ u_, real_8 _p_ v_, real_8 
   259  // VIF  THU 20 NOV 2025 22:20:50  ** GLOBAL SCOPE                 ** PROTOTYPES                                       PAGE 00009
   260  
   261  _p_ w_, logical_4 _p_ sing_);
   262  prototype int_4 _rwupdt (int_4 _p_ n_, real_8 _p_ r_, int_4 _p_ ldr_, real_8 _p_ w_, real_8 _p_ b_, real_8 _p_ alpha_, 
   263  real_8 _p_ cost_, real_8 _p_ sint_);
   264  
   265  
   266  
   267  
   268  
   269  
   270  
   271  
   272  
   273  
   274  
   275  
   276  
   277  // VIF  THU 20 NOV 2025 22:20:50  ** CHKDER                       ** CHKDER                                           PAGE 00010
   278  
   279  //                    SSSSS  U     U BBBBBB  RRRRRR   OOOOO  U     U TTTTTTT   III   N     N EEEEEEE
   280  //                   S     S U     U B     B R     R O     O U     U    T       I    NN    N E
   281  //                   S       U     U B     B R     R O     O U     U    T       I    N N   N E
   282  //                    SSSSS  U     U BBBBBB  RRRRRR  O     O U     U    T       I    N  N  N EEEEE
   283  //                         S U     U B     B R   R   O     O U     U    T       I    N   N N E
   284  //                   S     S U     U B     B R    R  O     O U     U    T       I    N    NN E
   285  //                    SSSSS   UUUUU  BBBBBB  R     R  OOOOO   UUUUU     T      III   N     N EEEEEEE
   286  
   287  //                                    CCCCC  H     H K    K  DDDDDD  EEEEEEE RRRRRR
   288  //                                   C     C H     H K   K   D     D E       R     R
   289  //                                   C       H     H K  K    D     D E       R     R
   290  //                                   C       HHHHHHH KKK     D     D EEEEE   RRRRRR
   291  //                                   C       H     H K  K    D     D E       R   R
   292  //                                   C     C H     H K   K   D     D E       R    R
   293  //                                    CCCCC  H     H K    K  DDDDDD  EEEEEEE R     R
   294  
   295  
   296  // VIF  THU 20 NOV 2025 22:20:50  ** CHKDER                       ** DIAGNOSTICS                                      PAGE 00011
   297  
   298  
   299  // VIF  THU 20 NOV 2025 22:20:50  ** CHKDER                       ** GENERATED CODE                                   PAGE 00012
   300  
   301  int_4 _chkder (int_4 _p_ m_, int_4 _p_ n_, real_8 _p_ x_, real_8 _p_ fvec_, real_8 _p_ fjac_, int_4 _p_ ldfjac_, real_8 
   302  _p_ xp_, real_8 _p_ fvecp_, int_4 _p_ mode_, real_8 _p_ err_)
   303  { // ** body not listed **
   379  }
   380  
   381  // VIF  THU 20 NOV 2025 22:20:50  ** DOGLEG                       ** DOGLEG                                           PAGE 00014
   382  
   383  //                    SSSSS  U     U BBBBBB  RRRRRR   OOOOO  U     U TTTTTTT   III   N     N EEEEEEE
   384  //                   S     S U     U B     B R     R O     O U     U    T       I    NN    N E
   385  //                   S       U     U B     B R     R O     O U     U    T       I    N N   N E
   386  //                    SSSSS  U     U BBBBBB  RRRRRR  O     O U     U    T       I    N  N  N EEEEE
   387  //                         S U     U B     B R   R   O     O U     U    T       I    N   N N E
   388  //                   S     S U     U B     B R    R  O     O U     U    T       I    N    NN E
   389  //                    SSSSS   UUUUU  BBBBBB  R     R  OOOOO   UUUUU     T      III   N     N EEEEEEE
   390  
   391  //                                   DDDDDD   OOOOO   GGGGG  L       EEEEEEE  GGGGG
   392  //                                   D     D O     O G     G L       E       G     G
   393  //                                   D     D O     O G       L       E       G
   394  //                                   D     D O     O G  GGGG L       EEEEE   G  GGGG
   395  //                                   D     D O     O G     G L       E       G     G
   396  //                                   D     D O     O G     G L       E       G     G
   397  //                                   DDDDDD   OOOOO   GGGGG  LLLLLLL EEEEEEE  GGGGG
   398  
   399  
   400  // VIF  THU 20 NOV 2025 22:20:50  ** DOGLEG                       ** DIAGNOSTICS                                      PAGE 00015
   401  
   402  
   403  // VIF  THU 20 NOV 2025 22:20:50  ** DOGLEG                       ** GENERATED CODE                                   PAGE 00016
   404  
   405  int_4 _dogleg (int_4 _p_ n_, real_8 _p_ r_, int_4 _p_ lr_, real_8 _p_ diag_, real_8 _p_ qtb_, real_8 _p_ delta_, real_8 
   406  _p_ x_, real_8 _p_ wa1_, real_8 _p_ wa2_)
   407  { // ** body not listed **
   521  }
   522  
   523  // VIF  THU 20 NOV 2025 22:20:50  ** DPMPAR                       ** DPMPAR                                           PAGE 00019
   524  
   525  //                                   RRRRRR  EEEEEEE    A    L                88888
   526  //                                   R     R E         A A   L        *   *  8     8
   527  //                                   R     R E        A   A  L         * *   8     8
   528  //                                   RRRRRR  EEEEE   A     A L       *******  88888
   529  //                                   R   R   E       AAAAAAA L         * *   8     8
   530  //                                   R    R  E       A     A L        *   *  8     8
   531  //                                   R     R EEEEEEE A     A LLLLLLL          88888
   532  
   533  //                           FFFFFFF U     U N     N  CCCCC  TTTTTTT   III    OOOOO  N     N
   534  //                           F       U     U NN    N C     C    T       I    O     O NN    N
   535  //                           F       U     U N N   N C          T       I    O     O N N   N
   536  //                           FFFFF   U     U N  N  N C          T       I    O     O N  N  N
   537  //                           F       U     U N   N N C          T       I    O     O N   N N
   538  //                           F       U     U N    NN C     C    T       I    O     O N    NN
   539  //                           F        UUUUU  N     N  CCCCC     T      III    OOOOO  N     N
   540  
   541  //                                   DDDDDD  PPPPPP  M     M PPPPPP     A    RRRRRR
   542  //                                   D     D P     P MM   MM P     P   A A   R     R
   543  //                                   D     D P     P M M M M P     P  A   A  R     R
   544  //                                   D     D PPPPPP  M  M  M PPPPPP  A     A RRRRRR
   545  //                                   D     D P       M     M P       AAAAAAA R   R
   546  //                                   D     D P       M     M P       A     A R    R
   547  //                                   DDDDDD  P       M     M P       A     A R     R
   548  
   549  
   550  // VIF  THU 20 NOV 2025 22:20:50  ** DPMPAR                       ** DIAGNOSTICS                                      PAGE 00020
   551  
   552  
   553  // VIF  THU 20 NOV 2025 22:20:50  ** DPMPAR                       ** GENERATED CODE                                   PAGE 00021
   554  
   555  real_8 _dpmpar (int_4 _p_ i_)
   556  { // ** body not listed **
   577  }
   578  
   579  // VIF  THU 20 NOV 2025 22:20:50  ** ENORM                        ** ENORM                                            PAGE 00022
   580  
   581  //                                   RRRRRR  EEEEEEE    A    L                88888
   582  //                                   R     R E         A A   L        *   *  8     8
   583  //                                   R     R E        A   A  L         * *   8     8
   584  //                                   RRRRRR  EEEEE   A     A L       *******  88888
   585  //                                   R   R   E       AAAAAAA L         * *   8     8
   586  //                                   R    R  E       A     A L        *   *  8     8
   587  //                                   R     R EEEEEEE A     A LLLLLLL          88888
   588  
   589  //                           FFFFFFF U     U N     N  CCCCC  TTTTTTT   III    OOOOO  N     N
   590  //                           F       U     U NN    N C     C    T       I    O     O NN    N
   591  //                           F       U     U N N   N C          T       I    O     O N N   N
   592  //                           FFFFF   U     U N  N  N C          T       I    O     O N  N  N
   593  //                           F       U     U N   N N C          T       I    O     O N   N N
   594  //                           F       U     U N    NN C     C    T       I    O     O N    NN
   595  //                           F        UUUUU  N     N  CCCCC     T      III    OOOOO  N     N
   596  
   597  //                                       EEEEEEE N     N  OOOOO  RRRRRR  M     M
   598  //                                       E       NN    N O     O R     R MM   MM
   599  //                                       E       N N   N O     O R     R M M M M
   600  //                                       EEEEE   N  N  N O     O RRRRRR  M  M  M
   601  //                                       E       N   N N O     O R   R   M     M
   602  //                                       E       N    NN O     O R    R  M     M
   603  //                                       EEEEEEE N     N  OOOOO  R     R M     M
   604  
   605  
   606  // VIF  THU 20 NOV 2025 22:20:50  ** ENORM                        ** DIAGNOSTICS                                      PAGE 00023
   607  
   608  
   609  // VIF  THU 20 NOV 2025 22:20:50  ** ENORM                        ** GENERATED CODE                                   PAGE 00024
   610  
   611  real_8 _enorm (int_4 _p_ n_, real_8 _p_ x_)
   612  { // ** body not listed **
   717  }
   718  
   719  // VIF  THU 20 NOV 2025 22:20:50  ** FDJAC1                       ** FDJAC1                                           PAGE 00027
   720  
   721  //                    SSSSS  U     U BBBBBB  RRRRRR   OOOOO  U     U TTTTTTT   III   N     N EEEEEEE
   722  //                   S     S U     U B     B R     R O     O U     U    T       I    NN    N E
   723  //                   S       U     U B     B R     R O     O U     U    T       I    N N   N E
   724  //                    SSSSS  U     U BBBBBB  RRRRRR  O     O U     U    T       I    N  N  N EEEEE
   725  //                         S U     U B     B R   R   O     O U     U    T       I    N   N N E
   726  //                   S     S U     U B     B R    R  O     O U     U    T       I    N    NN E
   727  //                    SSSSS   UUUUU  BBBBBB  R     R  OOOOO   UUUUU     T      III   N     N EEEEEEE
   728  
   729  //                                    FFFFFFF DDDDDD        J    A     CCCCC     1
   730  //                                    F       D     D       J   A A   C     C   11
   731  //                                    F       D     D       J  A   A  C        1 1
   732  //                                    FFFFF   D     D       J A     A C          1
   733  //                                    F       D     D J     J AAAAAAA C          1
   734  //                                    F       D     D J     J A     A C     C    1
   735  //                                    F       DDDDDD   JJJJJ  A     A  CCCCC   11111
   736  
   737  
   738  // VIF  THU 20 NOV 2025 22:20:50  ** FDJAC1                       ** DIAGNOSTICS                                      PAGE 00028
   739  
   740  
   741  // VIF  THU 20 NOV 2025 22:20:50  ** FDJAC1                       ** GENERATED CODE                                   PAGE 00029
   742  
   743  int_4 _fdjac1 (int_4 (*_fcn)(), int_4 _p_ n_, real_8 _p_ x_, real_8 _p_ fvec_, real_8 _p_ fjac_, int_4 _p_ ldfjac_, 
   744  int_4 _p_ iflag_, int_4 _p_ ml_, int_4 _p_ mu_, real_8 _p_ epsfcn_, real_8 _p_ wa1_, real_8 _p_ wa2_)
   745  { // ** body not listed **
   819  }
   820  
   821  // VIF  THU 20 NOV 2025 22:20:50  ** FDJAC2                       ** FDJAC2                                           PAGE 00031
   822  
   823  //                    SSSSS  U     U BBBBBB  RRRRRR   OOOOO  U     U TTTTTTT   III   N     N EEEEEEE
   824  //                   S     S U     U B     B R     R O     O U     U    T       I    NN    N E
   825  //                   S       U     U B     B R     R O     O U     U    T       I    N N   N E
   826  //                    SSSSS  U     U BBBBBB  RRRRRR  O     O U     U    T       I    N  N  N EEEEE
   827  //                         S U     U B     B R   R   O     O U     U    T       I    N   N N E
   828  //                   S     S U     U B     B R    R  O     O U     U    T       I    N    NN E
   829  //                    SSSSS   UUUUU  BBBBBB  R     R  OOOOO   UUUUU     T      III   N     N EEEEEEE
   830  
   831  //                                   FFFFFFF DDDDDD        J    A     CCCCC   22222
   832  //                                   F       D     D       J   A A   C     C 2     2
   833  //                                   F       D     D       J  A   A  C             2
   834  //                                   FFFFF   D     D       J A     A C        22222
   835  //                                   F       D     D J     J AAAAAAA C       2
   836  //                                   F       D     D J     J A     A C     C 2
   837  //                                   F       DDDDDD   JJJJJ  A     A  CCCCC  2222222
   838  
   839  
   840  // VIF  THU 20 NOV 2025 22:20:50  ** FDJAC2                       ** DIAGNOSTICS                                      PAGE 00032
   841  
   842  
   843  // VIF  THU 20 NOV 2025 22:20:50  ** FDJAC2                       ** GENERATED CODE                                   PAGE 00033
   844  
   845  int_4 _fdjac2 (int_4 (*_fcn)(), int_4 _p_ m_, int_4 _p_ n_, real_8 _p_ x_, real_8 _p_ fvec_, real_8 _p_ fjac_, int_4 
   846  _p_ ldfjac_, int_4 _p_ iflag_, real_8 _p_ epsfcn_, real_8 _p_ wa_)
   847  { // ** body not listed **
   884  }
   885  
   886  // VIF  THU 20 NOV 2025 22:20:50  ** HYBRD1                       ** HYBRD1                                           PAGE 00034
   887  
   888  //                    SSSSS  U     U BBBBBB  RRRRRR   OOOOO  U     U TTTTTTT   III   N     N EEEEEEE
   889  //                   S     S U     U B     B R     R O     O U     U    T       I    NN    N E
   890  //                   S       U     U B     B R     R O     O U     U    T       I    N N   N E
   891  //                    SSSSS  U     U BBBBBB  RRRRRR  O     O U     U    T       I    N  N  N EEEEE
   892  //                         S U     U B     B R   R   O     O U     U    T       I    N   N N E
   893  //                   S     S U     U B     B R    R  O     O U     U    T       I    N    NN E
   894  //                    SSSSS   UUUUU  BBBBBB  R     R  OOOOO   UUUUU     T      III   N     N EEEEEEE
   895  
   896  //                                    H     H Y     Y BBBBBB  RRRRRR  DDDDDD     1
   897  //                                    H     H  Y   Y  B     B R     R D     D   11
   898  //                                    H     H   Y Y   B     B R     R D     D  1 1
   899  //                                    HHHHHHH    Y    BBBBBB  RRRRRR  D     D    1
   900  //                                    H     H    Y    B     B R   R   D     D    1
   901  //                                    H     H    Y    B     B R    R  D     D    1
   902  //                                    H     H    Y    BBBBBB  R     R DDDDDD   11111
   903  
   904  
   905  // VIF  THU 20 NOV 2025 22:20:50  ** HYBRD1                       ** DIAGNOSTICS                                      PAGE 00035
   906  
   907  
   908  // VIF  THU 20 NOV 2025 22:20:50  ** HYBRD1                       ** GENERATED CODE                                   PAGE 00036
   909  
   910  int_4 _hybrd1 (real_4 (*_fcn)(), int_4 _p_ n_, real_8 _p_ x_, real_8 _p_ fvec_, real_8 _p_ tol_, int_4 _p_ info_, 
   911  real_8 _p_ wa_, int_4 _p_ lwa_)
   912  { // ** body not listed **
   967  }
   968  
   969  // VIF  THU 20 NOV 2025 22:20:50  ** HYBRD                        ** HYBRD                                            PAGE 00038
   970  
   971  //                    SSSSS  U     U BBBBBB  RRRRRR   OOOOO  U     U TTTTTTT   III   N     N EEEEEEE
   972  //                   S     S U     U B     B R     R O     O U     U    T       I    NN    N E
   973  //                   S       U     U B     B R     R O     O U     U    T       I    N N   N E
   974  //                    SSSSS  U     U BBBBBB  RRRRRR  O     O U     U    T       I    N  N  N EEEEE
   975  //                         S U     U B     B R   R   O     O U     U    T       I    N   N N E
   976  //                   S     S U     U B     B R    R  O     O U     U    T       I    N    NN E
   977  //                    SSSSS   UUUUU  BBBBBB  R     R  OOOOO   UUUUU     T      III   N     N EEEEEEE
   978  
   979  //                                       H     H Y     Y BBBBBB  RRRRRR  DDDDDD
   980  //                                       H     H  Y   Y  B     B R     R D     D
   981  //                                       H     H   Y Y   B     B R     R D     D
   982  //                                       HHHHHHH    Y    BBBBBB  RRRRRR  D     D
   983  //                                       H     H    Y    B     B R   R   D     D
   984  //                                       H     H    Y    B     B R    R  D     D
   985  //                                       H     H    Y    BBBBBB  R     R DDDDDD
   986  
   987  
   988  // VIF  THU 20 NOV 2025 22:20:50  ** HYBRD                        ** DIAGNOSTICS                                      PAGE 00039
   989  
   990  
   991  // VIF  THU 20 NOV 2025 22:20:50  ** HYBRD                        ** GENERATED CODE                                   PAGE 00040
   992  
   993  int_4 _hybrd (int_4 (*_fcn)(), int_4 _p_ n_, real_8 _p_ x_, real_8 _p_ fvec_, real_8 _p_ xtol_, int_4 _p_ maxfev_, 
   994  int_4 _p_ ml_, int_4 _p_ mu_, real_8 _p_ epsfcn_, real_8 _p_ diag_, int_4 _p_ mode_, real_8 _p_ factor_, int_4 _p_ 
   995  nprint_, int_4 _p_ info_, int_4 _p_ nfev_, real_8 _p_ fjac_, int_4 _p_ ldfjac_, real_8 _p_ r_, int_4 _p_ lr_, real_8 
   996  _p_ qtf_, real_8 _p_ wa1_, real_8 _p_ wa2_, real_8 _p_ wa3_, real_8 _p_ wa4_)
   997  { // ** body not listed **
  1302  }
  1303  // VIF  THU 20 NOV 2025 22:20:50  ** HYBRD                        ** GENERATED CODE                                   PAGE 00046
  1304  
  1305  
  1306  // VIF  THU 20 NOV 2025 22:20:50  ** HYBRJ1                       ** HYBRJ1                                           PAGE 00047
  1307  
  1308  //                    SSSSS  U     U BBBBBB  RRRRRR   OOOOO  U     U TTTTTTT   III   N     N EEEEEEE
  1309  //                   S     S U     U B     B R     R O     O U     U    T       I    NN    N E
  1310  //                   S       U     U B     B R     R O     O U     U    T       I    N N   N E
  1311  //                    SSSSS  U     U BBBBBB  RRRRRR  O     O U     U    T       I    N  N  N EEEEE
  1312  //                         S U     U B     B R   R   O     O U     U    T       I    N   N N E
  1313  //                   S     S U     U B     B R    R  O     O U     U    T       I    N    NN E
  1314  //                    SSSSS   UUUUU  BBBBBB  R     R  OOOOO   UUUUU     T      III   N     N EEEEEEE
  1315  
  1316  //                                    H     H Y     Y BBBBBB  RRRRRR        J    1
  1317  //                                    H     H  Y   Y  B     B R     R       J   11
  1318  //                                    H     H   Y Y   B     B R     R       J  1 1
  1319  //                                    HHHHHHH    Y    BBBBBB  RRRRRR        J    1
  1320  //                                    H     H    Y    B     B R   R   J     J    1
  1321  //                                    H     H    Y    B     B R    R  J     J    1
  1322  //                                    H     H    Y    BBBBBB  R     R  JJJJJ   11111
  1323  
  1324  
  1325  // VIF  THU 20 NOV 2025 22:20:50  ** HYBRJ1                       ** DIAGNOSTICS                                      PAGE 00048
  1326  
  1327  
  1328  // VIF  THU 20 NOV 2025 22:20:50  ** HYBRJ1                       ** GENERATED CODE                                   PAGE 00049
  1329  
  1330  int_4 _hybrj1 (real_4 (*_fcn)(), int_4 _p_ n_, real_8 _p_ x_, real_8 _p_ fvec_, real_8 _p_ fjac_, int_4 _p_ ldfjac_, 
  1331  real_8 _p_ tol_, int_4 _p_ info_, real_8 _p_ wa_, int_4 _p_ lwa_)
  1332  { // ** body not listed **
  1383  }
  1384  
  1385  // VIF  THU 20 NOV 2025 22:20:50  ** HYBRJ                        ** HYBRJ                                            PAGE 00051
  1386  
  1387  //                    SSSSS  U     U BBBBBB  RRRRRR   OOOOO  U     U TTTTTTT   III   N     N EEEEEEE
  1388  //                   S     S U     U B     B R     R O     O U     U    T       I    NN    N E
  1389  //                   S       U     U B     B R     R O     O U     U    T       I    N N   N E
  1390  //                    SSSSS  U     U BBBBBB  RRRRRR  O     O U     U    T       I    N  N  N EEEEE
  1391  //                         S U     U B     B R   R   O     O U     U    T       I    N   N N E
  1392  //                   S     S U     U B     B R    R  O     O U     U    T       I    N    NN E
  1393  //                    SSSSS   UUUUU  BBBBBB  R     R  OOOOO   UUUUU     T      III   N     N EEEEEEE
  1394  
  1395  //                                       H     H Y     Y BBBBBB  RRRRRR        J
  1396  //                                       H     H  Y   Y  B     B R     R       J
  1397  //                                       H     H   Y Y   B     B R     R       J
  1398  //                                       HHHHHHH    Y    BBBBBB  RRRRRR        J
  1399  //                                       H     H    Y    B     B R   R   J     J
  1400  //                                       H     H    Y    B     B R    R  J     J
  1401  //                                       H     H    Y    BBBBBB  R     R  JJJJJ
  1402  
  1403  
  1404  // VIF  THU 20 NOV 2025 22:20:50  ** HYBRJ                        ** DIAGNOSTICS                                      PAGE 00052
  1405  
  1406  
  1407  // VIF  THU 20 NOV 2025 22:20:50  ** HYBRJ                        ** GENERATED CODE                                   PAGE 00053
  1408  
  1409  int_4 _hybrj (int_4 (*_fcn)(), int_4 _p_ n_, real_8 _p_ x_, real_8 _p_ fvec_, real_8 _p_ fjac_, int_4 _p_ ldfjac_, 
  1410  real_8 _p_ xtol_, int_4 _p_ maxfev_, real_8 _p_ diag_, int_4 _p_ mode_, real_8 _p_ factor_, int_4 _p_ nprint_, int_4 
  1411  _p_ info_, int_4 _p_ nfev_, int_4 _p_ njev_, real_8 _p_ r_, int_4 _p_ lr_, real_8 _p_ qtf_, real_8 _p_ wa1_, real_8 _p_ 
  1412  wa2_, real_8 _p_ wa3_, real_8 _p_ wa4_)
  1413  { // ** body not listed **
  1718  }
  1719  // VIF  THU 20 NOV 2025 22:20:50  ** HYBRJ                        ** GENERATED CODE                                   PAGE 00059
  1720  
  1721  
  1722  // VIF  THU 20 NOV 2025 22:20:50  ** LMDER1                       ** LMDER1                                           PAGE 00060
  1723  
  1724  //                    SSSSS  U     U BBBBBB  RRRRRR   OOOOO  U     U TTTTTTT   III   N     N EEEEEEE
  1725  //                   S     S U     U B     B R     R O     O U     U    T       I    NN    N E
  1726  //                   S       U     U B     B R     R O     O U     U    T       I    N N   N E
  1727  //                    SSSSS  U     U BBBBBB  RRRRRR  O     O U     U    T       I    N  N  N EEEEE
  1728  //                         S U     U B     B R   R   O     O U     U    T       I    N   N N E
  1729  //                   S     S U     U B     B R    R  O     O U     U    T       I    N    NN E
  1730  //                    SSSSS   UUUUU  BBBBBB  R     R  OOOOO   UUUUU     T      III   N     N EEEEEEE
  1731  
  1732  //                                    L       M     M DDDDDD  EEEEEEE RRRRRR     1
  1733  //                                    L       MM   MM D     D E       R     R   11
  1734  //                                    L       M M M M D     D E       R     R  1 1
  1735  //                                    L       M  M  M D     D EEEEE   RRRRRR     1
  1736  //                                    L       M     M D     D E       R   R      1
  1737  //                                    L       M     M D     D E       R    R     1
  1738  //                                    LLLLLLL M     M DDDDDD  EEEEEEE R     R  11111
  1739  
  1740  
  1741  // VIF  THU 20 NOV 2025 22:20:50  ** LMDER1                       ** DIAGNOSTICS                                      PAGE 00061
  1742  
  1743  
  1744  // VIF  THU 20 NOV 2025 22:20:50  ** LMDER1                       ** GENERATED CODE                                   PAGE 00062
  1745  
  1746  int_4 _lmder1 (real_4 (*_fcn)(), int_4 _p_ m_, int_4 _p_ n_, real_8 _p_ x_, real_8 _p_ fvec_, real_8 _p_ fjac_, int_4 
  1747  _p_ ldfjac_, real_8 _p_ tol_, int_4 _p_ info_, int_4 _p_ ipvt_, real_8 _p_ wa_, int_4 _p_ lwa_)
  1748  { // ** body not listed **
  1789  }
  1790  
  1791  // VIF  THU 20 NOV 2025 22:20:50  ** LMDER                        ** LMDER                                            PAGE 00063
  1792  
  1793  //                    SSSSS  U     U BBBBBB  RRRRRR   OOOOO  U     U TTTTTTT   III   N     N EEEEEEE
  1794  //                   S     S U     U B     B R     R O     O U     U    T       I    NN    N E
  1795  //                   S       U     U B     B R     R O     O U     U    T       I    N N   N E
  1796  //                    SSSSS  U     U BBBBBB  RRRRRR  O     O U     U    T       I    N  N  N EEEEE
  1797  //                         S U     U B     B R   R   O     O U     U    T       I    N   N N E
  1798  //                   S     S U     U B     B R    R  O     O U     U    T       I    N    NN E
  1799  //                    SSSSS   UUUUU  BBBBBB  R     R  OOOOO   UUUUU     T      III   N     N EEEEEEE
  1800  
  1801  //                                       L       M     M DDDDDD  EEEEEEE RRRRRR
  1802  //                                       L       MM   MM D     D E       R     R
  1803  //                                       L       M M M M D     D E       R     R
  1804  //                                       L       M  M  M D     D EEEEE   RRRRRR
  1805  //                                       L       M     M D     D E       R   R
  1806  //                                       L       M     M D     D E       R    R
  1807  //                                       LLLLLLL M     M DDDDDD  EEEEEEE R     R
  1808  
  1809  
  1810  // VIF  THU 20 NOV 2025 22:20:50  ** LMDER                        ** DIAGNOSTICS                                      PAGE 00064
  1811  
  1812  
  1813  // VIF  THU 20 NOV 2025 22:20:50  ** LMDER                        ** GENERATED CODE                                   PAGE 00065
  1814  
  1815  int_4 _lmder (int_4 (*_fcn)(), int_4 _p_ m_, int_4 _p_ n_, real_8 _p_ x_, real_8 _p_ fvec_, real_8 _p_ fjac_, int_4 _p_ 
  1816  ldfjac_, real_8 _p_ ftol_, real_8 _p_ xtol_, real_8 _p_ gtol_, int_4 _p_ maxfev_, real_8 _p_ diag_, int_4 _p_ mode_, 
  1817  real_8 _p_ factor_, int_4 _p_ nprint_, int_4 _p_ info_, int_4 _p_ nfev_, int_4 _p_ njev_, int_4 _p_ ipvt_, real_8 _p_ 
  1818  qtf_, real_8 _p_ wa1_, real_8 _p_ wa2_, real_8 _p_ wa3_, real_8 _p_ wa4_)
  1819  { // ** body not listed **
  2117  }
  2118  
  2119  // VIF  THU 20 NOV 2025 22:20:50  ** LMDIF1                       ** LMDIF1                                           PAGE 00071
  2120  
  2121  //                    SSSSS  U     U BBBBBB  RRRRRR   OOOOO  U     U TTTTTTT   III   N     N EEEEEEE
  2122  //                   S     S U     U B     B R     R O     O U     U    T       I    NN    N E
  2123  //                   S       U     U B     B R     R O     O U     U    T       I    N N   N E
  2124  //                    SSSSS  U     U BBBBBB  RRRRRR  O     O U     U    T       I    N  N  N EEEEE
  2125  //                         S U     U B     B R   R   O     O U     U    T       I    N   N N E
  2126  //                   S     S U     U B     B R    R  O     O U     U    T       I    N    NN E
  2127  //                    SSSSS   UUUUU  BBBBBB  R     R  OOOOO   UUUUU     T      III   N     N EEEEEEE
  2128  
  2129  //                                    L       M     M DDDDDD    III   FFFFFFF    1
  2130  //                                    L       MM   MM D     D    I    F         11
  2131  //                                    L       M M M M D     D    I    F        1 1
  2132  //                                    L       M  M  M D     D    I    FFFFF      1
  2133  //                                    L       M     M D     D    I    F          1
  2134  //                                    L       M     M D     D    I    F          1
  2135  //                                    LLLLLLL M     M DDDDDD    III   F        11111
  2136  
  2137  
  2138  // VIF  THU 20 NOV 2025 22:20:50  ** LMDIF1                       ** DIAGNOSTICS                                      PAGE 00072
  2139  
  2140  
  2141  // VIF  THU 20 NOV 2025 22:20:50  ** LMDIF1                       ** GENERATED CODE                                   PAGE 00073
  2142  
  2143  int_4 _lmdif1 (real_4 (*_fcn)(), int_4 _p_ m_, int_4 _p_ n_, real_8 _p_ x_, real_8 _p_ fvec_, real_8 _p_ tol_, int_4 
  2144  _p_ info_, int_4 _p_ iwa_, real_8 _p_ wa_, int_4 _p_ lwa_)
  2145  { // ** body not listed **
  2188  }
  2189  
  2190  // VIF  THU 20 NOV 2025 22:20:50  ** LMDIF                        ** LMDIF                                            PAGE 00074
  2191  
  2192  //                    SSSSS  U     U BBBBBB  RRRRRR   OOOOO  U     U TTTTTTT   III   N     N EEEEEEE
  2193  //                   S     S U     U B     B R     R O     O U     U    T       I    NN    N E
  2194  //                   S       U     U B     B R     R O     O U     U    T       I    N N   N E
  2195  //                    SSSSS  U     U BBBBBB  RRRRRR  O     O U     U    T       I    N  N  N EEEEE
  2196  //                         S U     U B     B R   R   O     O U     U    T       I    N   N N E
  2197  //                   S     S U     U B     B R    R  O     O U     U    T       I    N    NN E
  2198  //                    SSSSS   UUUUU  BBBBBB  R     R  OOOOO   UUUUU     T      III   N     N EEEEEEE
  2199  
  2200  //                                       L       M     M DDDDDD    III   FFFFFFF
  2201  //                                       L       MM   MM D     D    I    F
  2202  //                                       L       M M M M D     D    I    F
  2203  //                                       L       M  M  M D     D    I    FFFFF
  2204  //                                       L       M     M D     D    I    F
  2205  //                                       L       M     M D     D    I    F
  2206  //                                       LLLLLLL M     M DDDDDD    III   F
  2207  
  2208  
  2209  // VIF  THU 20 NOV 2025 22:20:50  ** LMDIF                        ** DIAGNOSTICS                                      PAGE 00075
  2210  
  2211  
  2212  // VIF  THU 20 NOV 2025 22:20:50  ** LMDIF                        ** GENERATED CODE                                   PAGE 00076
  2213  
  2214  int_4 _lmdif (int_4 (*_fcn)(), int_4 _p_ m_, int_4 _p_ n_, real_8 _p_ x_, real_8 _p_ fvec_, real_8 _p_ ftol_, real_8 
  2215  _p_ xtol_, real_8 _p_ gtol_, int_4 _p_ maxfev_, real_8 _p_ epsfcn_, real_8 _p_ diag_, int_4 _p_ mode_, real_8 _p_ 
  2216  factor_, int_4 _p_ nprint_, int_4 _p_ info_, int_4 _p_ nfev_, real_8 _p_ fjac_, int_4 _p_ ldfjac_, int_4 _p_ ipvt_, 
  2217  real_8 _p_ qtf_, real_8 _p_ wa1_, real_8 _p_ wa2_, real_8 _p_ wa3_, real_8 _p_ wa4_)
  2218  { // ** body not listed **
  2515  }
  2516  
  2517  // VIF  THU 20 NOV 2025 22:20:50  ** LMPAR                        ** LMPAR                                            PAGE 00082
  2518  
  2519  //                    SSSSS  U     U BBBBBB  RRRRRR   OOOOO  U     U TTTTTTT   III   N     N EEEEEEE
  2520  //                   S     S U     U B     B R     R O     O U     U    T       I    NN    N E
  2521  //                   S       U     U B     B R     R O     O U     U    T       I    N N   N E
  2522  //                    SSSSS  U     U BBBBBB  RRRRRR  O     O U     U    T       I    N  N  N EEEEE
  2523  //                         S U     U B     B R   R   O     O U     U    T       I    N   N N E
  2524  //                   S     S U     U B     B R    R  O     O U     U    T       I    N    NN E
  2525  //                    SSSSS   UUUUU  BBBBBB  R     R  OOOOO   UUUUU     T      III   N     N EEEEEEE
  2526  
  2527  //                                       L       M     M PPPPPP     A    RRRRRR
  2528  //                                       L       MM   MM P     P   A A   R     R
  2529  //                                       L       M M M M P     P  A   A  R     R
  2530  //                                       L       M  M  M PPPPPP  A     A RRRRRR
  2531  //                                       L       M     M P       AAAAAAA R   R
  2532  //                                       L       M     M P       A     A R    R
  2533  //                                       LLLLLLL M     M P       A     A R     R
  2534  
  2535  
  2536  // VIF  THU 20 NOV 2025 22:20:50  ** LMPAR                        ** DIAGNOSTICS                                      PAGE 00083
  2537  
  2538  
  2539  // VIF  THU 20 NOV 2025 22:20:50  ** LMPAR                        ** GENERATED CODE                                   PAGE 00084
  2540  
  2541  int_4 _lmpar (int_4 _p_ n_, real_8 _p_ r_, int_4 _p_ ldr_, int_4 _p_ ipvt_, real_8 _p_ diag_, real_8 _p_ qtb_, real_8 
  2542  _p_ delta_, real_8 _p_ par_, real_8 _p_ x_, real_8 _p_ sdiag_, real_8 _p_ wa1_, real_8 _p_ wa2_)
  2543  { // ** body not listed **
  2710  }
  2711  
  2712  // VIF  THU 20 NOV 2025 22:20:50  ** LMSTR1                       ** LMSTR1                                           PAGE 00088
  2713  
  2714  //                    SSSSS  U     U BBBBBB  RRRRRR   OOOOO  U     U TTTTTTT   III   N     N EEEEEEE
  2715  //                   S     S U     U B     B R     R O     O U     U    T       I    NN    N E
  2716  //                   S       U     U B     B R     R O     O U     U    T       I    N N   N E
  2717  //                    SSSSS  U     U BBBBBB  RRRRRR  O     O U     U    T       I    N  N  N EEEEE
  2718  //                         S U     U B     B R   R   O     O U     U    T       I    N   N N E
  2719  //                   S     S U     U B     B R    R  O     O U     U    T       I    N    NN E
  2720  //                    SSSSS   UUUUU  BBBBBB  R     R  OOOOO   UUUUU     T      III   N     N EEEEEEE
  2721  
  2722  //                                    L       M     M  SSSSS  TTTTTTT RRRRRR     1
  2723  //                                    L       MM   MM S     S    T    R     R   11
  2724  //                                    L       M M M M S          T    R     R  1 1
  2725  //                                    L       M  M  M  SSSSS     T    RRRRRR     1
  2726  //                                    L       M     M       S    T    R   R      1
  2727  //                                    L       M     M S     S    T    R    R     1
  2728  //                                    LLLLLLL M     M  SSSSS     T    R     R  11111
  2729  
  2730  
  2731  // VIF  THU 20 NOV 2025 22:20:50  ** LMSTR1                       ** DIAGNOSTICS                                      PAGE 00089
  2732  
  2733  
  2734  // VIF  THU 20 NOV 2025 22:20:50  ** LMSTR1                       ** GENERATED CODE                                   PAGE 00090
  2735  
  2736  int_4 _lmstr1 (real_4 (*_fcn)(), int_4 _p_ m_, int_4 _p_ n_, real_8 _p_ x_, real_8 _p_ fvec_, real_8 _p_ fjac_, int_4 
  2737  _p_ ldfjac_, real_8 _p_ tol_, int_4 _p_ info_, int_4 _p_ ipvt_, real_8 _p_ wa_, int_4 _p_ lwa_)
  2738  { // ** body not listed **
  2779  }
  2780  
  2781  // VIF  THU 20 NOV 2025 22:20:50  ** LMSTR                        ** LMSTR                                            PAGE 00091
  2782  
  2783  //                    SSSSS  U     U BBBBBB  RRRRRR   OOOOO  U     U TTTTTTT   III   N     N EEEEEEE
  2784  //                   S     S U     U B     B R     R O     O U     U    T       I    NN    N E
  2785  //                   S       U     U B     B R     R O     O U     U    T       I    N N   N E
  2786  //                    SSSSS  U     U BBBBBB  RRRRRR  O     O U     U    T       I    N  N  N EEEEE
  2787  //                         S U     U B     B R   R   O     O U     U    T       I    N   N N E
  2788  //                   S     S U     U B     B R    R  O     O U     U    T       I    N    NN E
  2789  //                    SSSSS   UUUUU  BBBBBB  R     R  OOOOO   UUUUU     T      III   N     N EEEEEEE
  2790  
  2791  //                                       L       M     M  SSSSS  TTTTTTT RRRRRR
  2792  //                                       L       MM   MM S     S    T    R     R
  2793  //                                       L       M M M M S          T    R     R
  2794  //                                       L       M  M  M  SSSSS     T    RRRRRR
  2795  //                                       L       M     M       S    T    R   R
  2796  //                                       L       M     M S     S    T    R    R
  2797  //                                       LLLLLLL M     M  SSSSS     T    R     R
  2798  
  2799  
  2800  // VIF  THU 20 NOV 2025 22:20:50  ** LMSTR                        ** DIAGNOSTICS                                      PAGE 00092
  2801  
  2802  
  2803  // VIF  THU 20 NOV 2025 22:20:50  ** LMSTR                        ** GENERATED CODE                                   PAGE 00093
  2804  
  2805  int_4 _lmstr (int_4 (*_fcn)(), int_4 _p_ m_, int_4 _p_ n_, real_8 _p_ x_, real_8 _p_ fvec_, real_8 _p_ fjac_, int_4 _p_ 
  2806  ldfjac_, real_8 _p_ ftol_, real_8 _p_ xtol_, real_8 _p_ gtol_, int_4 _p_ maxfev_, real_8 _p_ diag_, int_4 _p_ mode_, 
  2807  real_8 _p_ factor_, int_4 _p_ nprint_, int_4 _p_ info_, int_4 _p_ nfev_, int_4 _p_ njev_, int_4 _p_ ipvt_, real_8 _p_ 
  2808  qtf_, real_8 _p_ wa1_, real_8 _p_ wa2_, real_8 _p_ wa3_, real_8 _p_ wa4_)
  2809  { // ** body not listed **
  3129  }
  3130  
  3131  // VIF  THU 20 NOV 2025 22:20:50  ** QFORM                        ** QFORM                                            PAGE 00100
  3132  
  3133  //                    SSSSS  U     U BBBBBB  RRRRRR   OOOOO  U     U TTTTTTT   III   N     N EEEEEEE
  3134  //                   S     S U     U B     B R     R O     O U     U    T       I    NN    N E
  3135  //                   S       U     U B     B R     R O     O U     U    T       I    N N   N E
  3136  //                    SSSSS  U     U BBBBBB  RRRRRR  O     O U     U    T       I    N  N  N EEEEE
  3137  //                         S U     U B     B R   R   O     O U     U    T       I    N   N N E
  3138  //                   S     S U     U B     B R    R  O     O U     U    T       I    N    NN E
  3139  //                    SSSSS   UUUUU  BBBBBB  R     R  OOOOO   UUUUU     T      III   N     N EEEEEEE
  3140  
  3141  //                                        QQQQQ  FFFFFFF  OOOOO  RRRRRR  M     M
  3142  //                                       Q     Q F       O     O R     R MM   MM
  3143  //                                       Q     Q F       O     O R     R M M M M
  3144  //                                       Q     Q FFFFF   O     O RRRRRR  M  M  M
  3145  //                                       Q   Q Q F       O     O R   R   M     M
  3146  //                                       Q    Q  F       O     O R    R  M     M
  3147  //                                        QQQQ Q F        OOOOO  R     R M     M
  3148  
  3149  
  3150  // VIF  THU 20 NOV 2025 22:20:50  ** QFORM                        ** DIAGNOSTICS                                      PAGE 00101
  3151  
  3152  
  3153  // VIF  THU 20 NOV 2025 22:20:50  ** QFORM                        ** GENERATED CODE                                   PAGE 00102
  3154  
  3155  int_4 _qform (int_4 _p_ m_, int_4 _p_ n_, real_8 _p_ q_, int_4 _p_ ldq_, real_8 _p_ wa_)
  3156  { // ** body not listed **
  3226  }
  3227  
  3228  // VIF  THU 20 NOV 2025 22:20:50  ** QRFAC                        ** QRFAC                                            PAGE 00104
  3229  
  3230  //                    SSSSS  U     U BBBBBB  RRRRRR   OOOOO  U     U TTTTTTT   III   N     N EEEEEEE
  3231  //                   S     S U     U B     B R     R O     O U     U    T       I    NN    N E
  3232  //                   S       U     U B     B R     R O     O U     U    T       I    N N   N E
  3233  //                    SSSSS  U     U BBBBBB  RRRRRR  O     O U     U    T       I    N  N  N EEEEE
  3234  //                         S U     U B     B R   R   O     O U     U    T       I    N   N N E
  3235  //                   S     S U     U B     B R    R  O     O U     U    T       I    N    NN E
  3236  //                    SSSSS   UUUUU  BBBBBB  R     R  OOOOO   UUUUU     T      III   N     N EEEEEEE
  3237  
  3238  //                                        QQQQQ  RRRRRR  FFFFFFF    A     CCCCC
  3239  //                                       Q     Q R     R F         A A   C     C
  3240  //                                       Q     Q R     R F        A   A  C
  3241  //                                       Q     Q RRRRRR  FFFFF   A     A C
  3242  //                                       Q   Q Q R   R   F       AAAAAAA C
  3243  //                                       Q    Q  R    R  F       A     A C     C
  3244  //                                        QQQQ Q R     R F       A     A  CCCCC
  3245  
  3246  
  3247  // VIF  THU 20 NOV 2025 22:20:50  ** QRFAC                        ** DIAGNOSTICS                                      PAGE 00105
  3248  
  3249  
  3250  // VIF  THU 20 NOV 2025 22:20:50  ** QRFAC                        ** GENERATED CODE                                   PAGE 00106
  3251  
  3252  int_4 _qrfac (int_4 _p_ m_, int_4 _p_ n_, real_8 _p_ a_, int_4 _p_ lda_, logical_4 _p_ pivot_, int_4 _p_ ipvt_, int_4 
  3253  _p_ lipvt_, real_8 _p_ rdiag_, real_8 _p_ acnorm_, real_8 _p_ wa_)
  3254  { // ** body not listed **
  3363  }
  3364  
  3365  // VIF  THU 20 NOV 2025 22:20:50  ** QRSOLV                       ** QRSOLV                                           PAGE 00109
  3366  
  3367  //                    SSSSS  U     U BBBBBB  RRRRRR   OOOOO  U     U TTTTTTT   III   N     N EEEEEEE
  3368  //                   S     S U     U B     B R     R O     O U     U    T       I    NN    N E
  3369  //                   S       U     U B     B R     R O     O U     U    T       I    N N   N E
  3370  //                    SSSSS  U     U BBBBBB  RRRRRR  O     O U     U    T       I    N  N  N EEEEE
  3371  //                         S U     U B     B R   R   O     O U     U    T       I    N   N N E
  3372  //                   S     S U     U B     B R    R  O     O U     U    T       I    N    NN E
  3373  //                    SSSSS   UUUUU  BBBBBB  R     R  OOOOO   UUUUU     T      III   N     N EEEEEEE
  3374  
  3375  //                                    QQQQQ  RRRRRR   SSSSS   OOOOO  L       V     V
  3376  //                                   Q     Q R     R S     S O     O L       V     V
  3377  //                                   Q     Q R     R S       O     O L       V     V
  3378  //                                   Q     Q RRRRRR   SSSSS  O     O L       V     V
  3379  //                                   Q   Q Q R   R         S O     O L        V   V
  3380  //                                   Q    Q  R    R  S     S O     O L         V V
  3381  //                                    QQQQ Q R     R  SSSSS   OOOOO  LLLLLLL    V
  3382  
  3383  
  3384  // VIF  THU 20 NOV 2025 22:20:50  ** QRSOLV                       ** DIAGNOSTICS                                      PAGE 00110
  3385  
  3386  
  3387  // VIF  THU 20 NOV 2025 22:20:50  ** QRSOLV                       ** GENERATED CODE                                   PAGE 00111
  3388  
  3389  int_4 _qrsolv (int_4 _p_ n_, real_8 _p_ r_, int_4 _p_ ldr_, int_4 _p_ ipvt_, real_8 _p_ diag_, real_8 _p_ qtb_, real_8 
  3390  _p_ x_, real_8 _p_ sdiag_, real_8 _p_ wa_)
  3391  { // ** body not listed **
  3507  }
  3508  
  3509  // VIF  THU 20 NOV 2025 22:20:50  ** R1MPYQ                       ** R1MPYQ                                           PAGE 00114
  3510  
  3511  //                    SSSSS  U     U BBBBBB  RRRRRR   OOOOO  U     U TTTTTTT   III   N     N EEEEEEE
  3512  //                   S     S U     U B     B R     R O     O U     U    T       I    NN    N E
  3513  //                   S       U     U B     B R     R O     O U     U    T       I    N N   N E
  3514  //                    SSSSS  U     U BBBBBB  RRRRRR  O     O U     U    T       I    N  N  N EEEEE
  3515  //                         S U     U B     B R   R   O     O U     U    T       I    N   N N E
  3516  //                   S     S U     U B     B R    R  O     O U     U    T       I    N    NN E
  3517  //                    SSSSS   UUUUU  BBBBBB  R     R  OOOOO   UUUUU     T      III   N     N EEEEEEE
  3518  
  3519  //                                   RRRRRR     1    M     M PPPPPP  Y     Y  QQQQQ
  3520  //                                   R     R   11    MM   MM P     P  Y   Y  Q     Q
  3521  //                                   R     R  1 1    M M M M P     P   Y Y   Q     Q
  3522  //                                   RRRRRR     1    M  M  M PPPPPP     Y    Q     Q
  3523  //                                   R   R      1    M     M P          Y    Q   Q Q
  3524  //                                   R    R     1    M     M P          Y    Q    Q
  3525  //                                   R     R  11111  M     M P          Y     QQQQ Q
  3526  
  3527  
  3528  // VIF  THU 20 NOV 2025 22:20:50  ** R1MPYQ                       ** DIAGNOSTICS                                      PAGE 00115
  3529  
  3530  
  3531  // VIF  THU 20 NOV 2025 22:20:50  ** R1MPYQ                       ** GENERATED CODE                                   PAGE 00116
  3532  
  3533  int_4 _r1mpyq (int_4 _p_ m_, int_4 _p_ n_, real_8 _p_ a_, int_4 _p_ lda_, real_8 _p_ v_, real_8 _p_ w_)
  3534  { // ** body not listed **
  3600  }
  3601  
  3602  // VIF  THU 20 NOV 2025 22:20:50  ** R1UPDT                       ** R1UPDT                                           PAGE 00118
  3603  
  3604  //                    SSSSS  U     U BBBBBB  RRRRRR   OOOOO  U     U TTTTTTT   III   N     N EEEEEEE
  3605  //                   S     S U     U B     B R     R O     O U     U    T       I    NN    N E
  3606  //                   S       U     U B     B R     R O     O U     U    T       I    N N   N E
  3607  //                    SSSSS  U     U BBBBBB  RRRRRR  O     O U     U    T       I    N  N  N EEEEE
  3608  //                         S U     U B     B R   R   O     O U     U    T       I    N   N N E
  3609  //                   S     S U     U B     B R    R  O     O U     U    T       I    N    NN E
  3610  //                    SSSSS   UUUUU  BBBBBB  R     R  OOOOO   UUUUU     T      III   N     N EEEEEEE
  3611  
  3612  //                                   RRRRRR     1    U     U PPPPPP  DDDDDD  TTTTTTT
  3613  //                                   R     R   11    U     U P     P D     D    T
  3614  //                                   R     R  1 1    U     U P     P D     D    T
  3615  //                                   RRRRRR     1    U     U PPPPPP  D     D    T
  3616  //                                   R   R      1    U     U P       D     D    T
  3617  //                                   R    R     1    U     U P       D     D    T
  3618  //                                   R     R  11111   UUUUU  P       DDDDDD     T
  3619  
  3620  
  3621  // VIF  THU 20 NOV 2025 22:20:50  ** R1UPDT                       ** DIAGNOSTICS                                      PAGE 00119
  3622  
  3623  
  3624  // VIF  THU 20 NOV 2025 22:20:50  ** R1UPDT                       ** GENERATED CODE                                   PAGE 00120
  3625  
  3626  int_4 _r1updt (int_4 _p_ m_, int_4 _p_ n_, real_8 _p_ s_, int_4 _p_ ls_, real_8 _p_ u_, real_8 _p_ v_, real_8 _p_ w_, 
  3627  logical_4 _p_ sing_)
  3628  { // ** body not listed **
  3766  }
  3767  
  3768  // VIF  THU 20 NOV 2025 22:20:50  ** RWUPDT                       ** RWUPDT                                           PAGE 00123
  3769  
  3770  //                    SSSSS  U     U BBBBBB  RRRRRR   OOOOO  U     U TTTTTTT   III   N     N EEEEEEE
  3771  //                   S     S U     U B     B R     R O     O U     U    T       I    NN    N E
  3772  //                   S       U     U B     B R     R O     O U     U    T       I    N N   N E
  3773  //                    SSSSS  U     U BBBBBB  RRRRRR  O     O U     U    T       I    N  N  N EEEEE
  3774  //                         S U     U B     B R   R   O     O U     U    T       I    N   N N E
  3775  //                   S     S U     U B     B R    R  O     O U     U    T       I    N    NN E
  3776  //                    SSSSS   UUUUU  BBBBBB  R     R  OOOOO   UUUUU     T      III   N     N EEEEEEE
  3777  
  3778  //                                   RRRRRR  W     W U     U PPPPPP  DDDDDD  TTTTTTT
  3779  //                                   R     R W     W U     U P     P D     D    T
  3780  //                                   R     R W     W U     U P     P D     D    T
  3781  //                                   RRRRRR  W  W  W U     U PPPPPP  D     D    T
  3782  //                                   R   R   W  W  W U     U P       D     D    T
  3783  //                                   R    R  W  W  W U     U P       D     D    T
  3784  //                                   R     R  WW WW   UUUUU  P       DDDDDD     T
  3785  
  3786  
  3787  // VIF  THU 20 NOV 2025 22:20:50  ** RWUPDT                       ** DIAGNOSTICS                                      PAGE 00124
  3788  
  3789  
  3790  // VIF  THU 20 NOV 2025 22:20:50  ** RWUPDT                       ** GENERATED CODE                                   PAGE 00125
  3791  
  3792  int_4 _rwupdt (int_4 _p_ n_, real_8 _p_ r_, int_4 _p_ ldr_, real_8 _p_ w_, real_8 _p_ b_, real_8 _p_ alpha_, real_8 _p_ 
  3793  cost_, real_8 _p_ sint_)
  3794  { // ** body not listed **
  3867  }


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