Humor Random Comments Thread

steph

Well-known member
Joined
Mar 22, 2008
Messages
1,390
Reaction score
710
Points
113
Location
Vendee, France
Seems OK after a quick look... it's missing the actual numbers, and it used VESSEL instead of VESSEL4, but on the other hand it wrote comments, so that already makes it better than 95% of programmers... :cautious:

Yeah, it also comments a lot after the code as well. It keeps saying that it can't know the actual numbers, so it can only make so much, but that would be about it. It's weird , because it says it can't remember previous conversations, but when I started one from a different device etc and asked it to code for the Mavic, it started using the code for the Tello, so obviously it still thought it was the same thing and had to be reminded. Then, after it did write the right code, it wouldn't give me all of it exactly because it realised we're talking about a different , bigger quad :ROFLMAO: (as 'big' as a Mini is, it's stil way more capable than the Tello). Now, I'd ask it for more, but it locked me out for one hour when I tried to put it through a Turing test 😂.It failed one of the questions spectacularly, but in away that wouldn't be too surprising even for a human to fail. But asking it iffy stuff often ends up in getting a 'network error' or getting locked out etc.

edit: @Urwumpe Would be nice to know what the output would look like after that feedback, but it may take a while 😂
 

Urwumpe

Not funny anymore
Addon Developer
Donator
Joined
Feb 6, 2008
Messages
37,518
Reaction score
2,243
Points
203
Location
Wolfsburg
Preferred Pronouns
Sire
I think Ill keep on doing classic programming than trying to program an AI....
 

steph

Well-known member
Joined
Mar 22, 2008
Messages
1,390
Reaction score
710
Points
113
Location
Vendee, France
I think Ill keep on doing classic programming than trying to program an AI....
I think, as in the case of search engines etc, the code behind those might be nightmarishly complex. Then again, it's a neural net using machine learning, so it mostly codes itself to a certain extent. Not sure if that is good or bad.

In any case, if someone wants to implement it for an actual addon, I gave it the feedback (apparently I had to specify it's Orbiter2016 and not the old version), and this is what the output looked like

// Define the X-33 class
class X33 : public VESSEL4 {
public:
// Constructor
X33(OBJHANDLE hObj, int flightmodel);

// Flight model override function
void clbkSetClassCaps(FILEHANDLE cfg);

// Flight model update function
void clbkPreStep(double simt, double simdt, double mjd);

private:
// Private variables for spacecraft dynamics
double mass;
double fuel;
VECTOR3 CoM;
VECTOR3 CoP;
VECTOR3 thrust_vector;
double thrust_magnitude;
double Isp;
double Cd;
double Cl;
double As;
double Ar;
double bank_angle;
double pitch_angle;
double yaw_angle;
double altitude;

// Private functions for spacecraft dynamics
void update_dynamics(double simt, double simdt);
void compute_forces_moments();
};

// Constructor
X33::X33(OBJHANDLE hObj, int flightmodel) : VESSEL4(hObj, flightmodel) {
// Set initial values for private variables
mass = 27000.0;
fuel = 18000.0;
CoM = _V(0, 0, -5.6);
CoP = _V(0, 0, -4.2);
thrust_vector = _V(0, 0, -1);
thrust_magnitude = 300000.0;
Isp = 330.0;
Cd = 0.3;
Cl = 0.3;
As = 330.0;
Ar = 160.0;
bank_angle = 0.0;
pitch_angle = 0.0;
yaw_angle = 0.0;
altitude = 0.0;
}

// Flight model override function
void X33::clbkSetClassCaps(FILEHANDLE cfg) {
VESSEL4::clbkSetClassCaps(cfg);

// Set vessel mass and empty mass
SetEmptyMass(mass - fuel);
SetSize(10.0);

// Define propellant resources
AddPropellantResource("LH2", fuel);

// Define thruster groups
CreateThrusterGroup("main", 1, &thrust_vector, true, Isp, Cd, Cl, As, Ar);
}

// Flight model update function
void X33::clbkPreStep(double simt, double simdt, double mjd) {
// Update spacecraft dynamics
update_dynamics(simt, simdt);

// Calculate forces and moments acting on spacecraft
compute_forces_moments();

// Update spacecraft state
VESSEL4::clbkPreStep(simt, simdt, mjd);
}

// Private function to update spacecraft dynamics
void X33::update_dynamics(double simt, double simdt) {
// Update vessel velocity and position
VECTOR3 vel = GetRelativeVelocity();
VECTOR3 pos = GetRelativePos();
VECTOR3 acc = GetGravityRef()->GetAcceleration(GetPosition());
SetRelativeVel(vel + acc * simdt);
SetRelativePos(pos + vel * simdt + 0.5 * acc * simdt * simdt);

// Update vessel attitude
bank_angle += GetControlSurfaceLevel(AIRCTRL_BANK, 0) * simdt * 10;
pitch_angle += GetControlSurfaceLevel(AIRCTRL_PITCH, 0) * simdt *

Then I asked it if that is all (looked incomplete), and it went like '
No, that's just the class definition. You would also need to define the functions that correspond to the callback functions declared in the class, such as clbkSetClassCaps and clbkPreStep.

Here is an example of how you could define those functions for the X-33 class:'

// Define the X-33 class
class X33 : public VESSEL4
{
public:
// Constructor
X33(OBJHANDLE hObj, int flightmodel);

// Destructor
~X33();

// Flight model override function
void clbkSetClassCaps(FILEHANDLE cfg);

// Flight model update function
void clbkPreStep(double simt, double simdt, double mjd);

private:
// Private variables for spacecraft dynamics
double mass;
double fuel;
VECTOR3 CoM;
VECTOR3 CoP;
VECTOR3 thrust_vector;
double thrust_magnitude;
double Isp;
double Cd;
double Cl;
double As;
double Ar;

// Private functions for spacecraft dynamics
void update_dynamics(double simt, double simdt);
void compute_forces_moments();
};

X33::X33(OBJHANDLE hObj, int flightmodel) : VESSEL4(hObj, flightmodel)
{
// Set initial values for private variables
mass = 10000.0; // kg
fuel = 5000.0; // kg
CoM = _V(0, 0, 0); // m
CoP = _V(0, 0, 0); // m
thrust_vector = _V(0, 0, 0);
thrust_magnitude = 0.0;
Isp = 450.0; // s
Cd = 0.3;
Cl = 0.0;
As = 100.0; // m^2
Ar = 100.0; // m^2
}

X33::~X33()
{
// Destructor
}

void X33::clbkSetClassCaps(FILEHANDLE cfg)
{
// Set spacecraft capabilities in config file
VESSEL4::clbkSetClassCaps(cfg);

// Set fuel and mass properties
SetPropellantMass(THGROUP_MAIN, fuel);
SetEmptyMass(mass);
}

void X33::clbkPreStep(double simt, double simdt, double mjd)
{
// Update spacecraft dynamics
update_dynamics(simt, simdt);

// Compute forces and moments
compute_forces_moments();

// Update spacecraft state
SetThrusterGroupLevel(THGROUP_MAIN, thrust_magnitude);
SetForce(thrust_vector);
SetCoMOffset(CoM);
SetRotDrag(_V(Cd * As, Cd * As, Cd * Ar));
SetPitchMoment(_V(0, 0, Cl * As * 0.5));
SetBankMoment(_V(0, 0, Cl * As * 0.5));
SetLiftCoeff(Cl);
}

void X33::update_dynamics(double simt, double simdt)
{
// Compute spacecraft mass and fuel
mass = GetEmptyMass() + GetPropellantMass(THGROUP_MAIN);
fuel = GetPropellantMass(THGROUP_MAIN);
}

void X33::compute_forces_moments()
{
// Compute thrust vector and magnitude
thrust_vector = _V(0, 0, -thrust_magnitude);
thrust_magnitude = 50000.0 * GetThrusterGroupLevel

Though, I believe , in a way it's less of a headache to write your own code rather than to pour through hundreds of lines written by someone else, just looking for the slightest mistake and trying to see what it does etc
 
  • Like
Reactions: GLS

TheShuttleExperience

Well-known member
Joined
Feb 24, 2021
Messages
904
Reaction score
1,184
Points
108
Location
Earth
A happier anniversary today, the Flying Scotsman began service 100 years ago today.

Not the kind of locomotive I prefer. But certainly a worthy and important milestone of human art of engineering.

But it's still impressive. Occasionally I see the old beasts at my central stations or on the railroads...


Train drivers back then didn't become too old in their job. They were exposed to all weathers and at the end of their careers they mostly suffered from serious knee problems. It can take several hours to only get a huge cold locomotive running properly... nah that wouldn't be the kind of job I would chose these days (and I couldn't anyway since one had to become a metal worker first). Today there is a saying amongst train drivers: I'm lazy that's why I am a train driver 😂 That was actually the first thing I learned when I started training.

 

Urwumpe

Not funny anymore
Addon Developer
Donator
Joined
Feb 6, 2008
Messages
37,518
Reaction score
2,243
Points
203
Location
Wolfsburg
Preferred Pronouns
Sire
Mallard is probably less well known to most folk.

Probably more famous than its German counterpart, that is STILL driving today.


(Only 182.4 km/h though, 20 km/h slower than the Mallard, the direct rival BR 05 002 was only a few m/h slower than the A4 Mallard.)
 

TheShuttleExperience

Well-known member
Joined
Feb 24, 2021
Messages
904
Reaction score
1,184
Points
108
Location
Earth
Those speed records are actually amazing if we consider the locomotives were powered by coal/steam. Today it feels already fast (in the front though) to drive 120 Km/h or 140 Km/h with modern diesel railcars or electric units like the ones I drive. But I guess it's due to their relatively low weight.

 

Urwumpe

Not funny anymore
Addon Developer
Donator
Joined
Feb 6, 2008
Messages
37,518
Reaction score
2,243
Points
203
Location
Wolfsburg
Preferred Pronouns
Sire
I know it is too much on topic for random comments... but I just found this great article about how Diesel engines changed the railway world, and I thought it might also be interesting for others here:

 

Urwumpe

Not funny anymore
Addon Developer
Donator
Joined
Feb 6, 2008
Messages
37,518
Reaction score
2,243
Points
203
Location
Wolfsburg
Preferred Pronouns
Sire
At least looks like fun. Also we have docking support that works on the ground as well now...
 

steph

Well-known member
Joined
Mar 22, 2008
Messages
1,390
Reaction score
710
Points
113
Location
Vendee, France
Can't copy the original text for some reaaon, and the person quoting it didn't link to the original, but I just took a screenshot of the original translated text. I'm still not 100% sure it is all this, as there's La Nina too, and stuff like the drought we'ee witnessing in France has been happening since before 2020, but this may be worsening it.
And, unfortunately, that northern shift is real. There was a sort of 'invisible' line, situated around La Rochelle or that bay nearby, that divided climates and the way storm systems moved etc. That line has moved north over the years, and is now probably more like around the Loire estuary or even Brittany

edit: Not to mention warmer ocean would mean more storms, but it doesn't really seem to be the case

Edit 2: well, Google Lens has a function to copy text from images . This is cool. I'll just quote

For a long time thought that one of the reasons why we easily get almost unmoved warm weather is mainly the shift of Haddley circulation northward - subtropical heights are anomaly stretched across the western Mediterranean and the Iberian Peninsula and towards us, etc. But there is something else too. A new regulation came into force in 2020, reducing the limit of sulfur oxide in shipping from 3.5% to 0.5%. This shock change has caused that in places of frequented shipping 30-60N the ocean has to absorb more solar radiation than before this change and so the oceans and regions 30-60N warm perhaps the most. SO2 in the atmosphere is like a volcanic eruption in the role of reflecting the incoming solar radiation. You take SO2 from the atmosphere and the heat absorbs the ocean. So the dilemma, what's better to have a smaller environmental burden, an anomaly rapidly warming atmosphere, or to regulate SO2 less and not experience such a shock therapy?

What is to blame for a very rapid temperature increase in mid latitudes 30-60N since 2020? Well it appaers we can partially blame the new shipping regulation in 2020 reducing max S02 emisions from 3.5 to 0.5 pct. S02 absorbs solar radiation and if taken out from the atmosphere its up to oceans to store all this excessive heat.

FB_IMG_1678358507284.jpg
FB_IMG_1678358511683.jpgFB_IMG_1678358517556.jpgFB_IMG_1678358522310.jpg
 
Last edited:

steph

Well-known member
Joined
Mar 22, 2008
Messages
1,390
Reaction score
710
Points
113
Location
Vendee, France
UK in chaos after a day of several inches of snow.

And freezing rain coming in some parts. ALthough, if there is snow cover, that might lessen the impact. Or maybe not. A friend in the UK kept mocking the hysteria this morning, because the layer was thin at his place. He now complains about having to shovel :ROFLMAO: .
I don't know for the northern parts, but I'd assume that for the areas not used to snow, it's like around here. Most people have summer tires, lack experience driving in the snow, so plenty of cars end up in the ditch, crashes happen etc. But I'm not sure if it will disrupt train travel etc.
 

jedidia

shoemaker without legs
Addon Developer
Joined
Mar 19, 2008
Messages
10,821
Reaction score
2,080
Points
203
Location
between the planets
I don't know for the northern parts, but I'd assume that for the areas not used to snow, it's like around here.
The thing I don't get about the UK is how there can be people "not used to snow". Doesn't the whole country see some snow each year?
 

Evil_Onyx

Well-known member
Joined
Jun 27, 2008
Messages
1,045
Reaction score
60
Points
63
It maybe snows once a year, and most people take the day off as an excuse/look after children who's school is closed. Those of us that drive for a living just expect large amounts of idiots on the roads. I spent yesterday sliding around in a tug.PXL_20230310_073447126.jpg
 

Notebook

Addon Developer
Addon Developer
News Reporter
Donator
Joined
Nov 20, 2007
Messages
11,809
Reaction score
640
Points
188
For Steph and Jedidia above.

UK "snow memory" is very poor, and we don't get enough heavy snow to make it economically viable to keep transport routes open.
Being a small island, its debatable which part is cut-off from the other, so nobody bothers.

The media doesn't help either, sending reporters to the most cut-off places and not wearing proper headgear. Must be a macho thing.
 

Linguofreak

Well-known member
Joined
May 10, 2008
Messages
5,003
Reaction score
1,239
Points
188
Location
Dallas, TX
I just had a horrible, awful idea:

The advantage of little-endian byte order is that the same value in memory can be read at any width without changing the address: 0xff000000 is 255 whether you read it at byte width, 16-bit width, or 32-bit width. But you can actually make this work for big-endian too! If, instead of having an address refer to a location in memory, you have it refer to a boundary between locations, and write big and little endian values on opposite sides of the boundary, big endian values gain the same width-agnostic property as little-endian values. Of course, this is likely to be a pain to implement in hardware, and to breed a locust-swarm of off-by-one bugs of apocalyptic proportions, so there are reasons not to do it...
 

jedidia

shoemaker without legs
Addon Developer
Joined
Mar 19, 2008
Messages
10,821
Reaction score
2,080
Points
203
Location
between the planets
As somebody always on the lookout for good scifi webcomics, I was pretty shocked when I discovered Runners, because I never heard of it and it's excellent:

It actually started back in the early 2000's as an actual comic book, so the art is way up there. Thematically it's a very star wars-ish firefly space opera kinda thing (all complete with a girl with no memory and mysterious powers that started out as payload, though it looks like the original comic issue may actually have predated firefly).
It's a slow burn with periods of haitus (one of them we seem to be in since this january, unfortunately), but the individual volumes (of which there are 2 complete ones and one halfway through) are very self-contained and don't rely much on a strong overarching plot to drive them.
If you like comic books and space opera, it's absolutely worth the read (won't take you more than a couple hours to read through what's there either).
 
Top