Files
LaGriT/test/level01/interp_voronoi/reference/input.lgi
2025-12-17 11:00:57 +08:00

337 lines
8.4 KiB
Plaintext
Executable File

**********************************************************
*TEST intrp/voronoi (lagrit_input_voronoi)
*
* Test grid-to-grid interpolation
* voronoi (or nearest) interpolation method
* copy value of nearest source point to sink point
*
* This input deck starts with demo problems used for manual
* Tests include various element to element types
* and various interpolation settings valid for voronoi method
* Tests include the following sink <- source interpolations
*
* Demo 01 TRI imt <- HEX imt
* Demo 02 QUAD imt <- QUAD imt
* Demo 03 TRI imt <- TET imt
* 04 TRI imtreal <- HEX imtreal with pset selection
* 05 TRI imt <- HEX imt with min tiebreaker
* 06 TRI <- TET
* 07 TRI <- QUAD
* 08 TRI <- TRI
* 09 QUAD <- TRI
* 10 HEX <- TET
* 11 TET <- HEX
* 12 QUAD INT <- TRI INT
* 13 REAL <- REAL
* 14 INT <- REAL
* 15 REAL <- INT
*
* Terry Cherry 2/01/2001
* Note: replace gmv binary with avs ascii
* remove unneeded merged views
**********************************************************
*-----------------------------------------------------
* Demo 01 TRI imt <- HEX imt
* copy integer imt values from source to sink grid
* HEX - read the coarse hex source grid
read avs input_3d_hex.inp cmo_src
* TRI - read the refined triangle sink grid
read avs input_2d_hires.inp cmo_sink
* initialize sink attribute to find errors
cmo setatt cmo_sink imt1 5
intrp/voronoi/cmo_sink imt1/1,0,0/cmo_src imt1/
dump avs output_vor01.inp cmo_sink
* begin compare here
cmo status cmo_src
cmo status cmo_sink
cmo printatt cmo_src imt1 minmax
cmo printatt cmo_sink imt1 minmax
* end compare here
cmo delete cmo_src
cmo delete cmo_sink
*-----------------------------------------------------
* Demo 02 QUAD imt <- QUAD imt
* copy nearest imt from quad grid to quad grid
read avs input_random500_quad.inp cmo_src
read avs input_500_quad.inp cmo_sink
cmo setatt cmo_sink imt1 5
intrp/voronoi/cmo_sink imt1/1,0,0/cmo_src imt1/
dump avs output_vor02.inp cmo_sink
* begin compare here
cmo status cmo_src
cmo status cmo_sink
cmo printatt cmo_src imt1 minmax
cmo printatt cmo_sink imt1 minmax
* end compare here
cmo delete cmo_src
cmo delete cmo_sink
*-----------------------------------------------------
* Demo 03 TRI imt <- TET imt
* Copy nearest imt from tet to tri
read avs input_sphere3d.inp cmo_src
read avs input_sphere2d.inp cmo_sink
cmo setatt cmo_sink imt1 5
intrp/voronoi/cmo_sink imt1/1,0,0/cmo_src imt1/
dump avs output_vor03.inp cmo_sink
* begin compare here
cmo status cmo_src
cmo status cmo_sink
cmo printatt cmo_src imt1 minmax
cmo printatt cmo_sink imt1 minmax
* end compare here
cmo delete cmo_src
cmo delete cmo_sink
*-----------------------------------------------------
* 04 TRI imtreal <- HEX imtreal with pset selection
* copy real attribute values from source to sink
* use pset selection
read avs input_3d_hex.inp cmo_src
read avs input_2d_hires.inp cmo_sink
cmo setatt cmo_sink imtreal 5
pset/psmall/geom/xyz/1,0,0/3. 2. -1. / 6. 6. 6.
intrp/voronoi/cmo_sink imtreal/pset,get,psmall/cmo_src imtreal
dump avs output_vor04.inp cmo_sink
* begin compare here
cmo status cmo_src
cmo status cmo_sink
cmo printatt cmo_src imtreal minmax
cmo printatt cmo_sink imtreal minmax
* end compare here
cmo delete cmo_src
cmo delete cmo_sink
*-----------------------------------------------------
* 05 TRI imt <- HEX imt with min tiebreaker
* tiebreaker set to min, interpolate attribute set to min
read avs input_3d_hex.inp cmo_src
read avs input_2d_hires.inp cmo_sink
cmo setatt cmo_sink imt1 5
intrp/voronoi/cmo_sink imt1/1,0,0/cmo_src imt1/tiemin, min
dump avs output_vor05.inp cmo_sink
* begin compare here
cmo status cmo_src
cmo status cmo_sink
cmo printatt cmo_src imt1 minmax
cmo printatt cmo_sink imt1 minmax
* end compare here
cmo delete cmo_src
cmo delete cmo_sink
*-----------------------------------------------------
* 06 TRI <- TET
read avs input_3d_tet.inp cmo_src
read avs input_2d_hires.inp cmo_sink
cmo setatt cmo_sink imt1 5
intrp/voronoi/cmo_sink imt1/1,0,0/cmo_src imt1/
dump avs output_vor06.inp cmo_sink
* begin compare here
cmo status cmo_src
cmo status cmo_sink
cmo printatt cmo_src imt1 minmax
cmo printatt cmo_sink imt1 minmax
* end compare here
* 3 materials
cmo delete cmo_src
cmo delete cmo_sink
*-----------------------------------------------------
* 07 TRI <- QUAD
read avs input_random500_quad.inp cmo_src
read avs input_500_tri.inp cmo_sink
cmo setatt cmo_sink imt1 5
cmo setatt cmo_sink itetclr 5
intrp/voronoi/cmo_sink imt1/1,0,0/cmo_src imt1/
dump avs output_vor07.inp cmo_sink
* begin compare here
cmo status cmo_src
cmo status cmo_sink
cmo printatt cmo_src imt1 minmax
cmo printatt cmo_sink imt1 minmax
* end compare here
cmo delete cmo_src
cmo delete cmo_sink
*-----------------------------------------------------
* 08 TRI <- TRI
read avs input_random500_tri.inp cmo_src
read avs input_500_tri.inp cmo_sink
cmo setatt cmo_sink imt1 5
cmo setatt cmo_sink itetclr 5
intrp/voronoi/cmo_sink imt1/1,0,0/cmo_src imt1/
dump avs output_vor08.inp cmo_sink
* begin compare here
cmo status cmo_src
cmo status cmo_sink
cmo printatt cmo_src imt1 minmax
cmo printatt cmo_sink imt1 minmax
* end compare here
cmo delete cmo_src
cmo delete cmo_sink
*-----------------------------------------------------
* 09 QUAD <- TRI
read avs input_random500_tri.inp cmo_src
read avs input_500_quad.inp cmo_sink
cmo setatt cmo_sink imt1 5
cmo setatt cmo_sink itetclr 5
intrp/voronoi/cmo_sink imt1/1,0,0/cmo_src imt1/
dump avs output_vor09.inp cmo_sink
* begin compare here
cmo status cmo_src
cmo status cmo_sink
cmo printatt cmo_src imt1 minmax
cmo printatt cmo_sink imt1 minmax
* end compare here
cmo delete cmo_src
cmo delete cmo_sink
*-----------------------------------------------------
* 10 HEX <- TET
read avs input_centered_tet.inp cmo_src
read avs input_centered_hex.inp cmo_sink
cmo setatt cmo_sink imt1 5
cmo setatt cmo_sink itetclr 5
intrp/voronoi/cmo_sink imt1/1,0,0/cmo_src imt1/
dump avs output_vor10.inp cmo_sink
* begin compare here
cmo status cmo_src
cmo status cmo_sink
cmo printatt cmo_src imt1 minmax
cmo printatt cmo_sink imt1 minmax
* end compare here
cmo delete cmo_src
cmo delete cmo_sink
*-----------------------------------------------------
* 11 TET <- HEX
read avs input_centered_hex.inp cmo_src
read avs input_centered_tet2.inp cmo_sink
cmo setatt cmo_sink imt1 5
intrp/voronoi/cmo_sink imt1/1,0,0/cmo_src imt1/
dump avs output_vor11.inp cmo_sink
* begin compare here
cmo status cmo_src
cmo status cmo_sink
cmo printatt cmo_src imt1 minmax
cmo printatt cmo_sink imt1 minmax
* end compare here
cmo delete cmo_src
cmo delete cmo_sink
* Test attribute types
* read the source grid for next set of tests
read avs input_random500_tri.inp cmo_src
* read the sink grid for the next set of tests
read avs input_500_quad.inp cmo_sink
cmo addatt cmo_sink numreal
*-----------------------------------------------------
* 12 QUAD INT <- TRI INT
cmo setatt cmo_sink imt1 0
intrp/voronoi/cmo_sink imt1/1,0,0/cmo_src ialias
dump avs output_vor12.inp cmo_sink
* begin compare here
cmo status cmo_src
cmo status cmo_sink
cmo printatt cmo_src ialias minmax
cmo printatt cmo_sink imt1 minmax
* end compare here
*-----------------------------------------------------
* 13 REAL <- REAL
cmo setatt cmo_sink numreal 0.0
intrp/voronoi/cmo_sink numreal/1,0,0/cmo_src numreal
dump avs output_vor13.inp cmo_sink
* begin compare here
cmo status cmo_src
cmo status cmo_sink
cmo printatt cmo_src numreal minmax
cmo printatt cmo_sink numreal minmax
* end compare here
*-----------------------------------------------------
* 14 INT <- REAL
cmo setatt cmo_sink numreal 0.0
intrp/voronoi/cmo_sink numreal/1,0,0/cmo_src ialias
dump avs output_vor14.inp cmo_sink
* begin compare here
cmo status cmo_src
cmo status cmo_sink
cmo printatt cmo_src ialias minmax
cmo printatt cmo_sink numreal minmax
* end compare here
*-----------------------------------------------------
* 15 REAL <- INT
cmo setatt cmo_sink imt1 0
intrp/voronoi/cmo_sink imt1/1,0,0/cmo_src numreal
dump avs output_vor15.inp cmo_sink
* begin compare here
cmo status cmo_src
cmo status cmo_sink
cmo printatt cmo_src numreal minmax
cmo printatt cmo_sink imt1 minmax
* end compare here
cmo delete cmo_src
cmo delete cmo_sink
* DONE with voronoi test
finish