= make_scriptP = ||Category B||Version 3.0|| == Description == The program generates the run script and .INN files required to iterate maplets using [[lithosP]]. === Required Files === '''input file''': * [[make_script.in]] - Text file containing a list of the landmarks to be processed, appended with the end-of-file identifier, 'END'. '''seed file''': * [[make_scriptP.seed]] - Test file containing the [[lithosP]] option commands for iterating each maplet. '''processed files''': * [[INIT_LITHOS]] - '''make_scriptP''' reads the USRMX (maximum number of core processors) value. * [[TESTFILES1]]/ - Directory in which to store copies of LMRK_DISPLAY.pgm (output by [[lithosP]]) for each landmark. /!\ [[lithosP]] requires a number of directories and files. Refer to [[lithosP]] for more information. === Output Files === '''make_scriptP outputs''': * run.sh - Controlling run script for batch maplet iteration using parallel processing. * run script for each core processor: * run_script01.b * run_script02.b * etc ... * .INN files - [[lithosP]] command seed file for each maplet. * rem_script.b - Script for removal of temporary files (working directory clean-up). '''run_script''nn''.b outputs''': * .OOT files - standard output from [[lithosP]] for each landmark.] '''processed files outputs''': * [[TESTFILES1]]/ - a copy of LMRK_DISPLAY.pgm (output by [[lithosP]]) is saved for each landmark; * [[SUMFILES]]/ - S/C and camera information are updated by [[lithosP]] as image shifts are accepted. New landmarks and limb fits are added to the SUMFILEs; * [[LMKFILES]]/ - LMKFILES are updated by [[lithosP]]. * [[MAPFILES]]/ - MAPFILES are updated by [[lithosP]]. /!\ [[lithosP]] requires a number of directories and files. Refer to [[lithos]] for more information. == User Warnings == {X} '''''You must set the correct number of core processors for USRMX, a variable contained in [[INIT_LITHOS]]. Refer to that entry for further information.''''' == Using make_scriptP == For more information on iteration procedures, refer to the 'How-To': [[Standard_iteration]]. 1. Create Input Files The [[make_script.in]] file lists the names for the landmarks that should be processed. Here is a sample '''make_script.in''' file: {{{ EE0001 EE0002 EE0003 etc... END }}} Be sure that the list is ordered by: * highest-to-lowest maplet ground sample distance * name (region identifier (e.g., ''FF'') + unique numeric identifier (e.g., ''0001'')) Also, be sure that there are no duplicate entries. You can use [[duplicates]] to generate the [[make_script.in]] file. Here is a sample [[make_scriptP.seed]] file (see that entry for for further information): {{{ # This script performs two maplet iterations in parallel mode. # It reinitializes slope and albedo. # It recomputes maplet overlaps. # It recomputes limb fits. # It recomputes central maplet vector. # Topography determination from slopes is conditioned by: # Initial topography, # Overlapping topography, # Shadowing, # Differential stereo, # Limb heghts. # Dataless area slopes are set from the shape model. # # The script hides most of the screen output. In order to obtain the # full display replace H* by #H*. # # Modified 2011_12_31. Header and comments added. # Modified 2014_02_26. Hide screen output added. # H* x .025 # # Initialize slope and albedo. # a y y # # Begin first iteration. # 0 40 1 0 1 n 0 y u 0 40 # # Begin topo determination. # 2 8 fill no data with shape slope 2 condition with existing topo .01 7 condition with shadows .025 1 condition with overlapping maps 4 condition with limbs 1, 2.5, 3 6 condition with differential stereo y 0 begin integration .025 15 0 u 1 0 2 n 0 y 1 0 1 n 0 y u # # Begin second iteration. # 0 40 1 0 1 n 0 y u 0 40 # # Begin topo determination. # 2 8 2 .01 7 .025 1 4 1, 2.5, 3 6 y 0 .025 15 0 u 1 0 2 n 0 y H* 1 0 1 n 0 y H* u # # Begin overlaps and limb fits. # o RECENT y 1 o RECENT n 3 y 1, 3, 5 # # Central vector determination. # v RECENT q END }}} 1.#2 Run make_scriptP '''make_scriptP''' generates a .INN file for each maplet. Here is a sample .INN file for maplet '''EE0001.INN''': {{{ 01 i EE0001 H* x .025 0 40 etc ... }}} The first three lines of the .INN file supply a processor identifier (e.g., ''01''), and load the landmark in [[lithosP]]. The remainder of the .INN file lists a copy of the [[lithosP]] commands contained in [[make_scriptP.seed]]. '''make_scriptP''' also generates the controller run script '''run.sh''', which looks like this: {{{ chmod +x run_script01.b chmod +x run_script02.b etc ... cd SHAPEFILES chmod +w SHAPE.TXT cp SHAPE.TXT TSHP01.TXT cp SHAPE.TXT TSHP02.TXT etc ... chmod -w SHAPE.TXT cd .. ./run_script01.b & ./run_script02.b & etc ... }}} '''make_scriptP''' also generates the '''run_script01.b''', '''run_script02.b''' etc. files, which look like this: {{{ rm -f EE0001.OOT /usr/local/bin/LITHOSP < EE0001.INN > EE0001.OOT cp LMRK_DISPLAY01.pgm TESTFILES1/EE0001.pgm rm -f EE0007.OOT /usr/local/bin/LITHOSP < EE0007.INN > EE0007.OOT cp LMRK_DISPLAY01.pgm TESTFILES1/EE0007.pgm rm -f EE0013.OOT etc ... }}} 1.#3 Conduct Standard Iteration Here is a sample command line for running '''run.sh''': {{{ sh run.sh }}} You can also run this in the background using this command line: {{{ nohup sh run.sh & }}} The [[lithosP]] standard output for each image is captured in the .OOT files. The LMRKDISPLAY.pgm file output by [[lithosP]] is copied and saved in [[TESTFILES1]]/ once a landmark has been processed. 1.#4 Quality Check Iterated Maplets You must review the .OOT files to ascertain the success of the iteration process. You can detect problem landmarks using [[find_nofitP]]. Refer to that entry for more information. 1.#5 Clean Working Directory You can use [[rem_script.b]] to clean out the directory of '''make_scriptP''' working files once iteration is complete and you have quality checked the iterated maplets. Here is a sample [[rem_script.b]] file: {{{ rm -f *.INN rm -f *.OOT rm -f run_script* }}} ----------- ''(Compiled by DL)'' CategoryPrograms