Disegni di insiemi di numeri complessi
Salve a tutti! Purtroppo, sono rimasto per molto tempo lontano dal Forum, e forse dovrei addirittura ripresentarmi.
Scrivevo per chiedervi: voi sappiate se (e come) si possa disegnare con un qualsiasi software (come Gnuplot, Mathematica, MATLAB, etc. etc.) o anche con WolframAlpha un insieme di numeri complessi?
Io ho pensato che lo si potrebbe vedere come insieme di punti di \(\displaystyle \mathbb{R}^2 \), e quindi poi si potrebbero definire delle condizioni... Ma ho cercato un po' sulla rete senza successo.
Ad esempio, poniamo che io voglia rappresentare l'insieme \(\displaystyle \{ u \in \mathbb{C} : u = \frac{1}{z}, z \in E \} \), dove E è l'insieme \(\displaystyle \{ z \in \mathbb{C} : |z-1+i| < \sqrt{2} \} \). Come potrei fare? Definendo una funzione a variabile complessa??
Scusate, ma davvero non sono riuscito a trovare nulla. Se voi aveste anche un sito, o un vecchio post del forum, sarebbe perfetto!
Grazie
Scrivevo per chiedervi: voi sappiate se (e come) si possa disegnare con un qualsiasi software (come Gnuplot, Mathematica, MATLAB, etc. etc.) o anche con WolframAlpha un insieme di numeri complessi?
Io ho pensato che lo si potrebbe vedere come insieme di punti di \(\displaystyle \mathbb{R}^2 \), e quindi poi si potrebbero definire delle condizioni... Ma ho cercato un po' sulla rete senza successo.
Ad esempio, poniamo che io voglia rappresentare l'insieme \(\displaystyle \{ u \in \mathbb{C} : u = \frac{1}{z}, z \in E \} \), dove E è l'insieme \(\displaystyle \{ z \in \mathbb{C} : |z-1+i| < \sqrt{2} \} \). Come potrei fare? Definendo una funzione a variabile complessa??
Scusate, ma davvero non sono riuscito a trovare nulla. Se voi aveste anche un sito, o un vecchio post del forum, sarebbe perfetto!
Grazie
Risposte
Provo a risponderti io.
Innanzi tutto penso che la parte principale sia capire chi è l'insieme E.
$E=\Set{z \in \mathbb{C} : |z-1+i|\leq \sqrt{2} }$.
$z \in \mathbb{C}$ significa che $z = a + ib$ con $a, b \in mathbb{R}$. La condizione $|z-1+i|\leq \sqrt{2} $ ci dice che
$|a+ib-1+i|\leq \sqrt{2}$, cioè $|a-1+i(b+1)|\leq \sqrt{2}$, cioè $(a-1)^2 + (b+1)^2 \leq 2$.
Quindi vuol dire che l'insieme $E$ è formato dai numeri complessi della forma $a+ib$ tali che $(a-1)^2 + (b+1)^2 \leq 2$.
Ora, prendendo ad esempio MatLab, potresti creare una griglia fitta quanto vuoi di una certa grandezza che rappresenta la parte reale e la parte immaginaria di $z$ e imponi la condizione:
Non ho testato il codice ma l'ho scritto ora direttamente qui.
Adesso, ammesso che quanto ho scritto sia giusto, non dovrebbe essere troppo complicato disegnare l'insieme $\Set{ u \in \mathbb{C} : u=\frac{1}{z}, z \in E}$.
Potresti ad esempio modificare il codice di prima, salvando in due array le posizioni degli elementi che soddisfano la condizioni per cui essi appartengono ad E e poi disegnare usando il fatto che:
$1/z = \frac{a}{a^2 + b^2} - i\frac{b}{a^2+b^2}$
Ora, probabilmente il codice non è molto efficiente, ma penso che possa essere giusto. Se ho sbagliato qualcosa mi scuso in anticipo.
Innanzi tutto penso che la parte principale sia capire chi è l'insieme E.
$E=\Set{z \in \mathbb{C} : |z-1+i|\leq \sqrt{2} }$.
$z \in \mathbb{C}$ significa che $z = a + ib$ con $a, b \in mathbb{R}$. La condizione $|z-1+i|\leq \sqrt{2} $ ci dice che
$|a+ib-1+i|\leq \sqrt{2}$, cioè $|a-1+i(b+1)|\leq \sqrt{2}$, cioè $(a-1)^2 + (b+1)^2 \leq 2$.
Quindi vuol dire che l'insieme $E$ è formato dai numeri complessi della forma $a+ib$ tali che $(a-1)^2 + (b+1)^2 \leq 2$.
Ora, prendendo ad esempio MatLab, potresti creare una griglia fitta quanto vuoi di una certa grandezza che rappresenta la parte reale e la parte immaginaria di $z$ e imponi la condizione:
clear all, close all a = linspace(-10,10,500); % Parte reale di z b = linspace(-10,10,500); % Parte immaginaria di z figure for i=1:length(a) for j=1:length(b) if ( ((a(i)-1)^2 + (b(j)+1)^2) <= 2 ) plot(a(i),b(j),'or') hold on end if end end
Non ho testato il codice ma l'ho scritto ora direttamente qui.
Adesso, ammesso che quanto ho scritto sia giusto, non dovrebbe essere troppo complicato disegnare l'insieme $\Set{ u \in \mathbb{C} : u=\frac{1}{z}, z \in E}$.
Potresti ad esempio modificare il codice di prima, salvando in due array le posizioni degli elementi che soddisfano la condizioni per cui essi appartengono ad E e poi disegnare usando il fatto che:
$1/z = \frac{a}{a^2 + b^2} - i\frac{b}{a^2+b^2}$
clear all, close all a = linspace(-10,10,500); % Parte reale di z b = linspace(-10,10,500); % Parte immaginaria di z k=0; for i=1:length(a) for j=1:length(b) if ( ((a(i)-1)^2 + (b(j)+1)^2) <= 2 ) k=k+1; ii(k) = i; jj(k) = j; end end end figure for i=1:k plot(a(ii(i))/(a(ii(i))^2 + b(ii(i))^2),-b(ii(i))/(a(ii(i))^2 + b(ii(i))^2),'or') hold on end
Ora, probabilmente il codice non è molto efficiente, ma penso che possa essere giusto. Se ho sbagliato qualcosa mi scuso in anticipo.
Carina l'implementazione Matlab di Lory314.
Con Mathematica hai diverse opzioni (fonte: help di Mathematica):
Per vedere come viene mappata una griglia puoi usare ParametricPlot[]: ad esempio, il codice qui sotto plotta la griglia e le funzioni radice quadrata e radice cubica:

Questo codice invece non plotta la griglia ma direttamente la funzione \(\displaystyle f(z)=z+\frac{1}{z} \)

Altrimenti, puoi vedere come si comporta la funzione sul piano complesso in termini di modulo, fase, parte reale, parte immaginaria, ecc. Questo è facile, basta usare ContourPlot[] perché hai a che fare con funzioni reali di due variabili reali. Ad esempio, il codice sotto plotta la parte reale delle funzioni trigonometriche inverse:

Se vuoi vedere il modulo, basta che scambi Re[] con Abs[] e via dicendo.
Con Mathematica hai diverse opzioni (fonte: help di Mathematica):
Per vedere come viene mappata una griglia puoi usare ParametricPlot[]: ad esempio, il codice qui sotto plotta la griglia e le funzioni radice quadrata e radice cubica:
Table[ParametricPlot[{Re[(u + I v)^n], Im[(u + I v)^n]}, {u, -2, 2}, {v, -2, 2}, MeshStyle -> {Orange, Green}, PlotRange -> 2], {n, {1, 1/2, 1/3}}]

Questo codice invece non plotta la griglia ma direttamente la funzione \(\displaystyle f(z)=z+\frac{1}{z} \)
ParametricPlot[ With[{z = u + I v}, {Re[z + 1/z], Im[z + 1/z]}], {u, -1/2, 1/2}, {v, -1/2, 1/2}, PlotRange -> 5]

Altrimenti, puoi vedere come si comporta la funzione sul piano complesso in termini di modulo, fase, parte reale, parte immaginaria, ecc. Questo è facile, basta usare ContourPlot[] perché hai a che fare con funzioni reali di due variabili reali. Ad esempio, il codice sotto plotta la parte reale delle funzioni trigonometriche inverse:
Table[ContourPlot[Re[f[x + I y]], {x, -Pi, Pi}, {y, -Pi, Pi}, PlotLabel -> f, FrameTicks -> {{-Pi, 0, Pi}, {-Pi, 0, Pi}}, ClippingStyle -> Automatic, ColorFunction -> "Pastel"], {f, {ArcSin, ArcCos, ArcCsc, ArcSec, ArcTan, ArcCot}}]

Se vuoi vedere il modulo, basta che scambi Re[] con Abs[] e via dicendo.