CLEANUP - changes to folder structure
This commit is contained in:
163
projects/ECOC_2025_MPI/sqlite_sequence.sql
Normal file
163
projects/ECOC_2025_MPI/sqlite_sequence.sql
Normal file
@@ -0,0 +1,163 @@
|
||||
BEGIN TRANSACTION;
|
||||
CREATE TABLE IF NOT EXISTS "Configurations" (
|
||||
"configuration_id" INTEGER,
|
||||
"run_id" INTEGER,
|
||||
"unique_elab_id" TEXT,
|
||||
"bitrate" REAL,
|
||||
"symbolrate" REAL,
|
||||
"pam_level" INTEGER,
|
||||
"db_mode" TEXT,
|
||||
"pulsef_alpha" INTEGER,
|
||||
"v_bias" REAL,
|
||||
"v_awg" REAL,
|
||||
"precomp_amp" REAL,
|
||||
"rop_attenuation" REAL,
|
||||
"wavelength" REAL,
|
||||
"laser_power" REAL,
|
||||
"fiber_length" REAL,
|
||||
"pd_in_desired" REAL,
|
||||
"is_mpi" BIT,
|
||||
"signal_attenuation" REAL,
|
||||
"interference_path_length" REAL,
|
||||
"interference_attenuation" REAL,
|
||||
"pam_source" TEXT,
|
||||
PRIMARY KEY("configuration_id" AUTOINCREMENT),
|
||||
FOREIGN KEY("run_id") REFERENCES "Runs"("run_id")
|
||||
);
|
||||
CREATE TABLE IF NOT EXISTS "EqualizerParameters" (
|
||||
"eq_id" INTEGER,
|
||||
"equalizer_structure" REAL,
|
||||
"M" INTEGER,
|
||||
"target_constellation" TEXT,
|
||||
"db_target" INTEGER,
|
||||
"diff_precode" INTEGER,
|
||||
"postFFE" INTEGER,
|
||||
"NpostFFE" INTEGER,
|
||||
"Ne1" INTEGER,
|
||||
"Ne2" INTEGER,
|
||||
"Ne3" INTEGER,
|
||||
"Nb1" INTEGER,
|
||||
"Nb2" INTEGER,
|
||||
"Nb3" INTEGER,
|
||||
"K" INTEGER,
|
||||
"DCmu" REAL,
|
||||
"ideal_dfe" INTEGER,
|
||||
"training_length" INTEGER,
|
||||
"training_loops" INTEGER,
|
||||
"TRmu1" REAL,
|
||||
"TRmu2" REAL,
|
||||
"TRmu3" REAL,
|
||||
"TRmuDFE" REAL,
|
||||
"dd_loops" INTEGER,
|
||||
"DDmu1" REAL,
|
||||
"DDmu2" REAL,
|
||||
"DDmu3" REAL,
|
||||
"DDmuDFE" REAL,
|
||||
"MLSE_mode" TEXT,
|
||||
"MLSE_trellis_states" TEXT,
|
||||
"comment" TEXT,
|
||||
"config_hash" TEXT,
|
||||
UNIQUE("config_hash"),
|
||||
PRIMARY KEY("eq_id" AUTOINCREMENT)
|
||||
);
|
||||
CREATE TABLE IF NOT EXISTS "Measurements" (
|
||||
"measurement_id" INTEGER,
|
||||
"run_id" INTEGER,
|
||||
"power_laser" REAL,
|
||||
"power_rop" REAL,
|
||||
"power_pd_in" REAL,
|
||||
"power_mpi_interference" REAL,
|
||||
"power_mpi_signal" REAL,
|
||||
"voa_class" TEXT,
|
||||
"pdfa_class" TEXT,
|
||||
"laser_class" TEXT,
|
||||
PRIMARY KEY("measurement_id" AUTOINCREMENT),
|
||||
FOREIGN KEY("run_id") REFERENCES "Runs"("run_id")
|
||||
);
|
||||
CREATE TABLE IF NOT EXISTS "Results" (
|
||||
"result_id" INTEGER,
|
||||
"run_id" INTEGER,
|
||||
"eqParam_id" INTEGER,
|
||||
"date_of_processing" DATETIME DEFAULT (datetime('now', 'localtime')),
|
||||
"numBits" INTEGER,
|
||||
"numBitErr" INTEGER,
|
||||
"BER" REAL,
|
||||
"numBitErr_precoded" REAL,
|
||||
"BER_precoded" REAL,
|
||||
"SNR" REAL,
|
||||
"SNR_level" TEXT,
|
||||
"GMI" REAL,
|
||||
"AIR" REAL,
|
||||
"EVM" REAL,
|
||||
"EVM_level" TEXT,
|
||||
"Alpha" REAL,
|
||||
"result_hash" TEXT UNIQUE,
|
||||
"MLSE_dir" INTEGER,
|
||||
PRIMARY KEY("result_id" AUTOINCREMENT),
|
||||
FOREIGN KEY("eqParam_id") REFERENCES "EqualizerParameters"("eq_id"),
|
||||
FOREIGN KEY("run_id") REFERENCES "Runs"("run_id")
|
||||
);
|
||||
CREATE TABLE IF NOT EXISTS "Runs" (
|
||||
"run_id" INTEGER,
|
||||
"date_of_run" DATETIME DEFAULT (datetime('now', 'localtime')),
|
||||
"tx_bits_path" TEXT,
|
||||
"tx_symbols_path" TEXT,
|
||||
"rx_sync_path" TEXT,
|
||||
"rx_raw_path" TEXT,
|
||||
"filename" TEXT,
|
||||
"tx_signal_path" TEXT,
|
||||
PRIMARY KEY("run_id" AUTOINCREMENT)
|
||||
);
|
||||
CREATE VIEW "View_ResultOverview" AS
|
||||
SELECT
|
||||
-- Run info
|
||||
Runs.run_id,
|
||||
Runs.date_of_run,
|
||||
|
||||
Results.BER,
|
||||
Results.SNR,
|
||||
Results.GMI,
|
||||
Results.AIR,
|
||||
Results.EVM,
|
||||
Results.Alpha,
|
||||
|
||||
-- Configurations
|
||||
Configurations.symbolrate,
|
||||
Configurations.pam_level,
|
||||
Configurations.db_mode,
|
||||
Configurations.pulsef_alpha,
|
||||
Configurations.v_bias,
|
||||
Configurations.v_awg,
|
||||
Configurations.precomp_amp,
|
||||
Configurations.is_mpi,
|
||||
Configurations.signal_attenuation,
|
||||
Configurations.interference_path_length,
|
||||
Configurations.interference_attenuation,
|
||||
|
||||
-- Measurement data
|
||||
Measurements.power_laser,
|
||||
Measurements.power_rop,
|
||||
Measurements.power_pd_in,
|
||||
Measurements.power_mpi_interference,
|
||||
Measurements.power_mpi_signal,
|
||||
|
||||
-- Equalizer parameters
|
||||
EqualizerParameters.equalizer_structure,
|
||||
EqualizerParameters.db_target,
|
||||
EqualizerParameters.diff_precode
|
||||
|
||||
|
||||
FROM Results
|
||||
|
||||
-- Join related tables
|
||||
LEFT JOIN Runs ON Results.run_id = Runs.run_id
|
||||
LEFT JOIN Configurations ON Configurations.run_id = Runs.run_id
|
||||
LEFT JOIN Measurements ON Measurements.run_id = Runs.run_id
|
||||
LEFT JOIN EqualizerParameters ON Results.eqParam_id = EqualizerParameters.eq_id;
|
||||
CREATE INDEX IF NOT EXISTS "idx_run_id_on_Configurations" ON "Configurations" (
|
||||
"run_id"
|
||||
);
|
||||
CREATE INDEX IF NOT EXISTS "idx_run_id_on_Measurements" ON "Measurements" (
|
||||
"run_id"
|
||||
);
|
||||
COMMIT;
|
||||
Reference in New Issue
Block a user