RNXCMP
In this section:
Description
According to the page of RNXCMP, RNXCMP is software for compression/restoration of RINEX observation files, developed by Y. Hatanaka of the GSI (Geospatial Information Authority of Japan). It converts RINEX files to the CompactRINEX (Hatanaka) format and vice versa.
Available Versions
rnxcmp/4.0.7 (default)
Loading the Module
# Load RNXCMP
module load rnxcmp/4.0.7
# Verify installation
RNX2CRX -h
Job Submission
submit_rnxcmp.sh
#!/bin/bash
#SBATCH -J rnxcmp
#SBATCH -N 1
#SBATCH -n 1
#SBATCH -t 24:00:00
#SBATCH --mem=4G
export INPUT="chpi0030.08o"
export OUTPUT="chpi0030.08d"
module load rnxcmp/4.0.7
# Convert RINEX to compact format
job-nanny RNX2CRX chpi0030.08o - > chpi0030.08d
Batch Processing
submit_rnxcmp_batch.sh
#!/bin/bash
#SBATCH -J rnxcmp_batch
#SBATCH -N 1
#SBATCH -n 1
#SBATCH -t 48:00:00
#SBATCH --mem=8G
export INPUT="rinex_files/*.??o"
export OUTPUT="compressed/"
module load rnxcmp/4.0.7
mkdir -p compressed
# Process all RINEX files
for file in rinex_files/*.??o; do
base=$(basename $file .${file##*.})
job-nanny RNX2CRX $file - > compressed/${base}.d
echo "Processed: $file"
done
Decompression
submit_rnxcmp_decompress.sh
#!/bin/bash
#SBATCH -J rnxcmp_decompress
#SBATCH -N 1
#SBATCH -n 1
#SBATCH -t 12:00:00
#SBATCH --mem=4G
export INPUT="chpi0030.08d"
export OUTPUT="chpi0030.08o"
module load rnxcmp/4.0.7
# Convert compact format to RINEX
job-nanny CRX2RNX chpi0030.08d > chpi0030.08o
Job Array for Multiple Files
submit_rnxcmp_array.sh
#!/bin/bash
#SBATCH -J rnxcmp_array
#SBATCH --array=1-100
#SBATCH -N 1
#SBATCH -n 1
#SBATCH -t 12:00:00
#SBATCH --mem=4G
FILES=($(ls rinex/*.??o))
FILE=${FILES[$SLURM_ARRAY_TASK_ID-1]}
BASE=$(basename $FILE .${FILE##*.})
export INPUT="$FILE"
export OUTPUT="compressed/${BASE}.d"
module load rnxcmp/4.0.7
mkdir -p compressed
job-nanny RNX2CRX $FILE - > compressed/${BASE}.d
Integrity Verification
verify_rnx.sh
#!/bin/bash
#SBATCH -J verify_rnx
#SBATCH -N 1
#SBATCH -n 1
#SBATCH -t 04:00:00
#SBATCH --mem=4G
module load rnxcmp/4.0.7
# Check all compressed files
for file in compressed/*.d; do
echo "Verifying $file"
# Decompress and verify
CRX2RNX $file > temp.obs 2> err.log
if [ -s err.log ]; then
echo "ERROR in $file" >> verification_errors.txt
cat err.log >> verification_errors.txt
else
echo "OK: $file" >> verification_ok.txt
fi
rm -f temp.obs err.log
done
# Final report
echo "Verification summary:" > verification_report.txt
echo "OK files: $(wc -l < verification_ok.txt)" >> verification_report.txt
echo "Files with errors: $(wc -l < verification_errors.txt 2>/dev/null || echo 0)" >> verification_report.txt
References
Documentation: https://terras.gsi.go.jp/ja/crx2rnx.html
CompactRINEX format: https://terras.gsi.go.jp/ja/crx2rnx/format.html
See also
GAMIT - GPS data processing
Running Simulations - How to submit jobs