next up previous contents [pdf] index

Next: Input parameters Up: sf_solver_reg Previous: Call


void sf_solver_reg (sf_operator oper   /* linear operator */, 
                    sf_solverstep solv /* stepping function */,
                    sf_operator reg    /* regularization operator */, 
                    int nreg           /* size of reg{x} */, 
                    int nx             /* size of x */, 
                    int ny             /* size of dat */, 
                    float* x           /* estimated model */, 
                    const float* dat   /* data */, 
                    int niter          /* number of iterations */, 
                    float eps          /* regularization parameter */, 
                   ...                /* variable number of arguments */) 
/*< Generic regularized linear solver.
  oper{x}    =~ dat
  eps reg{x} =~ 0
  The last parameter in the call to this function should be "end".
  sf_solver_reg (oper_lop,sf_cgstep,reg_lop,
  Parameters in ...:
  "wt":     float*:         weight      
  "wght":   sf_weight wght: weighting function
  "x0":     float*:         initial model
  "nloper": sf_operator:    nonlinear operator  
  "nlreg":  sf_operator:    nonlinear regularization operator
  "verb":   bool:           verbosity flag
  "known":  bool*:          known model mask
  "nmem":   int:            iteration memory
  "nfreq":  int:            periodic restart
  "xmov":   float**:        model iteration
  "rmov":   float**:        residual iteration
  "err":    float*:         final error
  "res":    float*:         final residual
  "resm":   float*:         final model residual