iembc.h

00001 // copyright by benedikt oswald, all rights reserved, 2002-2006.
00002 // project - aqhdes2003
00003 // file name - iembc.h
00004 // file type - C include file
00005 // objective - enforce electromagnetic boundary conditions
00006 // creation - 2003 mar 18 ~ 20:23:00 by benedikt oswald
00007 // modified - 
00008 // required software - UG 3.1 or higher
00009 // rights for UG - cf. paper by Bastian et al., 1997
00010 // file id -
00011 // inheritance -
00012 // feature - PEC (perfect electrical conductor) CASE:
00013 // feature - enforces electromagnetic boundary conditions on the first
00014 // feature - benchmark problems that we analyze; make sure that
00015 // feature - the electric field coefficients of edges that belong
00016 // feature - to boundary triangles are zero ( E cros n = 0), i.e.
00017 // feature - there is only a normal component of the electric field,
00018 // feature - and also that magnetic flux coefficients of boundary
00019 // feature - triangles are set to zero ( B dot n = 0), i.e. there
00020 // feature - is no normal component of the magnetic flux density;
00021 
00022 /****************************************************************************/
00023 /*                                                                          */
00024 /* auto include mechanism and other include files                           */
00025 /*                                                                          */
00026 /****************************************************************************/
00027 
00028 #include <math.h>
00029 #include <stdlib.h>
00030 #include <stdio.h>
00031 #include <string.h>
00032 
00033 #ifndef __EMBC__
00034 #define __EMBC__
00035 
00036 #ifndef __COMPILER__
00037 #include "compiler.h"
00038 #endif
00039 #ifndef __GM__
00040 #include "gm.h"
00041 #endif
00042 
00043 // include UG header files
00044 #include "gm.h"              /* for data structure               */
00045 #include "ugstruct.h"        /* for GetStringValue               */
00046 #include "misc.h"            /* for MIN, MAX, PI, ...            */
00047 #include "ugdevices.h"       /* for UserWrite, PrintErrorMessage */ 
00048 #include "commands.h"        /* for GetCurrentMultigrid          */
00049 #include "cmdint.h"          /* for CreateCommand                */
00050 #include "cmdint.h"          /* for CreateCommand                */
00051 #include "cmdline.h"         /* for command line processing      */
00052 #include "general.h"         /* for general desclarations        */
00053 #include "np.h"              /* for NUMPROC implementation       */
00054 #include "assemble.h"        /* for CreateCLASS implementation   */
00055 #include "compiler.h"
00056 #include "namespace.h"
00057 
00058 USING_UG_NAMESPACE
00059 USING_UGDIM_NAMESPACE
00060 
00061 
00062 /****************************************************************************/
00063 /*                                                                          */
00064 /* defines in the following order                                           */
00065 /*                                                                          */
00066 /*        compile time constants defining static data size (i.e. arrays)    */
00067 /*        other constants                                                   */
00068 /*        macros                                                            */
00069 /*                                                                          */
00070 /****************************************************************************/
00071 
00072 /****************************************************************************/
00073 /*                                                                          */
00074 /* data structures exported by the corresponding source file                */
00075 /*                                                                          */
00076 /****************************************************************************/
00077 
00078 /****************************************************************************/
00079 /*                                                                          */
00080 /* definition of exported global variables                                  */
00081 /*                                                                          */
00082 /****************************************************************************/
00083 
00084 
00085 /****************************************************************************/
00086 /*                                                                          */
00087 /* function declarations                                                    */
00088 /*                                                                          */
00089 /****************************************************************************/
00090 
00091 INT EnforceIEMBC(NP_BASE *base,
00092                  INT embctype);
00093 
00094 #endif

Generated on Fri Oct 26 14:04:29 2007 for acheron3d by  doxygen 1.4.7