Geometry Information

  Much geometry information is maintained in the geom common block which is defined in the include file geom_lg.h. ————- ———————————————————— nsurf  is the number of surfaces nregs  is the number of regions nmregs  is the number of mregions maxdef is the number of tokens in the longest region definition maxmdef  is the number of tokens in the longest mregion definition. lastregdef end of regdef array lastmregdef end of regmdef array lastsparam end of sparam array ————- ————————————————————

Geometry information is contained in a set of memory managed arrays whose partition name is the geometry name.

Retrieve the geometry name by:

           call cmo_get_attinfo(‘geom_name, cmo_name, iout, rout, geom_name, ipout, itype,ierror)

Surface information includes:

 

----------- ---------------------------------------------------------------
csall       surface name
istype      surface type (e.g. 'plane', cylinder, .....)
ibtype      boundary type (e.g. 'reflect;, 'interface', ...)
sheetnm     sheetname (for sheet surface types only)
surfparam   data describing the surface, varies depending on surface type
offsparam   offset into surfparam for a given surface
----------- ---------------------------------------------------------------

Region/mregion information includes:

------------------------ -----------------------------------------------------------
cregs (cmregs)           region (mregions) names
ndetregs(ndefmregs)      number of tokens in region(mregion) definition
regdef (mregdef)         region (mregion) definition
offregdef (offmregdef)   offset into regdef (mregdef) for a given region (mregion)
matregs                  material number fo a material region
------------------------ -----------------------------------------------------------

subroutine get_material_number(mregion_name,number,ierror)

         returns the material number associated with the material region called mregion_name.

Any of the memory managed geometry arrays can be accessed using mmfindbk, for example:

          character *32 pointer (ipcsall, csall)

          call mmfindbk(‘csall’, geom_name,ipcsall,length,ierror)

          where geom_name has been retrieved from the mesh object using cmo_get_attinfo.