This Command is used to combine the normal equation and inverse normal equation files from the parent and sibling levels so that the files are in the right order. The parent junction is normally reordered in the sibling files of the helmert block adjustment. The blocks are stored in sub-directories in a tree-like fashion where the parent sub-directory contains the junction informationbetween two or more sibling blocks stored in sub-directories of the parent blocks as shown below.
Sudbury <== Parent (c:/sudbury/) Block 1 Block 2 <== Sibling <== Parent (c:/sudbury/block1/) Block 11 Block 12 Block 21 Block 22 <== Sibling (c:/sudbury/block1/block22) (
The coordinates in the parent block are defined on the coordinate records in the sibling file as a code 5 or 6.
The blocks are partially reduced for each level starting at the lowest or last sub-directory of the adjustment. Each level is partially reduced by combining the partially reduced files from the immediate lower levels.
When the top is reached a standard adjustment is performed. Program COMINV uses the adjustment files from the parent and the sibling level to combine the normal equations from the parent level into the sibling level.
Sudbury Block 1 Block 2 Block 11 Block 12 Block 21 Block 22
For the above case COMINV would be positioned at the SUDBURY (parent) level. The procedure would ask for a sub-directory to combine. In this case BLOCK1 would be combined followed by BLOCK2. The user would then move to the sibling file either BLOCK1 or BLOCK2 and combine for Block11 and Block12 or for block21 and Block22.
Interactive example: sd @ <== set the default directory to the user root sd .data.sudbury <== set the default directory to the parent ghost <== make ghost interactive COMINV <== The user is queried for a lower level block to combine and compute the remaining inverse. Each sub-directory can be combined sequentially. A. .will exit the process $ Sibling directory ? block1 <== User enters directory $ Sibling directory ? block2 <== User enters directory SD .block1 <== Directory to parent COMINV <== Execute procedure $ Sibling directory ? block11 <== User enters directory $ Sibling directory ? block12 <== User enters directory sd [-.block2] <== Directory to parent COMINV <== Execute procedure $ Sibling directory ? block21 <== User enters directory $ Sibling directory ? block22 <== User enters directory type COMINV.lis CONFEL type CONFEL.LIS
The program can also be run in batch mode however each parent sub-directory must contain a file (SIBLING.DAT) that contains a list of all the sibling sub-directories
SUDBURY | BLOCK1 | BLOCK2 ------- | ------ | ------ BLOCK1 | BLOCK11 | BLOCK21 BLOCK2 | BLOCK12 | BLOCK22 blank | blank | blank
The procedure will read this file rather than query the user fo the sibling sub-directories.
The user must batch a job for each parent in turn.
e.g. The user enters a parameter in the batch SUBMIT procedure for the sub-directory for each of the parent sub-directories.<.p>
SUBMIT/PARAMETER=(DATA.SUDBURY)/NOPRINT GHOST$CMND:COMINV SUBMIT/PARAMETER=(DATA.SUDBURY.BLK12)/NOPRINT GHOST$CMND:COMINV SUBMIT/PARAMETER=(DATA.SUDBURY.BLK34)/NOPRINT GHOST$CMND:COMINV