This Command is used to compute the back solution 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 information between 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/block11)
The coordinates in the parent block are defined on the coordinate records in the sibling directory files 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 partally reduced files from the immediate lower levels.
When the top is reached a standard adjustment is performed. Program BAKSOL uses the adjustment files from both the parent and the sibling directory to compute the solution for
the sibling level.
Sudbury
Block 1 Block 2
Block 11 Block 12 Block 21 Block 22
For the above case BAKSOL would be executed first at the SUDBURY (parent) level. The procedure would ask for a sub-directory to back-solve. In this case BLOCK1 would be solved followed by BLOCK2. The user would then move to a sibling directory, say BLOCK1 and solve for Block11 and Block12 or move to BLOCK2 and solve for block21 and Block22.
Interactive processing: (PC)
[ denotes optional
[sd @ <== set the default directory to
the user root
[sd .data.sudbury <== set the default directory
to the parent
[ghost <== make ghost interactive
BAKSOL <== execute procedure
$ Sibling directory ? block12 <== enter sibling directory
$ Sibling directory ? block34 <== enter sibling directory
$ Sibling directory ? <CR> <== exit procedure
sd .block1 <== set default directory to
second level
BAKSOL <==Execute procedure
$ Sibling directory ? block1 <== Enter sibling directory
$ Sibling directory ? block2 <== Enter sibling directory
$ Sibling directory ? <CR> <== Exit procedure
sd [-.block2] <== go to another parent
BAKSOL <== Execute procedure
$ Sibling directory ? block3 <== enter sibling directory
$ Sibling directory ? block4 <== enter sibling directory
$ Sibling directory ? <CR> <== Exit procedure
Etc.
type BAKSOL.lis
comres
type COMRES.LIS
.
.
Batch processing:
The program can also be run in batch mode however
each parent sub-directoy must contain a file
(SIBLING.DAT) that contains a list of all the
sibling sub-directories
e.g.
BLOCK1
BLOCK2
blank
The procedure will read this file rather than querying
the user fo the sibling sub-directories.
The user batches a job for each parent in turn
e.g.
The user enters a parameter in the batch procedure
1. The sub-directory for the files.
SUBMIT/PARAMETER=(DUA1:[BEATTIE.DATA.SUDBURY])/NOPRINT -
GHOST$CMND:BAKSOL.COM
NOTE: To allow for entry from different drives the full
directory specification must be used in the submit
parameter.