Main Page | File List | File Members

mygrid.c File Reference

Class mygrid methods. More...


Defines

#define VGRID_DIGITS   6
 Number of decimal places for comparisons and formatting.
#define IJK(i, j, k)   (((k)*(nx)*(ny))+((j)*(nx))+(i))

Functions

VPRIVATE int Vgrid_buildBasis (double x, double x0, double hx, int imax, int loc[3], double phi[3], double phix[3], double phixx[3])
VPRIVATE int Vgrid_eval (Vgrid *thee, double pt[3], double *value, double grad[3], double curv[3])
VPUBLIC int Vmgrid_eval (Vmgrid *thee, double pt[3], double *value, double grad[3], double curv[3])
VPRIVATE int Vgrid_val (Vgrid *thee, double pt[3], double *value)
 Get potential value (from mesh or approximation) at a point.
VPRIVATE int Vgrid_curv (Vgrid *thee, double pt[3], double curv[3])
 Get potential gradient (from mesh or approximation) at a point.
VPUBLIC int Vmgrid_curv (Vmgrid *thee, double pt[3], double curv[3])

Variables

VPRIVATE double Vcompare


Detailed Description

Class mygrid 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
mygrid.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 int Vgrid_curv Vgrid *  thee,
double  pt[3],
double  curv[3]
 

Get potential gradient (from mesh or approximation) at a point.

Author:
Yuhui Cheng, modified after Nathan Baker
Parameters:
thee Vgrid obejct
x Point at which to evaluate potential
value Value of data at point x
Returns:
1 if successful, 0 if off grid

VPRIVATE int Vgrid_val Vgrid *  thee,
double  pt[3],
double *  value
 

Get potential value (from mesh or approximation) at a point.

Author:
Nathan Baker
Parameters:
thee Vgrid obejct
x Point at which to evaluate potential
value Value of data at point x
Returns:
1 if successful, 0 if off grid


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