Main Page | File List | File Members

mysolv.c File Reference

Class mysolv methods. More...


Functions

VPRIVATE int MY_initSolver (Bvec *r, Bmat *A, Bvec *u, Bvec *f, int prec, int flag, double etol)
 Initiate the parameters and vectors for solving Au=f.
VPRIVATE void MY_ICG (Vec *thee, Mat *amat, Vec *f, Vec *w)
 Initiation of w vectors .
VPRIVATE int MY_io (Bvec *r, int flag)
 output control for iteratively solving Au=f .
VPRIVATE void MY_precond (Bvec *thee, Bmat *A, Bvec *f, Bmat *P, Bvec *tmp1, Bvec *tmp2, int prec, int key)
 preconditioner for solving PDE using finite element method.
VPRIVATE void MY_normal (Bvec *thee)
 Vector normal value evaluation .
VPUBLIC int MY_cg (Bvec *u, Bmat *A, Bvec *f, Bvec *r, Bvec *ut, int key, int flag, int itmax, double etol, int prec, int cycle, Bmat *P, Bvec *w[])
VPUBLIC int MY_cgT (Bvec *u, Bmat *A, Bvec *f, Bvec *r, Bvec *ut, int key, int flag, int itmax, double etol, int prec, int cycle, Bmat *P, Bvec *w[])
VPUBLIC int MY_bcg (Bvec *u, Bmat *A, Bvec *f, Bvec *r, Bvec *ut, int key, int flag, int itmax, double etol, int prec, int cycle, Bmat *P, Bvec *w[])
VPUBLIC int MY_bcgstab (Bvec *u, Bmat *A, Bvec *f, Bvec *r, Bvec *ut, int key, int flag, int itmax, double etol, int prec, int cycle, Bmat *P, Bvec *w[])

Variables

VPRIVATE int prtKey
VPRIVATE int iters
VPRIVATE double denom
VPRIVATE double rsnrm
VPRIVATE double mytol
VPRIVATE double alpha
VPRIVATE double beta
VPRIVATE double rho
VPRIVATE double omega
VPRIVATE char rn [80]
VPRIVATE char rmeth [80]
VPRIVATE char pmeth [80]


Detailed Description

Class mysolv methods.

Problem type: time-dependent, Diffusion-reaction Spatial dimension: 2 or 3 Product dimension: 1 Differential operator: Linear or nonlinear potential equation with symmetric or nonsymmetric linear part Boundary conditions: zero or nonzero Dirichlet conditions nonzero or zero Neumann/Robin conditions

Note: Equation for component i is defined as

sum(del(A_ij del(u_j))) = B_i in omega -n dot sum(A_ij del(u_j)) = C_i along natural boundaries

_____ \ ____ ____ \ \ /. A_ij \ / u_j = B_i in omega / \/ \/ /____ j

____ \ ____ \ -n . A_ij \ / u_j = C_i along natural boundaries / \/ /___ j

Author:
Yuhui Cheng, modified after Michael Holst, Nathan Baker, Kaihsu Tai & Jason Suen.
Version:
Id
mysolv.c 1046 2007-07-10 16:58:40Z sobolevnrm
Attention:
 *
 * SMOL -- Adaptive Smoluchowski Solver
 *
 * Yuhui Cheng (ycheng@mccammon.ucsd.edu)
 * Dept. of Chemistry and Biochemistry
 * University of California, San Diego
 *
 * Additional contributing authors listed in the code documentation.
 *
 * Copyright (c) 2006-2007.  University of California, San Diego
 * All Rights Reserved.
 * Portions Copyright (c) 1995.  Michael Holst.
 *
 * This file is part of SMOL.
 *
 * SMOL is free software; you can redistribute it and/or modify
 * it under the terms of the GNU General Public License as published by
 * the Free Software Foundation; either version 2 of the License, or
 * (at your option) any later version.
*
 * SMOL is distributed in the hope that it will be useful,
 * but WITHOUT ANY WARRANTY; without even the implied warranty of
 * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
 * GNU General Public License for more details.
 *
 * You should have received a copy of the GNU General Public License
 * along with SMOL; if not, write to the Free Software
 * Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307
 * USA
 *
 * Linking SMOL statically or dynamically with other modules is making a
 * combined work based on SMOL. Thus, the terms and conditions of the
 * GNU
 * General Public License cover the whole combination.
 *
 * SPECIAL GPL EXCEPTION
 * In addition, as a special exception, the copyright holders of SMOL
 * give you permission to combine the SMOL program with free software
 * programs and libraries that are released under the GNU LGPL or with
 * code included in releases of ISIM, Ion Simulator Interface, PMV,
 * PyMOL
 * VMD, and Vision. Such combined software may be linked with SMOL
 * and
 * redistributed together in original or modified form as mere
 * aggregation
 * without requirement that the entire work be under the scope of the
 * GNU
 * General Public License. This special exception permission is also
 * extended
 * to any software listed in the SPECIAL GPL EXCEPTION clauses by the
 * FEtk, MC, or MALOC libraries.
 *
 * Note that people who make modified versions of SMOL are not obligated
 * to grant this special exception for their modified versions; it is
 * their choice whether to do so. The GNU General Public License gives
 * permission to release a modified version without this exception; this
 * exception also makes it possible to release a modified version which
 * carries forward this exception.
 *
 * 

Function Documentation

VPRIVATE void MY_ICG Vec *  thee,
Mat *  amat,
Vec *  f,
Vec *  w
 

Initiation of w vectors .

Author:
Yuhui Cheng, modified after Jason Suen.

VPRIVATE int MY_initSolver Bvec *  r,
Bmat *  A,
Bvec *  u,
Bvec *  f,
int  prec,
int  flag,
double  etol
 

Initiate the parameters and vectors for solving Au=f.

Author:
Yuhui Cheng, modified after Jason Suen.

VPRIVATE int MY_io Bvec *  r,
int  flag
 

output control for iteratively solving Au=f .

Author:
Yuhui Cheng, modified after Jason Suen.

VPRIVATE void MY_normal Bvec *  thee  ) 
 

Vector normal value evaluation .

Author:
Yuhui Cheng, modified after Jason Suen.

VPRIVATE void MY_precond Bvec *  thee,
Bmat *  A,
Bvec *  f,
Bmat *  P,
Bvec *  tmp1,
Bvec *  tmp2,
int  prec,
int  key
 

preconditioner for solving PDE using finite element method.

Author:
Yuhui Cheng, modified after Jason Suen.


Generated on Thu Jul 26 15:56:33 2007 by  doxygen 1.3.9.1