Fixing syntax

This commit is contained in:
2026-05-15 10:27:45 -07:00
parent 8c97a0dfc6
commit e280639211

View File

@@ -1,5 +1,7 @@
This is a project for a museum to demonstrate a simulation of a 1940's to 1960's
vintage radar, including the Chain Home radar from early World War 2, marine radar,
vintage radar, including the Chain Home radar from early World War 2, marine radar
at a marine traffic control station,
and marine radar on a boat.
The project will be implemented on a Geekom A8 Max
32 GB RAM
@@ -247,11 +249,11 @@ Individual scope informations
Please note that the phosphor (chemical that glows when hit by
electrons in the tube) is green, similar to an oscilloscope. The Hex
for green is ##39FF14; there is a short persistance of the phosphor after being
struck by the electron beam. That persistance is about 25 millesconds and its color
is darker green at aboutu Hex #004400
for green is #39FF14; there is a short persistance of the phosphor after being
struck by the electron beam. That persistance is about 25 milliseconds and its color
is darker green at about Hex #004400
PLease also note that there are no graticules on either the Chain Home a scope nor
Please also note that there are no graticules on either the Chain Home a scope nor
the marine a a scope. The only thing on the external plate is the base line (zero signal
which the operator can refer to that is going on (grass, calibration, and signals). It
is an important point of reference. That base line is illuminated on the sides with small
@@ -343,7 +345,7 @@ Individual scope informations
Wavelength 12 Meters
Antenna Gain 5 dB
Pulse Width 20 microseconds
Beam Width 150 degrees (floodlight
Beam Width 150 degrees (floodlight)
PRF 25 HZ
Airplane acts as a half wave dipole
@@ -448,13 +450,13 @@ Individual scope informations
// BeamFactor: 1.0 at center, drops to 0.5 at horizontal_beamwidth/2
// This creates the "fade in / fade out" effect as you turn the knob
float beam_factor = exp(-2.77 * pow(angle_diff / horizontal_beamwidth, 2.0));
float beam_factor = exp(-2.77 * pow(angle_diff / (horizontal_beamwidth / 2.0), 2.0));
// Final received power Pr
float Pr = (peak_power * pow(antenna_gain, 2) * pow(wavelength, 2) * target.rcs * beam_factor) /
(pow(4.0 * PI, 3.0) * pow(target.range, 4.0));
2. PPI Scope
3. PPI Scope
PPI stands for Plan Position Indicator
@@ -483,34 +485,29 @@ Individual scope informations
Mathematical LogicFor an AI to process PPI data, it needs to understand the conversion
from Polar to Cartesian coordinates. If a radar detects a target at distance $r$ and
angle $\theta$, the position on the 2D screen $(x, y)$ is calculated as:$$x = r \cdot
\sin(\theta)$$$$y = r \cdot \cos(\theta)$$4.
\sin(\theta)$$$$y = r \cdot \cos(\theta)$$.
Why it differs from other ScopesTo clarify for the AI, distinguish it from the A-Scope: A
simple 1D graph showing "Energy vs. Distance" (looks like an EKG).
PLease note that there are three different colors for the phosphors in vintge PPI
Scope radars. When the phosphor is first struck by the electron beam, the color is blue white;
About hex #A0CFFF.
Please note that the P7 phosphor for vintage PPI radar has several colors; the
following table describes this:
There are three afterglows of the p7 phosphor after it is struck by the electron beam. They are
#E2FF80 - the color just behind the sweep - this lasts about 3
seconds; #8A9600 - the trail of history of the pulse - this lasts about 10 seconds,
and #050700 - very dark, warm trail - This lasts about 20 seconds.
Suggested Simulation Table for the P7 PPI phosphor
Suggested Simulation Table:
1. Excitation 0 (flash) Bright Blue
2. Immediate blue - 1 ms
3. Short term Yellow Green - 1 second
4. Long Term Amber - 10 seconds
5. Expiration - 12 seconds black
1. Excitation 0 (flash) Bright Blue hex #A0CFFF - note this is active electron beam
2. Immediate blue - 1 ms duration after Excitation; Blue hex #1010FF - note that
from here on is afterglow after beam stops
3. Short term Yellow Green - 1 second duration after Immediate blue; yellow green hex #E2FF80
4. Long Term Amber - 10 seconds duration after Short Term; Amber hex #FFA040
5. Expiration - 12 seconds duration after Long Term Amber; very dark hex #050700
Graticules - These are plastic overlays over the face of the scope. They are
for the purposes of showing the bearing. Theey are calibrated in degrees; short line (1/8 inch)
each degree; medium line (1/4 inch) for every 5 degres; and a longer line (1/2 inch) for every
for the purposes of showing the bearing. They are calibrated in degrees; short line (1/8 inch)
each degree; medium line (1/4 inch) for every 5 degrees; and a longer line (1/2 inch) for every
10 degrees. Line for true north; 2/3 inch.
Notes that these graticule lines are lie by a #47 incidenscent bulb #FFB347.
Notes that these graticule lines are lit by a #47 incandescent bulb #FFB347.
@@ -526,10 +523,17 @@ namespace ChainHome {
const float WAVELENGTH = 12.0f; // 12 Meters
const float ANTENNA_GAIN = 3.16f; // 5 dB expressed as linear gain
const float PULSE_WIDTH = 0.000020f; // 20 microseconds
const float BEAM_WIDTH = 150.0f; // in degrees (large floodlight)
const float PRF = 25.0f; // pulse repetition rate in times per second
}
namespace MarineAScope {
const float PEAK_POWER = 500000.0f; // 500 KW
const float WAVELENGTH = 0.10f; // 10 cm
const float ANTENNA_GAIN = 1000.0f; // 30 dB expressed as linear gain
const float PRF = 500.0f; // pulse repetition frequency
const float HORIZONTAL_BEAMWIDTH = 2.5f; // horizontal beamwidth
const float SYSTEM_TEMPERATURE = 290.0f; // system temperature
const float NOISE_FIGURE = 20.0f; // for period receivers; this is in Db
const float BOLTZMANN_CONSTANT = 1.38e-23f;
}