Fixing syntax
This commit is contained in:
56
CLAUDE.md
56
CLAUDE.md
@@ -1,5 +1,7 @@
|
|||||||
This is a project for a museum to demonstrate a simulation of a 1940's to 1960's
|
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
|
The project will be implemented on a Geekom A8 Max
|
||||||
32 GB RAM
|
32 GB RAM
|
||||||
@@ -247,11 +249,11 @@ Individual scope informations
|
|||||||
|
|
||||||
Please note that the phosphor (chemical that glows when hit by
|
Please note that the phosphor (chemical that glows when hit by
|
||||||
electrons in the tube) is green, similar to an oscilloscope. The Hex
|
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
|
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
|
struck by the electron beam. That persistance is about 25 milliseconds and its color
|
||||||
is darker green at aboutu Hex #004400
|
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
|
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
|
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
|
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
|
Wavelength 12 Meters
|
||||||
Antenna Gain 5 dB
|
Antenna Gain 5 dB
|
||||||
Pulse Width 20 microseconds
|
Pulse Width 20 microseconds
|
||||||
Beam Width 150 degrees (floodlight
|
Beam Width 150 degrees (floodlight)
|
||||||
PRF 25 HZ
|
PRF 25 HZ
|
||||||
|
|
||||||
Airplane acts as a half wave dipole
|
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
|
// 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
|
// 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
|
// Final received power Pr
|
||||||
float Pr = (peak_power * pow(antenna_gain, 2) * pow(wavelength, 2) * target.rcs * beam_factor) /
|
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));
|
(pow(4.0 * PI, 3.0) * pow(target.range, 4.0));
|
||||||
|
|
||||||
2. PPI Scope
|
3. PPI Scope
|
||||||
|
|
||||||
PPI stands for Plan Position Indicator
|
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
|
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
|
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
|
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
|
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).
|
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
|
Please note that the P7 phosphor for vintage PPI radar has several colors; the
|
||||||
Scope radars. When the phosphor is first struck by the electron beam, the color is blue white;
|
following table describes this:
|
||||||
About hex #A0CFFF.
|
|
||||||
|
|
||||||
There are three afterglows of the p7 phosphor after it is struck by the electron beam. They are
|
Suggested Simulation Table for the P7 PPI phosphor
|
||||||
#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:
|
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
|
||||||
1. Excitation 0 (flash) Bright Blue
|
from here on is afterglow after beam stops
|
||||||
2. Immediate blue - 1 ms
|
3. Short term Yellow Green - 1 second duration after Immediate blue; yellow green hex #E2FF80
|
||||||
3. Short term Yellow Green - 1 second
|
4. Long Term Amber - 10 seconds duration after Short Term; Amber hex #FFA040
|
||||||
4. Long Term Amber - 10 seconds
|
5. Expiration - 12 seconds duration after Long Term Amber; very dark hex #050700
|
||||||
5. Expiration - 12 seconds black
|
|
||||||
|
|
||||||
Graticules - These are plastic overlays over the face of the scope. They are
|
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)
|
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 degres; and a longer line (1/2 inch) for every
|
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.
|
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 WAVELENGTH = 12.0f; // 12 Meters
|
||||||
const float ANTENNA_GAIN = 3.16f; // 5 dB expressed as linear gain
|
const float ANTENNA_GAIN = 3.16f; // 5 dB expressed as linear gain
|
||||||
const float PULSE_WIDTH = 0.000020f; // 20 microseconds
|
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 {
|
namespace MarineAScope {
|
||||||
const float PEAK_POWER = 500000.0f; // 500 KW
|
const float PEAK_POWER = 500000.0f; // 500 KW
|
||||||
const float WAVELENGTH = 0.10f; // 10 cm
|
const float WAVELENGTH = 0.10f; // 10 cm
|
||||||
const float ANTENNA_GAIN = 1000.0f; // 30 dB expressed as linear gain
|
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;
|
||||||
}
|
}
|
||||||
|
|||||||
Reference in New Issue
Block a user