Newsgroup: it.comp.software.tex
Titolo: allineamento vettore

Ciao a tutti, mi seriverebbe un piccolo aiuto.
Ho definito i comandi per le "solite" funzioni sui campi vettoriali 
(divergenza, gradiente, rotore) nel modo seguente:
\newcommand{\rot}[1]{\textrm{rot}{#1}}
E fin qui nulla di particolare, ad esempio per un campo \vec{E}, uso la 
sintassi
$\rot{\vec{E}}$
e non c'è problema: la base della scritta "rot" è allineata con la base 
della lettera "E".
I problemi arrivano allorché voglio modificare la freccina del vettore del 
campo. Mi spiego meglio: voglio usare una freccina incurvata per indicare 
che il campo in questione è un campo assiale e non polare. Quindi mi creo il 
comando
\newcommand{\vea}[1]{\stackrel{\curvearrowright}{#1}}
e scrivo ad esempio
$\rot{\vec{B}}$
ma, in questo caso, nell'output la base di "rot" non è più allineata con la 
base della lettera "B", ma la lettera "B" con sopra la freccina viene 
leggermente spostata verso il basso.
Non è un dramma, ma sarebbe tipograficamente più carino se io riuscissi a 
tenere allineata la base della scritta "rot" con la base della lettera "B". 
Sapete se c'è un modo per farlo?
Grazie mille,
Daniele

 $\rot{\vec{B}}$
$\rot\vea{B}$
Ciao
Enrico

 $\rot\vea{B}$
Anche togliendo la parentesi graffa e usando questa sintassi l'allineamento 
verticale non cambia. La B mi si allontana leggermente da "rot", ma 
orizzontalmente. Verticalmente la base della B è ancora situata più in basso 
rispetto alla base della scritta "rot"... Non sapresti se c'è un'altra 
soluzione?
Grazie!
Daniele

 scrive:

Ma hai visto anche quello che seguiva?
\newcommand{\vea}{\overset{\curvearrowright}}
Con questo comando, $\rot\vea{B}$ viene corretto. Il comando \stackrel
non è molto affidabile.
Ciao
Enrico

 scrive:

Volevo ampliare l'analisi su \stackrel, magari per aiutare altri
che lo usano.
La definizione di \stackrel{arg1}{arg2}
\mathrel{\mathop{arg2}\limits^{arg1}}
che va anche bene quando arg2 è un simbolo di relazione che sia già
centrato rispetto all'asse delle formule (per esempio, "="). Il comando
\mathop ha una particolarità: se arg2 è un singolo carattere (tralascio
certi dettagli), questo viene centrato rispetto all'asse delle formule.
Da ciò l'abbassamento notato da Daghi. Si può curare così:
\stackrel{\curvearrowright}{\mbox{}B}
perché l'argomento di \mathop non è più un singolo carattere. Ma c'è
un altro problema: il simbolo così costruito è considerato un simbolo
di relazione, con i problemi di spaziatura conseguenti.
La soluzione è di farlo diventare un simbolo "normale", racchiudendolo
fra graffe. Dunque la definizione corretta potrebbe essere
\newcommand{\vea}[1]{{\stackrel{\mbox{}#1}{\curverightarrow}}}
e credo sia evidente come
\newcommand{\vea}{\overset{\curvearrowright}}
sia superiore. Un'ultima considerazione: molti avrebbero scritto
\newcommand{\vea}[1]{\overset{\curvearrowright}{#1}}
ma è una complicazione inutile e costringe LaTeX a leggere due volte
l'argomento. Con un po' di esperienza di macro si fa l'abitudine.
Ciao
Enrico

> Ma hai visto anche quello che seguiva?
Quanto sono stupido (e impaziente); no, non avevo visto.
Ti ringrazio molto per i consigli. Ora č perfetto.
Daniele 

 \newcommand{\vea}[1]{\overset{\curvearrowright}{#1}}
Io compreso! :)
Grazie anche per questa precisazione.
Daniele 

io invece di consiglio di non usare rot, che è davvero brutto, è solo
italiano (vedi curl), e non lo usa nessuno. Usa \nabla\times che è
molto meglio, soprattutto se hai bisogno di smanettare con operatori.