Byla vydána nová verze 9.2 textového editoru Vim (Vi IMproved). Přináší vylepšené doplňování, podporu schránky ve Waylandu, podporu XDG Base Directory (konfigurace v $HOME/.config/vim), vylepšené Vim9 skriptování nebo lepší zvýrazňování změn. Vim zůstává charityware. Nadále vybízí k podpoře děti v Ugandě. Z důvodu úmrtí autora Vimu Brama Moolenaara a ukončení činnosti jím založené charitativní organizace ICCF Holland projekt Vim navázal spolupráci s charitativní organizaci Kuwasha.
Byl představen editor MonoSketch, webová aplikace pro tvorbu diagramů, technických nákresů, flowchartů a různých dalších vizualizací, to vše jenom z ASCII znaků. Všechny operace běží pouze v prohlížeči uživatele a neprobíhá tedy žádné nahrávání dat na server. Zdrojový kód aplikace (drtivá většina Kotlin, žádné C#) je dostupný na GitHubu pod licencí Apache 2.0.
Byla vydána nová verze 3.7.0 multiplatformního svobodného frameworku pro zpracování obrazu G'MIC (GREYC's Magic for Image Computing, Wikipedie). Přehled novinek i s náhledy nových filtrů na PIXLS.US.
Všem na AbcLinuxu vše nejlepší k Valentýnu aneb Dni lásky ke svobodnému softwaru (I love Free Software Day, Mastodon, 𝕏).
Eric Migicovsky představil Pebble Emulator, tj. emulátor hodinek Pebble (PebbleOS) běžící ve webovém prohlížeči. Za 6 hodin jej napsal Claude Code. Zdrojové kódy jsou k dispozici na GitHubu.
Byla vydána nová verze 3.41 frameworku Flutter (Wikipedie) pro vývoj mobilních, webových i desktopových aplikací a nová verze 3.11 souvisejícího programovacího jazyka Dart (Wikipedie).
Rusko zcela zablokovalo komunikační platformu WhatsApp, řekl včera mluvčí Kremlu Dmitrij Peskov. Aplikace, jejímž vlastníkem je americká společnost Meta Platforms a která má v Rusku na 100 milionů uživatelů, podle Peskova nedodržovala ruské zákony. Mluvčí zároveň lidem v Rusku doporučil, aby začali používat domácí aplikaci MAX. Kritici tvrdí, že tato aplikace ruské vládě umožňuje lidi sledovat, což úřady popírají.
Před 34 lety, ve čtvrtek 13. února 1992, se tehdejší Česká a Slovenská Federativní Republika oficiálně (a slavnostně) připojila k Internetu.
Agent umělé inteligence vytvořil 'útočný' článek o Scottu Shambaughovi, dobrovolném správci knihovny matplotlib, poté, co vývojář odmítl agentem navrženou změnu kódu (pull request). 'Uražený' agent autonomně sepsal a publikoval na svém blogu článek, který přisuzuje Shambaughovi smyšlené motivace, egoismus a strach z AI coby konkurence.
Bylo vydáno Ubuntu 24.04.4 LTS, tj. čtvrté opravné vydání Ubuntu 24.04 LTS s kódovým názvem Noble Numbat. Přehled novinek a oprav na Discourse.
int i;
double x, dx;
double y, dy;
double C;
// nějaké startovní podmínky
x = 5;
y = 7;
C = 4.55;
// dx/dy je lineární.
dx = 0.1;
dy = 0.05;
for (i = 0; i < 1000; i++)
{
double d = x * y * C;
printf("%f\n", d);
x += dx;
y += dy;
}
Můj problém je, že bych v tom cyklu chtěl jen sčítat, takto bych si to představoval:
int i;
double x, dx;
double y, dy;
double C;
// nějaké startovní podmínky
x = 5;
y = 7;
C = 4.55;
// dx/dy je lineární.
dx = 0.1;
dy = 0.05;
// výpočet d a delty, popřípadě delta-delta?
double d = x * y * C;
double delta = ???
for (i = 0; i < 1000; i++)
{
printf("%f\n", d);
d += delta;
}
Pro výpočet delty jsem zkusil více možností, jsem si celkem jistý, že tam musí být y*dx*C + x*dy*C, ale něco mi tam chybí.
Takže, je tu nějaký zkušený matematik, co by věděl:_) ?
import math
def f(x, y, C):
return x * y * C
x = 1.5
y = 1.9
C = 1.4
dx = 1.5
dy = 1.1
d = f(x, y, C)
d_d = x * dy * C + y * dx * C + dx * dy * C
d_d_d = dx * C + dy * C
for i in xrange(0, 10):
a = f(x, y, C)
d
if abs(a - d) > 0.001:
print "a=%f b=%f (FAILED)" % (a, d)
else:
print "a=%f b=%f (OK)" % (a, d)
d += d_d
d_d += d_d_d
x += dx
y += dy
Je potřeba i druhá derivace funkce, takže mám 2 přírůstky (d, d_d), které jsou:
d = x * dy * C + y * dx * C + dx * dy * C d_d = 2 * C * dx * dyTakže uzavřít
import math
def f(x, y, C):
return x * y * C
x = 1.5
y = 1.9
C = 1.4
dx = 1.9
dy = 1.5
d = f(x, y, C)
d_d = x * dy * C + y * dx * C + dx * dy * C # První
d_d_d = 2 * C * dx * dy # Druhá
for i in xrange(0, 10):
a = f(x, y, C)
if abs(a - d) > 0.001:
print "a=%f b=%f (FAILED)" % (a, d)
else:
print "a=%f b=%f (OK)" % (a, d)
d += d_d
d_d += d_d_d
x += dx
y += dy
Šlo o to, abych spočítal průběh té funkce, aniž bych musel dosazovat do f()No dobře, to je popis toho, co děláš. Ale tím, že to popíšeš, to nezačne dávat smysl. Proč nechceš počítat hodnotu funkce, když ji spočítat dovedeš? Je to skoro vždy mnohem jednodušší než numerická integrace -- v tvém případě je to zcela evidentně jednodušší. Jediná důležitá praktická výjimka, kterou znám, je obecný Bresenhamův algoritmus pro rasterizaci algebraických křivek, ale tam je to právě tou diskretizací do rastru. A že to s tou druhou derivací provádí něco smysluplného je zde dáno čistě tím, že Taylorův rozvoj té funkce končí u druhého řádu. Takže ve skutečnosti počítáš přímo zase hodnotu té funkce, akorát ten polynom máš hrozně složitě rozepsaný.
A jinak sorry, ale trvdit o něčem, že to nemá hlavu ani patu když máš k dispozici i zdroják na otestování, je trochu ubohé.Mohu a budu s klidem tvrdit, že to nemá to hlavu ani patu, i kdyby k tomu bylo deset testovacích zdrojáků, pokud nemá hlavu ani patu původní formulace problému.
Ta funkce je taky hodně primitivní, takže sis chtěl asi jen rýpnout ne...?Primitivní funkce je (zhruba řečeno) taková, kterou když zderivuji, dostanu původní funkci. Tato vlastnost není kvantifikovatelná. Buď funkce k dané funkci primitivní je, nebo není, nemůže být více nebo méně primitivní.
S tou druhou derivací to zase takový blábol nebude, protože nehledám parciální, ale úplnou.Děkuji za potvrzení, že to je naprostý blábol. Parciální derivace je derivace podle jednoho argumentu. Totální derivace je pojem, který má smysl, pouze pokud jsou některé argumenty funkcemi dalších argumentů/proměnných. To zde má nastávat konkrétně kde a jak? A i pak se v první totální derivaci vyksytují stále jen particální derivace. Totéž pro totální diferenciál.
Děkuji za potvrzení, že to je naprostý blábol. Parciální derivace je derivace podle jednoho argumentu. Totální derivace je pojem, který má smysl, pouze pokud jsou některé argumenty funkcemi dalších argumentů/proměnných. To zde má nastávat konkrétně kde a jak? A i pak se v první totální derivaci vyksytují stále jen particální derivace. Totéž pro totální diferenciál.Funkce x*y má diferenciál, a diferenciál diferenciálu, já fakt nevím, co je na tom nepochopytelné.
Dokážeš vůbec rozlišit mezi derivací a diferenciálem?Dokážu, ale netvářím se, že to spolu nesouvisí...
Nepochopitelné je, jak tu žonglueš matematickými pojmy.No vidíš, a ty do toho přidáváš elektrárny a mosty. Máš tu nejvíc příspěvků, a trumfl tě ten nejmenší co tu je.
"d" se v jednom kroku zvětší o C*x*dy + C*dx*y (označíme "a") "C*x*dy" se zvětší o C*dx*dy "C*dx*y" se zvětčí také o C*dx*dy, tuto konstantu označíme "b/2" Takže "C*x*dy + C*dx*y" se zvětší o "b"Takže by mělo stačit něco ve smyslu:
d=x*y*C;
a=C*(x*dx+dx*y);
b=2*dx*dy*C;
for(i=0; i<1000; i++) {
printf("%f\n",d);
d+=a;
a+=b;
}
d = x^2 * (r^2 - fy^2) + y^2 * (r^2 - fx^2) + x*y * (2*fx*fy)Ale problém jsem měl právě s tím x*y:) Celý kód je zde: http://code.google.com/p/fog/source/browse/trunk/Fog/Fog/G2d/Render/Render_C/PGradientRadial_p.h
Tiskni
Sdílej: