# doc-cache created by Octave 4.0.0
# name: cache
# type: cell
# rows: 3
# columns: 11
# name: <cell-element>
# type: sq_string
# elements: 1
# length: 8
basisfun


# name: <cell-element>
# type: sq_string
# elements: 1
# length: 312

 BASISFUN: Compute B-Spline Basis Functions 

Calling Sequence:

  N = basisfun(iv,uv,p,U)

 INPUT:

   iv - knot span  ( from FindSpan() )
   uv - parametric point
   p - spline degree
   U - knot sequence

 OUTPUT:

   N - Basis functions vector(numel(uv)*(p+1))

 Algorithm A2.2 from 'The NURBS BOOK' pg70.




# name: <cell-element>
# type: sq_string
# elements: 1
# length: 45

 BASISFUN: Compute B-Spline Basis Functions 



# name: <cell-element>
# type: sq_string
# elements: 1
# length: 11
basisfunder


# name: <cell-element>
# type: sq_string
# elements: 1
# length: 414

 BASISFUNDER:  B-Spline Basis function derivatives

 Calling Sequence:

   ders = basisfunder (ii, pl, uu, k, nd)

    INPUT:

      ii  - knot span
      pl  - degree of curve
      uu  - parametric points
      k   - knot vector
      nd  - number of derivatives to compute

    OUTPUT:

      ders - ders(n, i, :) (i-1)-th derivative at n-th point

   Adapted from Algorithm A2.3 from 'The NURBS BOOK' pg72. 




# name: <cell-element>
# type: sq_string
# elements: 1
# length: 51

 BASISFUNDER:  B-Spline Basis function derivatives



# name: <cell-element>
# type: sq_string
# elements: 1
# length: 8
bspderiv


# name: <cell-element>
# type: sq_string
# elements: 1
# length: 437

 BSPDERIV:  B-Spline derivative


 Calling Sequence:

          [dc,dk] = bspderiv(d,c,k)

  INPUT:
 
    d - degree of the B-Spline
    c - control points   double matrix(mc,nc)
    k - knot sequence    double vector(nk)
 
  OUTPUT:
 
    dc - control points of the derivative     double  matrix(mc,nc)
    dk - knot sequence of the derivative      double  vector(nk)
 
  Modified version of Algorithm A3.3 from 'The NURBS BOOK' pg98.



# name: <cell-element>
# type: sq_string
# elements: 1
# length: 32

 BSPDERIV:  B-Spline derivative



# name: <cell-element>
# type: sq_string
# elements: 1
# length: 7
bspeval


# name: <cell-element>
# type: sq_string
# elements: 1
# length: 377
 BSPEVAL:  Evaluate B-Spline at parametric points


 Calling Sequence:

   p = bspeval(d,c,k,u)

    INPUT:

       d - Degree of the B-Spline.
       c - Control Points, matrix of size (dim,nc).
       k - Knot sequence, row vector of size nk.
       u - Parametric evaluation points, row vector of size nu.
 
    OUTPUT:

       p - Evaluated points, matrix of size (dim,nu)



# name: <cell-element>
# type: sq_string
# elements: 1
# length: 49
 BSPEVAL:  Evaluate B-Spline at parametric points



# name: <cell-element>
# type: sq_string
# elements: 1
# length: 14
curvederivcpts


# name: <cell-element>
# type: sq_string
# elements: 1
# length: 696

CURVEDERIVCPTS: Compute control points of n-th derivatives of a B-spline curve.
 
 
 usage: pk = curvederivcpts (n, p, U, P, d) 
        pk = curvederivcpts (n, p, U, P, d, r1 r2) 
 
 If r1, r2 are not given, all the control points are computed. 
 
  INPUT: 
         n+1 = number of control points 
         p   = degree of the spline 
         d   = maximum derivative order (d<=p) 
         U   = knots 
         P   = control points 
         r1  = first control point to compute 
         r2  = auxiliary index for the last control point to compute 

  OUTPUT: 
         pk(k,i) = i-th control point (k-1)-th derivative, r1 <= i <= r2-k 
 
 Adaptation of algorithm A3.3 from the NURBS book



# name: <cell-element>
# type: sq_string
# elements: 1
# length: 80

CURVEDERIVCPTS: Compute control points of n-th derivatives of a B-spline curve.



# name: <cell-element>
# type: sq_string
# elements: 1
# length: 18
nrb_srf_basisfun__


# name: <cell-element>
# type: sq_string
# elements: 1
# length: 51
 NRB_SRF_BASISFUN__:  Undocumented private function


# name: <cell-element>
# type: sq_string
# elements: 1
# length: 51
 NRB_SRF_BASISFUN__:  Undocumented private function



# name: <cell-element>
# type: sq_string
# elements: 1
# length: 22
nrb_srf_basisfun_der__


# name: <cell-element>
# type: sq_string
# elements: 1
# length: 56
 NRB_SRF_BASISFUN_DER__:  Undocumented private function	


# name: <cell-element>
# type: sq_string
# elements: 1
# length: 56
 NRB_SRF_BASISFUN_DER__:  Undocumented private function	



# name: <cell-element>
# type: sq_string
# elements: 1
# length: 16
nrbsurfderiveval


# name: <cell-element>
# type: sq_string
# elements: 1
# length: 476

NRBSURFDERIVEVAL: Evaluate n-th order derivatives of a NURBS surface.


 usage: skl = nrbsurfderiveval (srf, [u; v], d) 

   INPUT  :

    srf   : NURBS surface structure, see nrbmak

    u, v  : parametric coordinates of the point where we compute the
      derivatives

    d     : number of partial derivatives to compute

   OUTPUT :

    skl (i, j, k, l) = i-th component derived j-1,k-1 times at the
      l-th point.

 Adaptation of algorithm A4.4 from the NURBS book



# name: <cell-element>
# type: sq_string
# elements: 1
# length: 70

NRBSURFDERIVEVAL: Evaluate n-th order derivatives of a NURBS surface.



# name: <cell-element>
# type: sq_string
# elements: 1
# length: 13
surfderivcpts


# name: <cell-element>
# type: sq_string
# elements: 1
# length: 644

SURFDERIVCPTS: Compute control points of n-th derivatives of a NURBS surface.
 
 
usage: pkl = surfderivcpts (n, p, U, m, q, V, P, d)  
 
  INPUT:  

        n+1, m+1 = number of control points 
        p, q     = spline order 
        U, V     = knots 
        P        = control points 
        d        = derivative order 

  OUTPUT: 

        pkl (k+1, l+1, i+1, j+1) = i,jth control point 
                                   of the surface differentiated k 
                                   times in the u direction and l 
                                   times in the v direction 
 
 Adaptation of algorithm A3.7 from the NURBS book



# name: <cell-element>
# type: sq_string
# elements: 1
# length: 78

SURFDERIVCPTS: Compute control points of n-th derivatives of a NURBS surface.



# name: <cell-element>
# type: sq_string
# elements: 1
# length: 13
surfderiveval


# name: <cell-element>
# type: sq_string
# elements: 1
# length: 565

SURFDERIVEVAL: Compute the derivatives of a B-spline surface

 usage: skl = surfderiveval (n, p, U, m, q, V, P, u, v, d) 

  INPUT: 

        n+1, m+1 = number of control points
        p, q     = spline order
        U, V     = knots
        P        = control points
        u,v      = evaluation points
        d        = derivative order

  OUTPUT:

        skl (k+1, l+1) =  surface differentiated k
                          times in the u direction and l
                          times in the v direction

 Adaptation of algorithm A3.8 from the NURBS book



# name: <cell-element>
# type: sq_string
# elements: 1
# length: 61

SURFDERIVEVAL: Compute the derivatives of a B-spline surface



# name: <cell-element>
# type: sq_string
# elements: 1
# length: 9
tbasisfun


# name: <cell-element>
# type: sq_string
# elements: 1
# length: 579
TBASISFUN: Compute a B- or T-Spline basis function, and its derivatives, from its local knot vector.

 usage:

 [N, Nder] = tbasisfun (u, p, U)
 [N, Nder] = tbasisfun ([u; v], [p q], {U, V})
 [N, Nder] = tbasisfun ([u; v; w], [p q r], {U, V, W})
 
 INPUT:
  u or [u; v] : points in parameter space where the basis function is to be
  evaluated 
  
  U or {U, V} : local knot vector

  p or [p q] : polynomial order of the basis function

 OUTPUT:
  N : basis function evaluated at the given parametric points
  Nder : gradient of the basis function evaluated at the given points



# name: <cell-element>
# type: sq_string
# elements: 1
# length: 80
TBASISFUN: Compute a B- or T-Spline basis function, and its derivatives, from it





