sysprotransform.h File Reference

#include "syspro.h"
#include "petsc.h"

Go to the source code of this file.

Functions

PetscErrorCode NewTransform (char *name, SalsaTransform *)
PetscErrorCode DeregisterTransform (SalsaTransform)
PetscErrorCode TransformGetName (SalsaTransform, char **)
PetscErrorCode TransformGetByName (char *, SalsaTransform *)
PetscErrorCode NewTransformObject (char *, char *, SalsaTransformObject *)
PetscErrorCode FreeTransformObject (SalsaTransformObject tf)
PetscErrorCode TransformObjectGetByName (char *, char *, SalsaTransformObject *)
PetscErrorCode TransformGetObjects (SalsaTransform, int *, SalsaTransformObject **)
PetscErrorCode TransformObjectGetName (SalsaTransformObject, char **)
PetscErrorCode TransformObjectGetTransformName (SalsaTransformObject, char **)
PetscErrorCode TransformObjectsGetNames (SalsaTransform, char ***)
PetscErrorCode TransformObjectSetExplanation (SalsaTransformObject, char *)
PetscErrorCode TransformObjectSetSuitabilityFunction (SalsaTransformObject, void *, PetscErrorCode(*)(NumericalProblem, void *, SuitabilityValue *))
PetscErrorCode TransformObjectGetSuitabilityFunction (SalsaTransformObject, void **, PetscErrorCode(**)(NumericalProblem, void *, SuitabilityValue *))
PetscErrorCode TransformObjectAddOptionExplanation (SalsaTransformObject, int, char *)
PetscErrorCode TransformItemGetFirstOption (char *, char *, int *, PetscTruth *)
PetscErrorCode TransformItemGetNextOption (char *, char *, int *, PetscTruth *)
PetscErrorCode TransformReportTeXTable (SalsaTransform, FILE *)
PetscErrorCode TransformReportEnabled (SalsaTransform, char **)
PetscErrorCode TransformItemDescribeShort (SalsaTransform, char *, int, char **)
PetscErrorCode TransformItemDescribeLong (SalsaTransform, char *, int, char **)
PetscErrorCode TransformObjectMark (SalsaTransformObject tf)
PetscErrorCode TransformObjectUnmark (SalsaTransformObject tf)
PetscErrorCode TransformObjectsMarkAll (SalsaTransform tf)
PetscErrorCode TransformObjectsUnmarkAll (SalsaTransform tf)
PetscErrorCode TransformObjectGetMark (SalsaTransformObject, int *)
PetscErrorCode TransformItemOptionMark (SalsaTransform, char *, int)
PetscErrorCode TransformGetNUnmarked (SalsaTransform, int *)
PetscErrorCode TransformObjectsUseOnly (SalsaTransform, char *list)
PetscErrorCode TransformItemOptionsUseOnly (SalsaTransformObject, char *)
PetscErrorCode TransformGetNItems (SalsaTransform, int *n)
PetscErrorCode TransformGetNextUnmarkedItem (SalsaTransform, char *, SalsaTransformObject *, PetscTruth *)
PetscErrorCode PreprocessorSaveAprioriSelection (SystemPreprocessor)
PetscErrorCode PreprocessorApplyAprioriSelection (SystemPreprocessor)
PetscErrorCode SysProDefineCharAnnotation (char *, char *)
PetscErrorCode TransformCharAnnotationGetIndex (SalsaTransform, char *, int *, PetscTruth *)
PetscErrorCode TransformObjectCharAnnotate (SalsaTransformObject, char *, char *)
PetscErrorCode TransformObjectIntAnnotate (SalsaTransformObject tf, char *, int)
PetscErrorCode TransformObjectGetIntAnnotation (SalsaTransformObject, char *an, int *v, PetscTruth *f)
PetscErrorCode SysProDefineIntAnnotation (char *, char *)
PetscErrorCode TransformIntAnnotationGetIndex (SalsaTransform, char *, int *, PetscTruth *)
PetscErrorCode TransformItemIntAnnotate (SalsaTransform, int, int)
PetscErrorCode TransformItemGetIntAnnotation (SalsaTransform, int idx, char *an, int *v, PetscTruth *f)
PetscErrorCode TransformObjectDefineOption (SalsaTransformObject, char *)
PetscErrorCode TransformObjectAddOption (SalsaTransformObject, int)
PetscErrorCode TransformItemCharAnnotationGetIndex (SalsaTransform, char *, int *)
PetscErrorCode TransformItemGetCharAnnotation (SalsaTransform, int idx, char *an, char **v, PetscTruth *)
PetscErrorCode TransformCurrentItemDefineOption (SalsaTransform, char *, char *)
PetscErrorCode TransformItemDefineOption (SalsaTransform, int, char *, char *)
PetscErrorCode TransformItemGetNOptions (SalsaTransform, int it, int *nopt)
PetscErrorCode TransformItemGetOptionI (SalsaTransform, int it, int iopt, int *v)
PetscErrorCode TransformSetUserChoices (SalsaTransform, PetscTruth)
PetscErrorCode TransformGetUserChoices (SalsaTransform, PetscTruth *)


Function Documentation

PetscErrorCode DeregisterTransform ( SalsaTransform   ) 

PetscErrorCode FreeTransformObject ( SalsaTransformObject  tf  ) 

PetscErrorCode NewTransform ( char *  name,
SalsaTransform tf 
)

Define a new class of preprocessors, for instance scaling or permutation.

Definition at line 31 of file transform.c.

References SalsaTransform_::alloc_objects, SalsaTransform_::aprioriselection, CHKERRQ(), ierr, SalsaTransform_::n_objects, SalsaTransform_::name, TFINC, and SalsaTransform_::transformobjects.

Referenced by DeclarePreprocessor().

PetscErrorCode NewTransformObject ( char *  transform,
char *  name,
SalsaTransformObject to 
)

Create a transform object specified by name for the preprocessor class transform. The to parameter can be NULL if no further specifications of the object are needed, in which case this only registers the name.

Definition at line 92 of file transform.c.

References SalsaTransform_::alloc_objects, CHKERRQ(), ierr, SalsaTransform_::n_objects, SalsaTransformObject_::name, SalsaTransformObject_::transform, TransformGetByName(), and SalsaTransform_::transformobjects.

Referenced by declareadders(), setup_approximation_choices(), setup_distribution_choices(), setup_flipsign_choices(), setup_ksp_choices(), setup_pc_choices(), setup_scaling_choices(), and setup_singleton_choices().

PetscErrorCode PreprocessorApplyAprioriSelection ( SystemPreprocessor   ) 

PetscErrorCode PreprocessorSaveAprioriSelection ( SystemPreprocessor   ) 

PetscErrorCode SysProDefineCharAnnotation ( char *  transform,
char *  ann 
)

Define a character string annotation for a transform. The index of this annotation can be retrieved with TransformCharAnnotationGetIndex(). The actual annotation can be found with TransformItemGetCharAnnotation().

Definition at line 243 of file transform.c.

References SalsaTransform_::annotations_c, CHKERRQ(), ierr, SalsaTransform_::n_annotate_c, TFINC, and TransformGetByName().

Referenced by setup_ksp_choices().

PetscErrorCode SysProDefineIntAnnotation ( char *  transform,
char *  ann 
)

Define a integer string annotation for a transform. The index of this annotation can be retrieved with TransformIntAnnotationGetIndex(). The actual annotation can be found with TransformItemGetIntAnnotation().

Definition at line 297 of file transform.c.

References SalsaTransform_::annotations_i, CHKERRQ(), ierr, SalsaTransform_::n_annotate_i, TFINC, and TransformGetByName().

Referenced by setup_distribution_choices(), setup_ksp_choices(), setup_pc_choices(), and setup_scaling_choices().

PetscErrorCode TransformCharAnnotationGetIndex ( SalsaTransform  ,
char *  ,
int *  ,
PetscTruth *   
)

PetscErrorCode TransformCurrentItemDefineOption ( SalsaTransform  ,
char *  ,
char *   
)

PetscErrorCode TransformGetByName ( char *  ,
SalsaTransform  
)

PetscErrorCode TransformGetName ( SalsaTransform  ,
char **   
)

Definition at line 66 of file transform.c.

References SalsaTransform_::name.

PetscErrorCode TransformGetNextUnmarkedItem ( SalsaTransform  tf,
char *  old,
SalsaTransformObject snew,
PetscTruth *  f 
)

Find the next unmarked value; if old is NULL, the first first unmarked value is given, otherwise the first one after a match with old.

Definition at line 477 of file transform.c.

References SalsaTransformObject_::marked, SalsaTransform_::n_objects, SalsaTransformObject_::name, SalsaTransform_::transformobjects, and TRUTH.

Referenced by ChooseFirstTransform(), PreprocessedSolution(), and PreprocessorsOptionsHandling().

PetscErrorCode TransformGetNItems ( SalsaTransform  ,
int *  n 
)

PetscErrorCode TransformGetNUnmarked ( SalsaTransform  ,
int *   
)

PetscErrorCode TransformGetObjects ( SalsaTransform  ,
int *  ,
SalsaTransformObject **   
)

PetscErrorCode TransformGetUserChoices ( SalsaTransform  ,
PetscTruth *   
)

Definition at line 794 of file transform.c.

References SalsaTransform_::userchoices.

Referenced by PreprocessedSolution().

PetscErrorCode TransformIntAnnotationGetIndex ( SalsaTransform  ,
char *  ,
int *  ,
PetscTruth *   
)

PetscErrorCode TransformItemCharAnnotationGetIndex ( SalsaTransform  ,
char *  ,
int *   
)

PetscErrorCode TransformItemDefineOption ( SalsaTransform  ,
int  ,
char *  ,
char *   
)

PetscErrorCode TransformItemDescribeLong ( SalsaTransform  ,
char *  ,
int  ,
char **   
)

PetscErrorCode TransformItemDescribeShort ( SalsaTransform  ,
char *  ,
int  ,
char **   
)

PetscErrorCode TransformItemGetCharAnnotation ( SalsaTransform  ,
int  idx,
char *  an,
char **  v,
PetscTruth *   
)

PetscErrorCode TransformItemGetFirstOption ( char *  ,
char *  ,
int *  ,
PetscTruth *   
)

PetscErrorCode TransformItemGetIntAnnotation ( SalsaTransform  ,
int  idx,
char *  an,
int *  v,
PetscTruth *  f 
)

PetscErrorCode TransformItemGetNextOption ( char *  ,
char *  ,
int *  ,
PetscTruth *   
)

PetscErrorCode TransformItemGetNOptions ( SalsaTransform  ,
int  it,
int *  nopt 
)

PetscErrorCode TransformItemGetOptionI ( SalsaTransform  ,
int  it,
int  iopt,
int *  v 
)

PetscErrorCode TransformItemIntAnnotate ( SalsaTransform  ,
int  ,
int   
)

PetscErrorCode TransformItemOptionMark ( SalsaTransform  ,
char *  ,
int   
)

PetscErrorCode TransformItemOptionsUseOnly ( SalsaTransformObject  ,
char *   
)

PetscErrorCode TransformObjectAddOption ( SalsaTransformObject  ,
int   
)

PetscErrorCode TransformObjectAddOptionExplanation ( SalsaTransformObject  ,
int  ,
char *   
)

PetscErrorCode TransformObjectCharAnnotate ( SalsaTransformObject  ,
char *  ,
char *   
)

PetscErrorCode TransformObjectDefineOption ( SalsaTransformObject  ,
char *   
)

Definition at line 508 of file transform.c.

References SalsaTransformObject_::option.

Referenced by declareadders(), setup_ksp_choices(), and setup_pc_choices().

PetscErrorCode TransformObjectGetByName ( char *  ,
char *  ,
SalsaTransformObject  
)

PetscErrorCode TransformObjectGetIntAnnotation ( SalsaTransformObject  ,
char *  an,
int *  v,
PetscTruth *  f 
)

PetscErrorCode TransformObjectGetMark ( SalsaTransformObject  ,
int *   
)

Definition at line 393 of file transform.c.

References SalsaTransformObject_::marked.

Referenced by TransformReportEnabled().

PetscErrorCode TransformObjectGetName ( SalsaTransformObject  ,
char **   
)

PetscErrorCode TransformObjectGetSuitabilityFunction ( SalsaTransformObject  tf,
void **  sctx,
PetscErrorCode(**)(NumericalProblem, void *, SuitabilityValue *)  f 
)

Retrieve the suitability function and context; see Suitability functions. Both arguments can be null.

Definition at line 182 of file transform.c.

References SalsaTransformObject_::suitabilityctx, and SalsaTransformObject_::suitabilityfunction.

Referenced by PreprocessorSpecificSetup(), and unset_ksps().

PetscErrorCode TransformObjectGetTransformName ( SalsaTransformObject  ,
char **   
)

Definition at line 192 of file transform.c.

References SalsaTransform_::name, and SalsaTransformObject_::transform.

PetscErrorCode TransformObjectIntAnnotate ( SalsaTransformObject  tf,
char *  ,
int   
)

PetscErrorCode TransformObjectMark ( SalsaTransformObject  tf  ) 

PetscErrorCode TransformObjectSetExplanation ( SalsaTransformObject  ,
char *   
)

PetscErrorCode TransformObjectSetSuitabilityFunction ( SalsaTransformObject  tf,
void *  sctx,
PetscErrorCode(*)(NumericalProblem, void *, SuitabilityValue *)  f 
)

Set the suitability function; see Suitability functions

Definition at line 168 of file transform.c.

References SalsaTransformObject_::suitabilityctx, and SalsaTransformObject_::suitabilityfunction.

Referenced by setup_ksp_choices().

PetscErrorCode TransformObjectsGetNames ( SalsaTransform  tf,
char ***  names 
)

Get the names of all declared transformobjects. An array is allocated for the names, which needs to be PetscFree()'d.

Definition at line 223 of file transform.c.

References CHKERRQ(), ierr, SalsaTransform_::n_objects, SalsaTransformObject_::name, and SalsaTransform_::transformobjects.

Referenced by ContinueRetrievingAllPreprocessors(), and TransformReportEnabled().

PetscErrorCode TransformObjectsMarkAll ( SalsaTransform  tf  ) 

PetscErrorCode TransformObjectsUnmarkAll ( SalsaTransform  tf  ) 

PetscErrorCode TransformObjectsUseOnly ( SalsaTransform  tf,
char *  list 
)

Mark a list of names as to be used.

Cases:

  • "name1,name2,name3" : all other names are marked as not to be used
  • "not,name1,name2" : all names will be used, except for the ones listed

Definition at line 445 of file transform.c.

References CHKERRQ(), ierr, SalsaTransform_::name, TransformObjectGetByName(), TransformObjectMark(), TransformObjectsMarkAll(), TransformObjectsUnmarkAll(), and TransformObjectUnmark().

Referenced by PreprocessorsOptionsHandling().

PetscErrorCode TransformObjectUnmark ( SalsaTransformObject  tf  ) 

PetscErrorCode TransformReportEnabled ( SalsaTransform  ,
char **   
)

PetscErrorCode TransformReportTeXTable ( SalsaTransform  ,
FILE *   
)

PetscErrorCode TransformSetUserChoices ( SalsaTransform  ,
PetscTruth   
)

Definition at line 785 of file transform.c.

References SalsaTransform_::userchoices.

Referenced by PreprocessorsOptionsHandling().


Generated on Sun Oct 4 04:03:05 2009 for System Preprocessors by  doxygen 1.5.9