Finding the Air Cannon(twobraids.com) |
Finding the Air Cannon(twobraids.com) |
An hour or so from where I live there have been complaints about an infrequent low rumbling sound for years[0]. I'd wondered -- at the time -- why you couldn't just do something like they do with the gunshot detectors to find the source of the sound[1]. I suspect there must be a technical/physics reason that I am not familiar with. This article re-enforced that thinking for me -- I think I've heard one of these air cannons, before (I have not heard the Windsor Hum), and its characteristics seem more like a gunshot kind of sound than what's described here but ... if you can record the time it starts from three different points (and all you're looking for is "an area roughly the size of a large factory" because it had always been suspected to be one of the plants along the river), wouldn't this approach have been simple/cheap enough to do to figure it out[2]?
[0] https://www.npr.org/2020/08/04/898853311/it-took-a-pandemic-... -- it was solved because a steel plant shut down and the problem went away.
[1] Part of the problem was that a subset of the population could hear it and a subset of that population noticed it enough to be bothered about it so it kind of led to a large number of people dismissing complaints as "people who complain about WiFi signals harming their health"
[2] And if I answer my own question: I suspect it probably was and I suspect the reason it wasn't done is that nobody cared enough to do it, really. :)
Why did you use pixels on a map image for location, instead of GPS? Phones have GPS these days. You could have a simple app where you push the button when you hear the noise, it reports to a cloud function, and instantly triangulates and throws a point on your favorite map program.
But I guess not. Sound is slow on a distance scale of miles, so timing it to the nearest second is good enough.
At first, I thought there was a clear improvement. This problem essentially boils down to finding the intersection point of three circles. But it's also likely that with the small fuzz from imprecise time measurement that the three measured circles wouldn't actually intersect. I would guess that a small boost could be achieved by sampling points near the two intersection points of any two circles, but this is moot when it's just possible to brute force the whole grid.
The intersection of two such cones is a parabola. The intersection of the third cone with the plane containing said parabola gives another parabola that can intersect the first one in zero, one, two or an infinite number of points. In the zero-point case, you could still find the location where the two parabolas are closest.
(Or you could forget about geometry, define an objective function and do gradient descent to it.)
This is the point at which I would have changed my attitude to the situation quite dramatically. Given the opportunity to own up and simply apologize and fix the issue, the fellow just went full lie-to-your-face mode. What in the everloving heck is wrong with people?
[1] https://en.wikipedia.org/wiki/Ural_Airlines_Flight_178. There's a good article about the accident at https://admiralcloudberg.medium.com/russias-potemkin-miracle....
The Army is doing some artillery training during the day and night for the past week or so in my area, but luckily they aren't doing it every 2 minutes all day and night, just for a few hours up until about 11 or 12 at night and maybe every 5 or 10 minutes they will fire a few rounds. It doesn't bother me anymore after hearing it constantly, but I also live directly next to a very busy street, so I am pretty used to loud noises. Maybe next year when they do the training again I'll try to pinpoint the explosions using this method (just for fun, because I am pretty sure there's only one firing range around here).
(I do have reports though that the eggs are great, I think commercial goose eggs make the best Pirogi, and that someone was able to take two eggs from a nest year after year and even though they hissed bitterly the same pair would come back again year after year.)
This was a treaty between Canada and USA, enacted to prevent more extinctions due to hunting, as happened to the passenger pigeon.
You can hunt them in the fall in most states, but you can't hunt the most annoying ones that live inside city limits year round. They do not taste great, good for dog food though.
Imagine using such a farmers setup as vortex cannon, you could down non turbulence resistant air vehicles such as drones and glide bombs, with good timing.
No. I strongly suspect they are dealing with Canada Geese. They are dominant in the photos. Canadian geese would be some random species of geese carrying a Canadian passport. Canada geese are the distinct grey-black species aka cobra chickens.
https://midwesternnewspapers.com/dont-cross-the-dreaded-cana...
From the timings given you can work out the distance from location B and C to the wavefront when it hits point A (4 x 330 and 6 x 330). If you then draw a circle centered at point B with radius 1320m, and a circle centered C with radius 1980m, then there is only one circle you can draw that intersects point A, and is tangent with the circles drawn at B and C. The center of that circle is the source (with an appropriate radius of error for timing measurement and distance measurement between A, B, and C)
This is a clean install of Python straight from the Python developers in a clean container. And it doesn't work. I figured I must need "points" so I pip-installed that.
Feels like every time I try to use Python, stupid, incomprehensible errors such as this occur:
```
root@1623eb794014:/# ./tri.py
Traceback (most recent call last):
File "//./tri.py", line 6, in <module>
from points import Point, Block
ImportError: cannot import name 'Point' from 'points'
(/usr/local/lib/python3.12/site-packages/points/__init__.py)
```> this code is shared to show the algorithm, not as a drop-in application that just runs. It depends on two private modules configmanners and Points. Both of these are on github
I don't know why you would find this so confusing, or blame Python. The author literally explains that the points module is not on pip. You installed some random pip package and expected it to replace a different dependency.
Please note: this code is shared to show the algorithm, not as a drop-in application that just runs. It depends on two private modules configmanners and Points. Both of these are on git hub, but to put them upload them to pip would be to commit to supporting them in perpetuity. I'm not willing to do that.
Working in Python in the 2000s, I was extremely happy. Working in Python (especially ML and data science applications) in the 2020s is a nightmare. The world has come a long way, and Python has actually taken a backslide.
Python would do well to learn from the Rust project and their Cargo package manager and tooling.
It's also pretty likely that the geese in question in this story are literally from Canada.
https://www.amazon.com/Power-Babel-Natural-History-Language/...
The author didn't include one of his custom source libraries that's not needed to understand the code, so that makes this a valid criticism of the Python community? lol
The code shouldn't build, go green, or be in any shareable state. This is horrifically bad practice.
A language should remove all of these thorns in a first-class manner.
Until you use a package manager like Cargo, you probably can't intuit the wide gulf here. A good analogy might be imagining the world before version control.
Dependency control matters immensely. Hermeticity and repeatability matter immensely. We should strive to build these into the very foundations.