Home

User Documentation

Getting Started
Learn More
Explore in Detail
Get Inspired

Contributor Documentation

Getting Started
Learn More
Explore in Detail
Get Inspired

Quick Links

Software Manual
AstroDiscuss
GitHub
API Reference

Documentation Versions

Public Release
8.1.0
8.0.0
7.2.0
7.1.0
7.0.0
6.0.0
3.9.0
3.5.0

ISIS 2

Documentation
Tutorials
Technical Documents
USGS

ISIS Application Documentation


cnetsplit

Standard View | TOC | Home

The application cnetsplit splits the input control network into user specified number of control networks.

Description
Categories
Groups
Examples
History


Description

The application cnetsplit splits the input control network into a user specified number of control networks with the user specified output name. A possible use of this application would be to allow extremely large control networks to be split, then further processing could be divided among multiple computers. The application, "cnetmerge" can then be used to merge the individual control networks back into a single large network. The application log will display statistics for the input ControlNet.

The input control network keyword values for Description, NetworkId, and Target Keywords will be copied to each output control network. The DateTime and UserName keywords will be created new for the output control networks. The output control networks are filled from smallest to largest output file name from the first points in the input control network to the last.

We can denote the number of control points in the input file by n and the number of output files to be created is by k. Then, denote the remainder of n/k by R . If R is not zero, then, the first R files will have one more point than the last k-R files. Otherwise, if R = 0, i.e. if the number of output files evenly divides the number of points in the input control network, then each of the output files will have the same number of points.

Errors thrown by cnetsplit will include the following:


Categories


Parameter Groups

Files

Name Description
CNET Input control network to be split.
ONET_PREFIX The output file name pattern string containing question marks where the file number should be placed.

Options

Name Description
NUM_OUTPUT_FILES The number of output files that will be created by cnetsplit

Files: CNET

Description

The input control network whose control points will be divided among the output control networks. This file is not modified by cnetsplit.

Type filename
File Mode input
Filter *.net

Files: ONET_PREFIX

Description

This string will be used to create unique output file names. It should contain a set of question marks ("?") where the file number will be placed. The string should not have question marks anywhere else. For each output file, the question marks will be replaced with a number from one to the number of output files. For example, if the user sets the pattern to ONET_PREFIX="ControlNet????" and NUM_OUTPUT_FILES=999, then cnetsplit will create 999 files with file names "ControlNet0001.net" through "ControlNet0999.net". Note: If there are not enough "?"s for the number of output files to be created during this run, the user will be thrown an error .

Type string

Options: NUM_OUTPUT_FILES

Description

The control points from the input control network will be split among this number of output files.

Type integer
Minimum 2 (inclusive)

Examples


Example 1

Split a control network with 8 points into 3 control networks.

Description

This example will show how a control network is split when the number of output networks does not evenly divide the number points in the input control network.

Command Line

cnetsplit cnet=controlNet.net onet_prefix=outputNetSplit??? num_output_files=3
In this example, cnetsplit will split the file controlNet.net into 3 output files with name pattern outputNetSplit???

GUI Screenshot

Screenshot of GUI command.

Example GUI for cnetsplit.

Screen shot of GUI for cnetsplit. This run of the program will split the file controlNet.net into 3 output files with name pattern outputNetSplit???

Data Files

PVL of the Input control network, (controlNet.net). This is the input control network with 8 control points that will be divided among 3 output control networks. This file is not changed by cnetsplit.
PVL of the first output control network, (outputNetSplit001.net). This is the first of the output control networks created by cnetsplit. It contains the 1st, 2nd, and 3rd control points from the input control network.
PVL of the second output control network, (outputNetSplit002.net). This is the first of the output control networks created by cnetsplit. It contains the 4th, 5th, and 6th control points from the input control network.
PVL of the third output control network, (outputNetSplit003.net). This is the last of the output control networks created by cnetsplit. It contains the 7th and 8th control points from the input control network.

History

Sharmila Prasad2010-11-03 Original version
Sharmila Prasad2010-12-21 Updated to make the app compatible for binary cnet
Sharmila Prasad2011-07-29 changed ONET_FORMAT to ONET_PREFIX
Jeannie Backer2011-10-03 Added appTests, improved error message, added documentation.
Jeannie Backer2016-04-22 Modified to set the new control net's target and radii by using the input control net's values. References #3892
Jesse Mapel2018-07-06 Removed calls to set control net target radii because they are no longer needed by the control network. Fixes #5457.