C Library Functions  - colloc (3)

from * a practical guide to splines * by c. de boor

Chapter xv, example. solution of an ode by collocation. calls colpnt, difequ(ppvalu(interv)), knots, eqblok(putit(difequ*, bsplvd(bsplvb)))), slvblk(various subprograms), bsplpp(bsplvb*), newnot

****** i n p u t ******
aleft, aright
  endpoints of interval of approximation
lbegin initial number of polynomial pieces in the approximation. a uniform breakpoint sequence is chosen.
iorder order of polynomial pieces in the approximation
ntimes number of passes through n e w n o t to be made
addbrk the number (possibly fractional) of breaks to be added per pass through newnot. e.g., if addbrk = .33334, then a break- point will be added at every third pass through newnot.
relerr a tolerance. newton iteration is stopped if the difference between the b-coeffs of two successive iterates is no more
than relerr*(absol.largest b-coefficient).
****** p r i n t e d o u t p u t ****** consists of the pp-representation of the approximate solution, and of the error at selected points.
****** m e t h o d ******
the m-th order ordinary differential equation with
  m side condit-
ions, to be specified in subroutine
  d i f e q u, is solved approx- imately by collocation.
the approximation
  f to the solution g is pp of order k+m with
l pieces and m-1 continuous derivatives. f is determined by the
requirement that it satisfy the d.e. at
  k points per interval (to
be specified in
  c o l p n t ) and the m side conditions.
this usually nonlinear system of equations for
  f is solved by newton’s method. the resulting linear system for the b-coeffs of an
iterate is constructed appropriately in
  e q b l o k and then solved
in s l v b l k, a program designed to solve a l m o s t b l o c k
d i a g o n a l
  linear systems efficiently. there is an opportunity to attempt improvement of the breakpoint
sequence (both in number and location) through use of
  n e w n o t .


Nemo Release 3.1 colloc (3) June 29, 2025
Generated by manServer 1.08 from 8a6f8b4c-0824-446b-96e7-4647662ae79b using man macros.