09/02/2024, 18:09
jhs ha scritto:Il risultato che riporta il libro è 468.2, in linea con quanto hai calcolato tu.
pistacios ha scritto:Per curiosità, come posso capire quando in effetti non è esplicitabile in funzioni elementari?
09/02/2024, 18:12
jhs ha scritto:No, X non può mai essere 0 e nemmeno S. A me interessa ricavare X dati gli altri coefficienti, che sono sempre maggiori di 0.
Nell'esempio S=468.146 (il testo approssima a 468.2).
09/02/2024, 19:11
Sisi, questo è verissimo ma non è sufficiente (diciamo che è vero tendenzialmente). Quindi mi aveva incuriosito come torvare un controesempio furbo come ha fatto sellacolle.un buon indizio è quando appaiono funzioni non algebriche trascendenti (come esponenziali, logaritmi ecc).
09/02/2024, 19:54
sellacollesella ha scritto:e applicando il metodo più semplice in assoluto, ossia il metodo di bisezione, abbiamo:e così via finché ci si ritiene soddisfatti dall'approssimazione: \(X \approx 0.500\).
- dato che \(f(a)f(c)<0\) allora \([a,b]=[0.001,0.764]\) e \(c = 0.3823\);
- dato che \(f(a)f(c)>0\) allora \([a,b]=[0.3823,0.764]\) e \(c = 0.5729\);
- dato che \(f(a)f(c)<0\) allora \([a,b]=[0.3823,0.5729]\) e \(c = 0.4776\);
- dato che \(f(a)f(c)>0\) allora \([a,b]=[0.4776,0.5729]\) e \(c = 0.5252\);
- dato che \(f(a)f(c)<0\) allora \([a,b]=[0.4776,0.5252]\) e \(c = 0.5014\);
- dato che \(f(a)f(c)<0\) allora \([a,b]=[0.4776,0.5014]\) e \(c = 0.4895\);
- dato che \(f(a)f(c)>0\) allora \([a,b]=[0.4895,0.5014]\) e \(c = 0.4954\);
09/02/2024, 21:30
sellacollesella ha scritto:jhs ha scritto:Il risultato che riporta il libro è 468.2, in linea con quanto hai calcolato tu.
Ottimo! Assodato ciò, tornando all'equazione che avevi scritto in modo corretto sin dal principio: \[
\underbrace{S - \frac{KA(B-C)}{D^2(2-X)}\left[\left(1-\frac{3C}{A}X\right)^{1-\frac{2}{X}}-1\right]}_{f(X)} = 0
\] affinché abbia senso nel campo dei numeri reali dobbiamo imporre: \[
1 - \frac{3C}{A}X > 0
\] e tenendo conto che tutti i parametri sono positivi, tra cui \(X>0\), porta a scrivere: \[
0 < X < \frac{A}{3C} = 1.5269.
\] Pertanto, tenuto conto che:il teorema degli zeri assicura che \(f\) abbia almeno uno zero in tale intervallo e considerando anche il fatto
- \(f\) è continua in \((0,1.5269)\);
- \(\begin{aligned}\lim_{X \to 0^+}\end{aligned} f(X) > 0\);
- \(\begin{aligned}\lim_{X \to 1.5269^-}\end{aligned} f(X) < 0\);
che \(f\) è monotona decrescente allora lo zero è unico e può essere approssimato con un metodo a piacere.
In particolare, dato che agli estremi \(f\) può essere valutata solo al limite, ci riduciamo all'intervallo: \[
[a,b] := [0.001, 1.526]
\quad \quad \Rightarrow \quad \quad
c := \frac{a+b}{2} = 0.764
\] e applicando il metodo più semplice in assoluto, ossia il metodo di bisezione, abbiamo:e così via finché ci si ritiene soddisfatti dall'approssimazione: \(X \approx 0.500\).
- dato che \(f(a)f(c)<0\) allora \([a,b]=[0.001,0.764]\) e \(c = 0.3823\);
- dato che \(f(a)f(c)>0\) allora \([a,b]=[0.3823,0.764]\) e \(c = 0.5729\);
- dato che \(f(a)f(c)<0\) allora \([a,b]=[0.3823,0.5729]\) e \(c = 0.4776\);
- dato che \(f(a)f(c)>0\) allora \([a,b]=[0.4776,0.5729]\) e \(c = 0.5252\);
- dato che \(f(a)f(c)<0\) allora \([a,b]=[0.4776,0.5252]\) e \(c = 0.5014\);
- dato che \(f(a)f(c)<0\) allora \([a,b]=[0.4776,0.5014]\) e \(c = 0.4895\);
- dato che \(f(a)f(c)>0\) allora \([a,b]=[0.4895,0.5014]\) e \(c = 0.4954\);
pistacios ha scritto:Per curiosità, come posso capire quando in effetti non è esplicitabile in funzioni elementari?
Non conosco alcuna regola generale, tant'è che anche l'equazioncina che ho proposto come esempio ha soluzione reale esprimibile in forma chiusa, ma coinvolgendo la funzione W di Lambert non ne ho tenuto conto, non essendo nella cerchia delle cosiddette funzioni elementari a cui solitamente si fa riferimento.
In linea di principio, l'obiettivo è quello di ricondursi ad un sistema di equazioni polinomiali per le quali, perlomeno numericamente, risulta sempre possibile determinarne tutte le soluzioni in campo complesso; in caso contrario le cose si fanno mooolto più complicate e occorre capire di volta in volta come uscirne vivi.
09/02/2024, 22:09
a = 4370;
b = 1500;
c = 954;
d = 3000;
k = 1158;
s = 468.2;
f[x_] := s - k a (b - c) ((1 - 3 x c/a)^(1 - 2/x) - 1)/d^2/(2 - x)
tol = 10^-3.;
α = 0 + tol;
β = a/(3 c) - tol;
γ = (α + β) / 2;
While[β - α > tol,
If[f[α] f[γ] < 0, β = γ, α = γ];
γ = (α + β) / 2;
Print[{f[α] f[γ], α, β, γ}]
];
{820.344, 0.001, 0.763452, 0.382226}
{-169.275, 0.382226, 0.763452, 0.572839}
{49.7703, 0.382226, 0.572839, 0.477533}
{-11.5333, 0.477533, 0.572839, 0.525186}
{-0.446627, 0.477533, 0.525186, 0.501359}
{4.95533, 0.477533, 0.501359, 0.489446}
{1.09366, 0.489446, 0.501359, 0.495403}
{0.201395, 0.495403, 0.501359, 0.498381}
{0.0207691, 0.498381, 0.501359, 0.49987}
{-0.00241934, 0.49987, 0.501359, 0.500615}
{0.00145057, 0.49987, 0.500615, 0.500242}
09/02/2024, 22:15
sellacollesella ha scritto:Ma, volendo, si può fare a meno di scrivere righe di codice e usare un foglio Excel;
09/02/2024, 23:24
axpgn ha scritto:cinque minuti e hai finito
09/02/2024, 23:39
09/02/2024, 23:47
axpgn ha scritto:hai ricostruito in Excel quello che avresti fatto con un programma
Skuola.net News è una testata giornalistica iscritta al Registro degli Operatori della Comunicazione.
Registrazione: n° 20792 del 23/12/2010.
©2000—
Skuola Network s.r.l. Tutti i diritti riservati. — P.I. 10404470014.
Powered by phpBB © phpBB Group - Privacy policy - Cookie privacy
phpBB Mobile / SEO by Artodia.