Best-Fit Computing - COLUMBUS Network Adjustment Software

Quick Tips for Using COLUMBUS

Network adjustment

Trig Level Adjustment

In this approach, you set up at a random position ('Temp1' for example) between your starting benchmark ('AA' with known elevation) and the forward station ('BB'). Using the same target height at station 'AA' and 'BB', you then measure the zenith angle and slope distance to both 'AA' and 'BB'. Instrument and target heights are not measured, since we are not ultimately interested in the elevation of 'Temp1'. Next, you move the instrument to a random position ('Temp2') between station 'BB' and the next station ('CC' for example) and repeat the process (measure to 'BB', then to 'CC').

Back to top

Corrections made to observations during the adjustment process

After performing a network adjustment and reviewing any of the observation reports (adjusted observations, outlier observations or no-check observations), you may notice entries for "corrected" observations. Corrected observations are observations that are modified before the adjustment actually takes place. These modifications are due to any one (or more) of the following:

Corrections before adjustment.

  • Deflection of the vertical: If you have provided deflection of the vertical information for one or more geodetic stations in the network, observations tied to these stations will be corrected from Astronomic (leveled in the direction of gravity) to Geodetic (leveled in the direction of the ellipsoidal normal). Observations affected include: azimuths, directions, horizontal angles, and zenith angles. This correction is only applied in 3D Geodetic adjustments. For 2D Geodetic adjustments, the corrections would have no practical effect on the resulting solution.

  • Mark-to-mark reductions: If you have provided instrument and target height information for your terrestrial observations, they will automatically be reduced to mark-to-mark observations prior to adjustment. Observations affected include: zenith angles and chord distances. This correction is only applied in 3D adjustments.

  • Bearing rotations: If you have enabled the Rotate Bearings option in COLUMBUS (usually only enabled for PLSS adjustments), bearings will be rotated from an assumed average bearing to a true bearing (or azimuth). This correction applies to both 2D and 3D adjustments.

  • Refraction: If you have provided a zenith angle refraction correction in COLUMBUS, zenith angles will be corrected for refraction. This correction is applied in 3D adjustments. For 2D adjustments, the corrections would have no practical effect on the resulting solution.

  • Scalers: If you have provided an observation scaler correction for linear observations in COLUMBUS, they will be scaled prior to adjustment. Observations affected can include: chord distance, horizontal distance, geodesic, geo chord, height diff, dX, dY, dZ, dN, dE, dUp. This correction is applies to applicable observations in 1D, 2D, and 3D adjustments.

    Some of the above corrections require knowledge of the coordinates at the AT and TO station. For this reason, these corrections are recomputed during each iteration as the approximate coordinates converge to a better solution.

Corrections during adjustment

    There is one additional category of correction that is actually made during adjustment and does not show up as a corrected observation. These are rotation and scale corrections to GPS observations. If you have enabled Rotation and Scaling of GPS observations, the adjusted GPS observations will reflect the computed scale and/or rotations made during adjustment. This only applies to 3D adjustments for which you have supplied the minimum number of control stations to use GPS rotation and/or scaling.

Back to top

Three tests for identifying outlier observations

Outlier observations are observations that may be causing distortion in your survey due to errors in their measurement. We use the word "may" here, because sometimes "suspected" outlier observations have nothing wrong with them at all. Sometimes, a network gets warped by "hidden" outlier observations, which in turn make good observations look like outliers. For this reason, the determination of the actual outlier observations is not always a straightforward process.

COLUMBUS directly supports three ratio tests for identifying "possible" outlier observations. There may be other tests that you rely on, as well. Usually, you can perform additional tests from the adjustment results generated by COLUMBUS.

  1. The Standardized Residual test

    This test compares the standardized residual for each observation against the Standardized Residual Constant. The standardized residual is the ratio between the observation's residual and the standard deviation of the residual. It is a unitless quantity and therefore only one Standardized Residual Constant cutoff value is required (in other words, you do not need a different value for every observation type).

    The Standardized Residual test has been recognized as one of the better indicators for identifying possible outlier observations. A commonly accepted methodology is to perform your adjustment repeatedly until all observations flagged by this test have been removed. However, only one observation should be removed after each adjustment. The removal of the largest offender could, and often does, result in smaller offenders disappearing during subsequent adjustments (therefore, they need not be removed).

    See the Real-World Applications of COLUMBUS topic, Outlier Detection Using Automated Search", for an automated approach to removing outliers using this test.

  2. The Residual / Apriori Standard Deviation test

    This test compares the ratio of the observation's residual and the observation's a priori (before adjustment) standard deviation against the Residual/Standard Deviation Constant. Observations with ratios exceeding this constant are flagged as possible outliers. Like the Standardized Residual, it is a unitless quantity and therefore only one Residual/Standard Deviation Constant cutoff value is required (in other words, you do not need a different value for every observation type).

  3. The Residual test

    This test compares the absolute value of the residual for each of the 19 observation types supported by COLUMBUS against the Residual Rejection Constant for that observation type. It is a very simple test intended to help you quickly identify observations that are being adjusted by an amount more than you expected.

To establish the cutoff constant for each of these tests, do the following:

  1. From the Options menu, select Network Options | Outlier Rejection Constants.

  2. To modify the current Standardized Residual Constant, change the Standardized Residual field. If you want COLUMBUS to compute the constant using the TAU statistic, set the Standardized Residual field to Zero. See the User Manual for more details on the TAU statistic. (Click here to download the User Manual.)

  3. To modify the current Residual/Standard Deviation Constant, change the Residual/Apriori Stan Dev field.

  4. To modify the Residual Rejection Constant, change the applicable observation type constant. Angular entries should be entered in seconds (10 seconds is 10.000). Linear entries should be entered in the active linear units.

  5. Click OK to save the changes.

After performing a network adjustment, the number of observations failing each of these tests is displayed in the Network Processing Summary View. To examine the observations, from the Results menu select Observations | Outlier Observations. The results can be sorted by clicking on the desired column heading.

Back to top

Using PPM to influence a distance standard deviation

COLUMBUS allows you to set a PPM value for chord and horizontal distance observations. The PPM results in an additive change to your current standard deviation for these two observation types. The change is as follows:

currentStanDev = currentStanDev + (observed distance * PPM / 1000000.0)

If the current distance standard deviations are set to 0.0, the PPM setting will in effect set the standard deviation completely. If the current distance standard deviations are set to a value greater than zero, the PPM will increase the current distance standard deviation.

There are two ways to set a PPM for these two distance type observations:

  1. Globally for the whole network

    1. Set the PPM for each observation type (chord and horizontal distance). To set the option globally, from the Options menu, select Network Options | Default PPM and make the applicable setting. To turn it off, simply set the value back to zero.

    2. They can be set globally in the COLUMBUS ASCII (Text) input file before the actual observation types are defined. Use the following entry for each PPM observation type to set the PPM to 1.5ppm. Column alignments are not required. When the file is loaded, the PPM values will be carried with all the applicable observation set records.

    !Turn PPM on for all chord distance and horizontal distance observations which follow
    $PPM_CHORDDIST;    1.5
    $PPM_HORIZDIST;   1.5

  2. Locally for individual observations

    1. You can set up a PPM for any observation set which contains either a chord distance or a horizontal distance from within the applicable Data | Observations dialog.

    2. You can set up each PPM in the COLUMBUS ASCII (Text) input file right before the applicable observation set (see 1.b. above). To turn off the PPM, simply set the value back to zero immediately following the applicable observation set. Alternatively, you can set it to a new value before the next applicable observation set. When the file is loaded, the PPM values will be carried with all the applicable observation set records.

    !Turn PPM on for the next observation set containing a chord distance
    $PPM_CHORDDIST;    1.5
    !Observation set defined here (i.e, $HOR, $HOR_COMPACT, etc.
    !Turn back off
    $PPM_CHORDDIST;     0.0

Back to top

Setting up auto report generation

COLUMBUS allows you select which adjustment reports you want displayed in the adjustment summary view. For information on setting up these selections, please see the Quick Tip Generating Formatted Reports.

Once the adjustment has completed, the selected reports can be viewed in the Adjustment Summary view. To create a report file, click on the Report File toolbar button and enter a file name. Of course, you can always view each report grid from the Results menu. Each report grid can be sorted by any of its available columns. Column sorting is a very powerful tool when evaluating statistics.

If you select a report that is not applicable to the current adjustment mode (1D, 2D or 3D), COLUMBUS will simply ignore the setting. This way, you can simply flag all reports to be generated, and COLUMBUS will generate only those reports that are applicable to the current adjustment mode.

For example: You are performing a 1D vertical adjustment, but you have set up the generation of the distance error report. COLUMBUS will simply ignore this setting, since it is not applicable to a 1D vertical adjustment.

Back to top

Weighted Station adjustment using coordinate observations

NOTE: While the technique described below will continue to be supported within COLUMBUS, the preferred way to set up coordinate observations is now within the Data - Observations - Geo Coordinate Set grid.

COLUMBUS provides three different ways to influence a station coordinate component (latitude, longitude or height) during a network adjustment: the component can be set to either fixed, free (float) or constrained.

  • Station coordinate components set to be fixed do not move during adjustment.
  • Station coordinate components set to be free (or floating) can move as much as the measured network observations dictate.
  • Station coordinate components set to be constrained can move or not move, depending on their weighting in the adjustment.

The remainder of this topic concerns setting station coordinate components to be constrained in a geodetic network adjustment.

Note: Below, the terms "constrained" and "weighted" mean the same thing.

In mathematical modeling, the word "constrain" loosely means to confine movement within a limited area. Constraining coordinate components means we will allow them to move in the network adjustment, but within some limits governed by the coordinate component's standard deviation.

By allowing a coordinate component to move slightly, we directly influence the movement of all free stations in the network. In effect, we propagate the known errors (as given by their standard deviation) in each constrained station coordinate component into the whole network. Usually, the source of the constrained station coordinate component and the corresponding standard deviation is from a previous network adjustment (either by you or someone else.)

To weight a station, you need to establish coordinate observations for that station. Within COLUMBUS, this process is handled nearly transparently when you set a station coordinate component to be constrained. For each coordinate component set to be constrained, a coordinate observation is created. That observation is weighted by the coordinate component's standard deviation

To weight station components in COLUMBUS, do the following:

  1. Load your network into COLUMBUS.

  2. Enter the Data menu, select Stations | Geodetic grid and edit the standard deviation value for any station coordinate component that will be constrained in the adjustment. The values you enter will form the basis of weighting the coordinate observation for each coordinate component.

  3. Follow Steps Two and Three of Network Adjustment in Six Steps.

  4. From the Network menu, select Constrained Stations and select the station(s) to be constrained.

    • To constrain only the latitude and longitude for a station, set the station to be constrained in 2D.

    • To constrain only the height for a station, set the station to be constrained in 1D.

    • To constrain all three components, set the station to be constrained in 3D.

  5. Follow Steps Four, Five and Six of Network Adjustment in Six Steps.

Note: When you open the Select Observations dialog, you will see the new coordinate observations at the top of the list. Be sure to select these observations to be in the network adjustment.

Hint: When setting up your stations to be in one of several different network adjustment modes (1D, 2D, 3D fixed; 1D, 2D, 3D constrained; or floating), it is very helpful to establish a different color scheme for each station mode. This allows for easy visibility of each station mode displayed on the screen. To set up these colors, see the Quick Tip, Setting the visible entity colors within COLUMBUS.

Back to top

Computing approximate coordinates for 2D/3D networks

When you start a 2D or 3D network adjustment in COLUMBUS, several things happen. One important task is the computation of the initial starting solution. Because 2D/3D network adjustments are non-linear (unlike 1D, which is linear), an initial starting solution is required. That starting solution is in the form of the approximate coordinates for each station in the network: latitude, longitude and hgt (if a 3D geodetic network).

For GPS networks, the initial (approximate) coordinates are usually provided by the GPS software. If not, they are usually easy to compute from the GPS baselines provided.

For Terrestrial networks (or any GPS network containing some terrestrial observations), calculating the approximate coordinates can be more difficult, especially when partial sets of observations are collected at various stations (such as only a chord distance from station 'A' to 'B', and so on.)

While COLUMBUS uses a rigorous algorithm to calculate approximate coordinates from terrestrial observations, sometimes a few station coordinates cannot be determined. When this happens, you need to take some remedial action on those stations (which could not be computed), before the network adjustment can proceed.

First Method:

One way to remedy this situation is for you to provide all the approximate coordinates directly. This can be accomplished by supplying the coordinates in your data file or by entering the station coordinates within the applicable Data | Stations grid. Before starting a network adjustment, you should also tell COLUMBUS to use the values you have provided first, then compute approximate coordinates for all unknown stations. To do this, from the Options menu select Network Options | Network Settings and enable the Use Known Approx Coords First check box.

Second Method:

A second way to remedy this situation is allow COLUMBUS to compute as many stations as it can, then you provide the coordinates for any stations which could not be computed. This will usually save you time and effort and is, in fact, a combination of the first approach mentioned above.

  1. Run COLUMBUS.

  2. From the Options menu, select Network Options | Network Settings and enable the View Approx Coords check box.

  3. Follow the first five steps to network adjustment.

  4. When you get the message, "# stations could not be computed", click OK to view the stations which could not be computed. Make a note (or generate a report) of these stations. Click the Continue button to continue with the adjustment.

  5. You will then be presented with a dialog which allows you to view the approximate coordinates computed for all stations in the network. Click the Keep button to keep these approximate coordinates into memory. That way, you will not have to enter them in the next step.

  6. For the stations which could not be computed, manually enter approximate coordinates (from the Data menu, select the applicable Stations grid).

  7. From the Options menu, select Network Options | Network Settings and enable the Use Known Approx Coords First check box to disable the computation of approximate coordinates by COLUMBUS (as its first choice).

  8. Restart the network adjustment. If all your approximate coordinates provided are reasonably good, the adjustment will proceed.

Note: Usually, COLUMBUS is able to compute all your station approximate coordinates with no problems. Issues usually arise when a portion of your network is being determined through trilateration, triangulation or some other indirect field method. For GPS networks (with no terrestrial observations), you should never have this problem.

Import geodetic coordinates created using Google Earth

Back to top

Override observation standard deviations prior to adjustment

COLUMBUS allows you to override the current observation standard deviations in memory at any time prior to adjustment or pre-analysis. For example, you may decide that you want all your chord (slope) distances to have a standard deviation of 0.003 meters for the next adjustment.

To set this up, do the following:

  1. Load your network into COLUMBUS (if not already done).

  2. From the Options menu, select Units and change the active linear units to Meters.

  3. From the Options menu, select Network Options | Default Obs SD's.

  4. Change the Chord SD field from Zero (0.0, which means off) to 0.0030.

  5. Click OK.

Perform a network adjustment. All chord distances will be adjusted based on a standard deviation of 0.0030 meters. To turn off this setting, simply change the default chord standard deviation back to Zero (0.0).

Back to top

'Keep' your adjusted coordinates into memory for other uses

One you have performed a 1D, 2D or 3D network adjustment, you can 'Keep' the adjusted coordinates into memory for use in other areas of COLUMBUS. Any coordinates which have been 'Kept' into memory can also be saved to a COLUMBUS input file or exported to a comma-delimited file.

To Keep the adjusted coordinates after performing a network adjustment, do the following:

  1. From the Results menu, select Coordinates | Adjusted Coords.

  2. Click on the Keep icon on the toolbar.  Keep toolbar button

  3. Select all or a subset of the stations to keep into memory. The selected stations will then have their current coordinate values updated with their adjusted coordinate values.

  4. Click OK.

The adjusted coordinates are now available for other uses within COLUMBUS. Also, since your data in memory has now changed, you will be prompted to save your changes when you exit COLUMBUS.

Back to top

Identifying outlier observations within your minimally constrained adjustments

COLUMBUS provides a powerful automated tool for identifying and removing outliers found during minimally-constrained (free) adjustments. Click here for detailed information regarding this topic.

Back to top

Identifying poor quality control stations within your fully-constrained adjustments

COLUMBUS provides a powerful automated tool for identifying poor quality control stations found during fully-constrained adjustments. Click here for detailed information regarding this topic.

Back to top

Network adjustment in six steps

To perform a network adjustment in COLUMBUS, do the following six main steps:

  1. Load or Enter your station and observation data.

  2. Select the stations which are to be part of the current adjustment by either selecting Network Stations from the Network menu or by clicking the Select Network Stations toolbar button. Select Network Stations toolbar button You can select all stations or a subset of stations.

  3. Select the stations which are to be fixed in 1D, 2D or 3D by either selecting Fixed Stations from the Network menu or by clicking the Select Fixed Network Stations toolbar button. Select Fixed Stations toolbar button

  4. Select the applicable observations which are to be included by either selecting Observations from the Network menu or by clicking the Select Network Observations toolbar button. Select Network Observations toolbar button

    Note: Any observations linked to stations which were not selected in Step 2 will automatically be unavailable to select. This ensures you do not have to filter them out manually.

  5. From the Network menu, select Adjustment or click the Start Adjustment toolbar button. State Network Adjustment toolbar button  After the adjustment is finished, a summary View displays.

  6. From the Results menu, select any of the results views. Each of these views shows different adjustment results which you can use to isolate problems, evaluate your adjustment or generate reports.

Back to top

Network orientation using azimuth to station(s) not in the network

When creating a terrestrial network, you may decide to tie the new network into a backsight station that will not be part of the new network (the backsight station not held fixed nor free). Usually, you will backsight this station (from a station in the network) and turn a horizontal angle or direction to provide orientation.

If you do not want to include the backsight station in the network adjustment, you must convert the measured horizontal angle or direction into an azimuth.


You have established observations among a group of stations named 'A', 'B', 'C', 'D', 'E', 'F' and 'G'. Only one of these stations will be held fixed in 3D and therefore, there is no clear orientation. To remedy this situation, you decide to tie in Station 'A' to a backsight called Station 'Z'. You do not have known coordinates for station 'Z', but you do know the azimuth from Station 'A' to Station 'Z' (obtained using solar, polaris sighting or some other process.) While occupying Station 'A', you then backsight Station 'Z' and foresight Station 'B'.


In COLUMBUS, Station 'Z' can only provide orientation in the 3D network adjustment if it is held fixed in 2D or 3D (this requires knowing its coordinates). In this case, you do not know the actual coordinates of Station 'Z'; therefore, this is not an acceptable option.


You convert the horizontal angle measured (between Station 'Z' and Station 'B') to a forward azimuth to Station 'B' and use this new observation in COLUMBUS. If the azimuth from Station 'A' to 'Z' is 45.0 degrees and the measured horizontal angle from 'A' to 'B' is 33.0 degrees, then the forward azimuth from Station 'A' to Station 'B' is 78.0 degrees. You then enter this observation into COLUMBUS (rather than the measured horizontal angle) and never include Station 'Z' in the network adjustment.

Note: In practice, you should tie in a second network station (for example, 'C') to another azimuth point (for example, a new Station 'Y') or to the same azimuth point ('Z') in order to get some additional redundancy on the orientation of your project.

Back to top

PLSS (public land survey system) records in an adjustment

Review the Bear2D.txt data file (included with COLUMBUS Network Adjustment Software and the free COLUMBUS demo kit). Create a similar file and fill in the details for the project (geodetic stations and bearings/distances) according to Steps 2 through 4 below.

  1. At the top of the file, specify the $DATUM record and $UNITS record. For the $UNITS record, if you will be using "chains" for distances, change the "M" to "C" for chains.

  2. Before specifying the $GEO records, add the following two lines to the file:

    When the file is loaded, these two added lines will cause COLUMBUS to automatically create $GEO stations when they are referenced by the observations in the file.

  3. Determine which stations you will hold fixed and enter their geodetic latitude and longitude into the $GEO fields in the text file. By specifying the $STATION_TYPE_FOR_OBS in Step 2 above, you do not need to explicitly define each $GEO record for the stations with unknown coordinates. COLUMBUS will create these stations (when the file is loaded) and compute their coordinates during the adjustment.

  4. Specify all the $BEAR observations sets for the project.

  5. Run COLUMBUS and load the data file. All stations with unknown coordinates will have coordinate values of zero (lat and long). They will be displayed in a spiral (for more information, see the Quick Tips - View page).

  6. From the Options menu, select Global Settings and change the "2D Height" to the average elevation for the project area. From within the Options - Network Options - Network Settings dialog, click the "Rotate Bearings" check box.

  7. From the View menu, select 2D Geodetic to set up the 2D Network Adjustment context.

  8. From the Network menu or toolbar, select the stations to be included in the network, those that are to be fixed, and all applicable observations.

  9. From the Network menu or toolbar, select Adjustment to adjust the network.

Adjusted coordinates can be Kept to memory (from the Results menu, select Coordinates | Adjusted Coordinates view) and then transformed to State Plane, UTM, Local NEUp, etc. They can then be exported to a delimited file format, as needed.

Network Adjustment and Coordinate Transformation
Software Solutions • Since 1990 • Ph 503-531-8819
Copyright © 1995-2011 • Best-Fit Computing, Inc. All rights reserved.