`#include <mc/mc_base.h>`

`#include <mc/aprx.h>`

Include dependency graph for am.h:

This graph shows which files directly or indirectly include this file:

Go to the source code of this file.

## Classes | |

struct | sAM |

Class AM: Definition. More... | |

## Typedefs | |

typedef struct sAM | AM |

Declaraction of the AM class as the AM structure. | |

## Functions | |

AM * | AM_ctor (Vmem *vmem, Aprx *taprx) |

The AM constructor. | |

void | AM_dtor (AM **thee) |

The AM destructor. | |

void | AM_create (AM *thee) |

Create the following internal Alg structures: A ==> The tangent matrix (linearization operator) M ==> The mass matrix W[] ==> The node vectors. | |

void | AM_destroy (AM *thee) |

Destroy the following internal Alg structures: A ==> The tangent matrix (linearization operator) M ==> The mass matrix W[] ==> The node vectors. | |

int | AM_markRefine (AM *thee, int key, int color, int bkey, double elevel) |

Mark a given mesh for refinement. | |

int | AM_refine (AM *thee, int rkey, int bkey, int pkey) |

Refine the mesh. | |

int | AM_unRefine (AM *thee, int rkey, int pkey) |

Un-refine the mesh. | |

int | AM_deform (AM *thee) |

Deform the mesh. | |

int | AM_read (AM *thee, int key, Vio *sock) |

Read in the user-specified initial mesh given in the "MCSF" or "MCEF" format, and transform into our internal datastructures. Do a little more than a "Aprx_read", in that we also initialize the extrinsic and intrinsic spatial dimensions corresponding to the input mesh, and we also then build the reference elements. | |

double | AM_assem (AM *thee, int evalKey, int energyKey, int residKey, int tangKey, int massKey, int bumpKey, Bvec *u, Bvec *ud, Bvec *f, int ip[], double rp[]) |

Assemble the linearized problem at a given level. | |

double | AM_evalJ (AM *thee) |

Assemble the energy functional at the current solution. | |

void | AM_evalFunc (AM *thee, int number, int block, int numPts, double *pts, double *vals, int *marks) |

Evaluate a finite element function. | |

void | AM_bndIntegral (AM *thee) |

Perform a boundary integral. | |

double | AM_evalError (AM *thee, int pcolor, int key) |

Evaluate error in the current solution. | |

void | AM_applyDiriZero (AM *thee, Bvec *which) |

Apply zero dirichlet condition at a given level. | |

void | AM_iniGuess (AM *thee, Bvec *which) |

Setup an initial guess at a given level. | |

int | AM_part (AM *thee, int pkey, int pwht, int ppow) |

Partition the mesh using the matching Alg level. | |

int | AM_partSet (AM *thee, int pcolor) |

Set the partition color. | |

int | AM_partSmooth (AM *thee) |

Do a partition smoothing. | |

void | AM_printJ (AM *thee) |

Print the energy. | |

void | AM_printA (AM *thee) |

Print the system matrix. | |

void | AM_printAnoD (AM *thee) |

Print the system matrix with Dirichlet rows/cols zeroed. | |

void | AM_printAsp (AM *thee, char *fname) |

Print the system matrix in MATLAB sparse format. | |

void | AM_printAspNoD (AM *thee, char *fname) |

Print the system matrix in MATLAB sparse format with Dirichlet rows/cols zeroed. | |

void | AM_printP (AM *thee) |

Print the prolongation matrix. | |

void | AM_printPsp (AM *thee, char *fname) |

Print the prolongation matrix in MATLAB sparse format. | |

void | AM_printV (AM *thee, int num) |

Print a specified vector. | |

void | AM_printVsp (AM *thee, int num, char *fname) |

Print a vector in MATLAB sparse format. | |

void | AM_writeGEOM (AM *thee, Vio *sock, int defKey, int colKey, int chartKey, double gluVal, int fkey, int number, char *format) |

Write out a mesh in some format. | |

void | AM_writeSOL (AM *thee, Vio *sock, int number, char *format) |

Write out a solution in some format. | |

void | AM_memChk (AM *thee) |

Print the exact current malloc usage. | |

void | AM_lSolve (AM *thee, int prob, int meth, int itmax, double etol, int prec, int gues, int pjac) |

Linear solver. | |

void | AM_hlSolve (AM *thee, int prob, int meth, int itmax, double etol, int prec, int gues, int pjac) |

Hierarchical linear solver. | |

void | AM_nSolve (AM *thee, int meth, int itmax, double etol, int lmeth, int litmax, double letol, int lprec, int gues, int pjac) |

void | AM_newton (AM *thee, int itmax, double etol, int lmeth, int litmax, double letol, int lprec, int pjac, double loadParm) |

Damped-Inexact Newton iteration. | |

VPUBLIC void | AM_homotopy (AM *thee, int itmax, double etol, int lmeth, int litmax, double letol, int lprec, int pjac) |

Homotopy and the related "incremental loading" iterations. |

**Note:**- None

**Version:**

**Id**- am.h,v 1.56 2010/07/13 13:37:05 fetk Exp

**Attention:*** * MC = < Manifold Code > * Copyright (C) 1994--2008 Michael Holst * * This library is free software; you can redistribute it and/or * modify it under the terms of the GNU Lesser General Public * License as published by the Free Software Foundation; either * version 2.1 of the License, or (at your option) any later version. * * This library 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 * Lesser General Public License for more details. * * You should have received a copy of the GNU Lesser General Public * License along with this library; if not, write to the Free Software * Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA * *

Generated on Mon Aug 9 11:13:37 2010 for MC by 1.5.6