Browse Source

graphify trial 1.

main
RUSHIL AMBARISH KADU 4 weeks ago
parent
commit
99d299fd24
  1. 1
      graphify-out/.graphify_python
  2. 263
      graphify-out/GRAPH_REPORT.md
  3. 257
      graphify-out/graph.html
  4. 8680
      graphify-out/graph.json

1
graphify-out/.graphify_python

@ -0,0 +1 @@
C:\Users\rakadu1\AppData\Local\Programs\Python\Python314\python.exe

263
graphify-out/GRAPH_REPORT.md

@ -0,0 +1,263 @@
# Graph Report - . (2026-04-21)
## Corpus Check
- 89 files · ~92,297 words
- Verdict: corpus is large enough that graph structure adds value.
## Summary
- 330 nodes · 475 edges · 33 communities detected
- Extraction: 68% EXTRACTED · 32% INFERRED · 0% AMBIGUOUS · INFERRED: 151 edges (avg confidence: 0.7)
- Token cost: 0 input · 0 output
## Community Hubs (Navigation)
- [[_COMMUNITY_Scenario Framework & Maneuvers|Scenario Framework & Maneuvers]]
- [[_COMMUNITY_Radar Simulation & Processing|Radar Simulation & Processing]]
- [[_COMMUNITY_Orchestration & Sensor Management|Orchestration & Sensor Management]]
- [[_COMMUNITY_Data Recording & Heatmaps|Data Recording & Heatmaps]]
- [[_COMMUNITY_Data Conversion Utilities|Data Conversion Utilities]]
- [[_COMMUNITY_Web Dashboard & Loader|Web Dashboard & Loader]]
- [[_COMMUNITY_LiDAR & Fast Heatmap Gen|LiDAR & Fast Heatmap Gen]]
- [[_COMMUNITY_DSP & CFAR Detection|DSP & CFAR Detection]]
- [[_COMMUNITY_Scene Reconstruction|Scene Reconstruction]]
- [[_COMMUNITY_Dashboard Frontend (JS)|Dashboard Frontend (JS)]]
- [[_COMMUNITY_MCAP Dataset Conversion|MCAP Dataset Conversion]]
- [[_COMMUNITY_Radar Signal Detection|Radar Signal Detection]]
- [[_COMMUNITY_Data Quality Inspection|Data Quality Inspection]]
- [[_COMMUNITY_Deep Metrology Analysis|Deep Metrology Analysis]]
- [[_COMMUNITY_Metrology Comparison|Metrology Comparison]]
- [[_COMMUNITY_Community 15|Community 15]]
- [[_COMMUNITY_Community 16|Community 16]]
- [[_COMMUNITY_Community 17|Community 17]]
- [[_COMMUNITY_Community 18|Community 18]]
- [[_COMMUNITY_Community 19|Community 19]]
- [[_COMMUNITY_Community 20|Community 20]]
- [[_COMMUNITY_Community 21|Community 21]]
- [[_COMMUNITY_Community 22|Community 22]]
- [[_COMMUNITY_Community 23|Community 23]]
- [[_COMMUNITY_Community 24|Community 24]]
- [[_COMMUNITY_Community 25|Community 25]]
- [[_COMMUNITY_Community 26|Community 26]]
- [[_COMMUNITY_Community 27|Community 27]]
- [[_COMMUNITY_Community 28|Community 28]]
- [[_COMMUNITY_Community 29|Community 29]]
- [[_COMMUNITY_Community 30|Community 30]]
- [[_COMMUNITY_Community 31|Community 31]]
- [[_COMMUNITY_Community 32|Community 32]]
## God Nodes (most connected - your core abstractions)
1. `ScenarioBase` - 26 edges
2. `ShenronRadarModel` - 22 edges
3. `radar` - 20 edges
4. `RadarProcessor` - 20 edges
5. `main()` - 20 edges
6. `run_testbench()` - 12 edges
7. `Recorder` - 11 edges
8. `SensorManager` - 11 edges
9. `BrakingScenario` - 9 edges
10. `CutInScenario` - 9 edges
## Surprising Connections (you probably didn't know these)
- `scenarios/showcase.py --------------------- Custom high-impact demo scene: Left` --uses--> `ScenarioBase` [INFERRED]
scenarios\showcase.py → scenarios\base.py
- `Step 11: Deep Intersection Guidance for Ego.` --uses--> `ScenarioBase` [INFERRED]
scenarios\showcase.py → scenarios\base.py
- `Step 11: Multi-stage steering logic.` --uses--> `ScenarioBase` [INFERRED]
scenarios\showcase.py → scenarios\base.py
- `src/scenario_loader.py ---------------------- Dynamic scenario discovery and loa` --uses--> `ScenarioBase` [INFERRED]
src\scenario_loader.py → scenarios\base.py
- `Discover all scenario modules inside the 'scenarios' package. Returns a sort` --uses--> `ScenarioBase` [INFERRED]
src\scenario_loader.py → scenarios\base.py
## Communities
### Community 0 - "Scenario Framework & Maneuvers"
Cohesion: 0.05
Nodes (18): ABC, scenarios/base.py ----------------- Abstract base class for all CARLA simulati, Return a dict that will be merged into every recorded frame's metadata, Convenience method: destroy all actors tracked in self._actors. Call th, Return a waypoint `distance` metres ahead of the ego vehicle. lane_offs, Abstract interface for all ADAS simulation scenarios. Lifecycle ----, Unified 1:1 logging for all scenarios. This method ensures clean consol, ScenarioBase (+10 more)
### Community 1 - "Radar Simulation & Processing"
Cohesion: 0.08
Nodes (22): radar, Load normalized antenna gain LUTs (dB) from CSV files. Expected CSV f, class to define the radar object with it's settings and to extract time interval, _get_gpu_info(), main(), process_session(), Retrieve GPU hardware info for telemetry display., Return the raw internal heatmaps and thresholds for the last processed frame. (+14 more)
### Community 2 - "Orchestration & Sensor Management"
Cohesion: 0.08
Nodes (13): Called immediately after the ego vehicle is spawned. Override to react, Allow the orchestrator to inject parameters parsed from CLI. This maps, main(), parse_args(), src/main.py ----------- Scenario-agnostic orchestrator for the CARLA ADAS simu, SensorManager, scenarios/showcase.py --------------------- Custom high-impact demo scene: Left, Step 11: Deep Intersection Guidance for Ego. (+5 more)
### Community 3 - "Data Recording & Heatmaps"
Cohesion: 0.09
Nodes (18): check_save_path(), main(), Stitch captured frames into .mp4 files for easy viewing., Categorise actor into broad ADAS classes., Calculate relative range, azimuth, and closing velocity. Uses right-han, Helper to convert world location to transform-local location., Helper to save image in a background thread., Recorder (+10 more)
### Community 4 - "Data Conversion Utilities"
Cohesion: 0.1
Nodes (14): convert2D_img_func(), convert_sem_lidar_2D_img_func(), main(), converts the 3D radar raw data to 2d range-angle image of dimension 256X256, converts the semantic_lidar data to the range angle 2D image of dimension 256X25, # apply fft on each antenna to get angle profile, cart2polar(), get_range_angle() (+6 more)
### Community 5 - "Web Dashboard & Loader"
Cohesion: 0.09
Nodes (16): get_config(), get_scenario_params(), is_simulation_running(), PollingFilter, dashboard/app.py ---------------- Flask backend for the BATL CARLA Orchestrator, Forces all CarlaUE4 processes to terminate., Stops the Flask server itself., Returns True if a scenario process is currently alive. (+8 more)
### Community 6 - "LiDAR & Fast Heatmap Gen"
Cohesion: 0.11
Nodes (13): get_gpu_id_most_avlbl_mem(), heatmap_gen(), heatmap_gen(), Cropped_forRadar(), map_carla_semantic_lidar_latest(), Function to map material column in the collected carla ray_cast_shenron to shenr, Removes Occlusions and calculates loss for each point, rotate_points() (+5 more)
### Community 7 - "DSP & CFAR Detection"
Cohesion: 0.14
Nodes (8): CA_CFAR, cart2polar(), convert_adc_to_3d_fft(), polar_to_cart(), Description: ------------ Cell Averaging - Constant False Alarm Ra, Description: ------------ Performs the automatic detection, Function to convert adc data to RA tensor Input: adcData:, convert a polar range angle tensor to cartesian array Input: RATe
### Community 8 - "Scene Reconstruction"
Cohesion: 0.18
Nodes (8): cart2sph(), get_loss_2(), get_loss_3(), Class with all the functions to modify OSM scenario and thus generate the points, Note: angles should be used for power calculation as it is in reflecting surface, Note: angles should be used for power calculation as it is in reflecting surface, Sceneset, sph2cart()
### Community 9 - "Dashboard Frontend (JS)"
Cohesion: 0.33
Nodes (7): appendLog(), chip(), renderShenronTelemetry(), resetIdleTimer(), setLoadingState(), startStream(), updateShenronProgress()
### Community 10 - "MCAP Dataset Conversion"
Cohesion: 0.31
Nodes (9): convert_folder(), load_frames(), main(), postprocess_ra(), Refined RA post-processing pipeline for Physical Realism. Restores the natu, Polar-to-Cartesian scan conversion following FIG / Guide logic. Converts RA, Convert 2D array to colormapped B64 PNG with guide-compliant normalization., render_heatmap() (+1 more)
### Community 11 - "Radar Signal Detection"
Cohesion: 0.22
Nodes (5): CA_CFAR, Description: ------------ Performs the automatic detection o, Description: ------------ Cell Averaging - Constant False Alarm Rate, apply range window and doppler window and apply fft on each sample to get range, apply fft on each chirp to get doppler profile
### Community 12 - "Data Quality Inspection"
Cohesion: 0.33
Nodes (2): inspect_gt(), load_frame()
### Community 13 - "Deep Metrology Analysis"
Cohesion: 0.83
Nodes (3): analyze_iteration(), power_law(), run_metrology_suite()
### Community 14 - "Metrology Comparison"
Cohesion: 1.0
Nodes (0):
### Community 15 - "Community 15"
Cohesion: 1.0
Nodes (0):
### Community 16 - "Community 16"
Cohesion: 1.0
Nodes (0):
### Community 17 - "Community 17"
Cohesion: 1.0
Nodes (0):
### Community 18 - "Community 18"
Cohesion: 1.0
Nodes (0):
### Community 19 - "Community 19"
Cohesion: 1.0
Nodes (0):
### Community 20 - "Community 20"
Cohesion: 1.0
Nodes (1): Human-readable scenario identifier (e.g. 'braking').
### Community 21 - "Community 21"
Cohesion: 1.0
Nodes (1): Initialise the scenario: - Store world / ego / tm references.
### Community 22 - "Community 22"
Cohesion: 1.0
Nodes (1): Per-tick logic executed inside the main simulation loop. Parameters
### Community 23 - "Community 23"
Cohesion: 1.0
Nodes (1): Destroy all actors spawned by this scenario. Always call this in a fina
### Community 24 - "Community 24"
Cohesion: 1.0
Nodes (1): Override to request a specific weather preset for this scenario. If Non
### Community 25 - "Community 25"
Cohesion: 1.0
Nodes (1): Override to request a specific duration for this scenario. If None, the
### Community 26 - "Community 26"
Cohesion: 1.0
Nodes (1): Override to request a specific spawn point for the ego vehicle. Returns
### Community 27 - "Community 27"
Cohesion: 1.0
Nodes (0):
### Community 28 - "Community 28"
Cohesion: 1.0
Nodes (0):
### Community 29 - "Community 29"
Cohesion: 1.0
Nodes (0):
### Community 30 - "Community 30"
Cohesion: 1.0
Nodes (0):
### Community 31 - "Community 31"
Cohesion: 1.0
Nodes (0):
### Community 32 - "Community 32"
Cohesion: 1.0
Nodes (0):
## Knowledge Gaps
- **39 isolated node(s):** `dashboard/app.py ---------------- Flask backend for the BATL CARLA Orchestrator`, `Returns True if a scenario process is currently alive.`, `Forces all CarlaUE4 processes to terminate.`, `Stops the Flask server itself.`, `scenarios/base.py ----------------- Abstract base class for all CARLA simulati` (+34 more)
These have ≤1 connection - possible missing edges or undocumented components.
- **Thin community `Metrology Comparison`** (2 nodes): `analyze_session()`, `compare_metrology.py`
Too small to be a meaningful cluster - may be noise or needs more connections extracted.
- **Thin community `Community 15`** (2 nodes): `get_pos()`, `get_pos.py`
Too small to be a meaningful cluster - may be noise or needs more connections extracted.
- **Thin community `Community 16`** (2 nodes): `track_full_state.py`, `track_full_state()`
Too small to be a meaningful cluster - may be noise or needs more connections extracted.
- **Thin community `Community 17`** (2 nodes): `track_peaks.py`, `get_peak_tracking()`
Too small to be a meaningful cluster - may be noise or needs more connections extracted.
- **Thin community `Community 18`** (2 nodes): `compare_folders()`, `compare_iterations.py`
Too small to be a meaningful cluster - may be noise or needs more connections extracted.
- **Thin community `Community 19`** (2 nodes): `research_metrology()`, `research_metrology.py`
Too small to be a meaningful cluster - may be noise or needs more connections extracted.
- **Thin community `Community 20`** (1 nodes): `Human-readable scenario identifier (e.g. 'braking').`
Too small to be a meaningful cluster - may be noise or needs more connections extracted.
- **Thin community `Community 21`** (1 nodes): `Initialise the scenario: - Store world / ego / tm references.`
Too small to be a meaningful cluster - may be noise or needs more connections extracted.
- **Thin community `Community 22`** (1 nodes): `Per-tick logic executed inside the main simulation loop. Parameters`
Too small to be a meaningful cluster - may be noise or needs more connections extracted.
- **Thin community `Community 23`** (1 nodes): `Destroy all actors spawned by this scenario. Always call this in a fina`
Too small to be a meaningful cluster - may be noise or needs more connections extracted.
- **Thin community `Community 24`** (1 nodes): `Override to request a specific weather preset for this scenario. If Non`
Too small to be a meaningful cluster - may be noise or needs more connections extracted.
- **Thin community `Community 25`** (1 nodes): `Override to request a specific duration for this scenario. If None, the`
Too small to be a meaningful cluster - may be noise or needs more connections extracted.
- **Thin community `Community 26`** (1 nodes): `Override to request a specific spawn point for the ego vehicle. Returns`
Too small to be a meaningful cluster - may be noise or needs more connections extracted.
- **Thin community `Community 27`** (1 nodes): `__init__.py`
Too small to be a meaningful cluster - may be noise or needs more connections extracted.
- **Thin community `Community 28`** (1 nodes): `__init__.py`
Too small to be a meaningful cluster - may be noise or needs more connections extracted.
- **Thin community `Community 29`** (1 nodes): `verify_tags.py`
Too small to be a meaningful cluster - may be noise or needs more connections extracted.
- **Thin community `Community 30`** (1 nodes): `path_config.py`
Too small to be a meaningful cluster - may be noise or needs more connections extracted.
- **Thin community `Community 31`** (1 nodes): `__init__.py`
Too small to be a meaningful cluster - may be noise or needs more connections extracted.
- **Thin community `Community 32`** (1 nodes): `check_lidar.py`
Too small to be a meaningful cluster - may be noise or needs more connections extracted.
## Suggested Questions
_Questions this graph is uniquely positioned to answer:_
- **Why does `main()` connect `Orchestration & Sensor Management` to `Scenario Framework & Maneuvers`, `Radar Simulation & Processing`, `Data Recording & Heatmaps`, `Web Dashboard & Loader`, `MCAP Dataset Conversion`?**
_High betweenness centrality (0.263) - this node is a cross-community bridge._
- **Why does `ShenronRadarModel` connect `Radar Simulation & Processing` to `Data Recording & Heatmaps`?**
_High betweenness centrality (0.179) - this node is a cross-community bridge._
- **Why does `ScenarioBase` connect `Scenario Framework & Maneuvers` to `Orchestration & Sensor Management`, `Web Dashboard & Loader`?**
_High betweenness centrality (0.122) - this node is a cross-community bridge._
- **Are the 16 inferred relationships involving `ScenarioBase` (e.g. with `BrakingScenario` and `scenarios/braking.py -------------------- Lead Vehicle Hard Braking Scenario. A`) actually correct?**
_`ScenarioBase` has 16 INFERRED edges - model-reasoned connections that need verification._
- **Are the 15 inferred relationships involving `ShenronRadarModel` (e.g. with `Retrieve GPU hardware info for telemetry display.` and `FastHeatmapEngine`) actually correct?**
_`ShenronRadarModel` has 15 INFERRED edges - model-reasoned connections that need verification._
- **Are the 15 inferred relationships involving `radar` (e.g. with `ShenronRadarModel` and `Initialize the Shenron Radar Model. Args: radar_`) actually correct?**
_`radar` has 15 INFERRED edges - model-reasoned connections that need verification._
- **Are the 14 inferred relationships involving `RadarProcessor` (e.g. with `ShenronRadarModel` and `Initialize the Shenron Radar Model. Args: radar_`) actually correct?**
_`RadarProcessor` has 14 INFERRED edges - model-reasoned connections that need verification._

257
graphify-out/graph.html
File diff suppressed because it is too large
View File

8680
graphify-out/graph.json
File diff suppressed because it is too large
View File

Loading…
Cancel
Save