[Risolto] Unità “masse solari”

  • Creatore
    Topic
  • #61568
    Up
    0
    Down
    ::


    Vorrei aggiungere con siunitx l’unità di misura delle masse solari, generalmente indicata con M e in pedice il simbolo ύ7;. Avevo provato a utilizzare il comando `odot’ e definire l’unità con
    `\DeclareSIUnit\solarmass{M_\odot}`
    ma compilando questo documento
    `\documentclass{article}
    \usepackage[T1]{fontenc}
    \usepackage[utf8]{inputenc}
    \usepackage[italian]{babel}
    \usepackage{siunitx}
    \DeclareSIUnit\solarmass{M_\odot}
    \begin{document}
    Il Sole ha una massa di \SI{1}{\solarmass}
    \end{document}`
    ricevo il seguente messaggio di errore:
    `! Missing $ inserted.

    $
    l.251 Il Sole ha una massa di \SI{1}{\solarmass}`
    pensp perché `\odot’ funziona solo in ambiente matematico. Ho cercato nella “The Comprehensive LaTeX Symbol List” un altro simbolo per il sole e ho trovato `\astrosun’ del pacchetto `wasysym’. Cambiando la definizione dell’unità di misura con
    `\DeclareSIUnit\solarmass{M_\astrosun}`
    ottengo il risultato voluto, però vorrei sapere se c’è qualche modo di definire l’unità senza utilizzare pacchetti esterni come `wasysym’.

    P. S. ho anche provato a usare il simbolo Unicode del Sole ύ7; (codice U+2609), ma il compilatore non sembra apprezzare
    `ERROR: Package inputenc Error: Unicode char \u8:ύ7; not set up for use with LaTeX.`

Visualizzazione 3 filoni di risposte
  • Autore
    Risposte
    • #61569
      Up
      0
      Down
      ::

      Vorrei aggiungere con siunitx l’unità di misura delle masse solari, generalmente indicata con M e in pedice il simbolo ύ7;. Avevo provato a utilizzare il comando `odot’ e definire l’unità con
      `\DeclareSIUnit\solarmass{M_\odot}`
      ma compilando questo documento
      `\documentclass{article}
      \usepackage[T1]{fontenc}
      \usepackage[utf8]{inputenc}
      \usepackage[italian]{babel}
      \usepackage{siunitx}
      \DeclareSIUnit\solarmass{M_\odot}
      \begin{document}
      Il Sole ha una massa di \SI{1}{\solarmass}
      \end{document}`
      ricevo il seguente messaggio di errore:
      `! Missing $ inserted.

      $
      l.251 Il Sole ha una massa di \SI{1}{\solarmass}`
      pensp perché `\odot’ funziona solo in ambiente matematico. Ho cercato nella “The Comprehensive LaTeX Symbol List” un altro simbolo per il sole e ho trovato `\astrosun’ del pacchetto `wasysym’. Cambiando la definizione dell’unità di misura con
      `\DeclareSIUnit\solarmass{M_\astrosun}`
      ottengo il risultato voluto, però vorrei sapere se c’è qualche modo di definire l’unità senza utilizzare pacchetti esterni come `wasysym’.

      P. S. ho anche provato a usare il simbolo Unicode del Sole ύ7; (codice U+2609), ma il compilatore non sembra apprezzare
      `ERROR: Package inputenc Error: Unicode char \u8:ύ7; not set up for use with LaTeX.`

      `\DeclareSIUnit\solarmass{M\ensuremath{_\odot}}`
      Ciao
      Enrico

    • #61570
      Up
      0
      Down
      ::

      `\DeclareSIUnit\solarmass{M\ensuremath{_\odot}}`
      Ciao
      Enrico

      Ovviamente funziona, grazie mille 🙂
      Avrei da fare una domanda. Avevo provato a usare `\ensuremath’ però in questo modo:
      `\DeclareSIUnit\solarmass{M_\ensuremath{\odot}}`
      e ricevevo questo messaggio di errore:
      `ERROR: Argument of \@ensuredmath has an extra }.`
      So che il pedice con `_’ funziona solo in ambiente matematico, però siunitx non si lamentava quando usavo `\astrosun’. Perché lì il trattino basso non dava problemi e con `\odot’ sì?

    • #61571
      Up
      0
      Down
      ::

      `\DeclareSIUnit\solarmass{M\ensuremath{_\odot}}`
      Ciao
      Enrico

      Ovviamente funziona, grazie mille 🙂
      Avrei da fare una domanda. Avevo provato a usare `\ensuremath’ però in questo modo:
      `\DeclareSIUnit\solarmass{M_\ensuremath{\odot}}`
      e ricevevo questo messaggio di errore:
      `ERROR: Argument of \@ensuredmath has an extra }.`
      So che il pedice con `_’ funziona solo in ambiente matematico, però siunitx non si lamentava quando usavo `\astrosun’. Perché lì il trattino basso non dava problemi e con `\odot’ sì?

      Funziona anche “_{$\odot$}”, se vuoi saperlo. Ho provato a capire qualcosa di come lavora siunitx, ma con \tracingmacros=1 ottengo un log di 679KiB. 😯 Suppongo che ridefinisca localmente _ in modo che non faccia entrare in modo matematico. Se però è dentro a \ensuremath fa ciò che deve normalmente.

      Ciao
      Enrico

    • #61572
      Up
      0
      Down
      ::

      [quote]`\DeclareSIUnit\solarmass{M\ensuremath{_\odot}}`
      Ciao
      Enrico

      Ovviamente funziona, grazie mille 🙂
      Avrei da fare una domanda. Avevo provato a usare `\ensuremath’ però in questo modo:
      `\DeclareSIUnit\solarmass{M_\ensuremath{\odot}}`
      e ricevevo questo messaggio di errore:
      `ERROR: Argument of \@ensuredmath has an extra }.`
      So che il pedice con `_’ funziona solo in ambiente matematico, però siunitx non si lamentava quando usavo `\astrosun’. Perché lì il trattino basso non dava problemi e con `\odot’ sì?

      Funziona anche “_{$\odot$}”, se vuoi saperlo.[/quote]
      Bene, dunque non avevo fatto abbastanza prove da me 😳

      Ho provato a capire qualcosa di come lavora siunitx, ma con \tracingmacros=1 ottengo un log di 679KiB. 😯 Suppongo che ridefinisca localmente _ in modo che non faccia entrare in modo matematico. Se però è dentro a \ensuremath fa ciò che deve normalmente.

      Ciao
      Enrico

      Grazie di nuovo!

Visualizzazione 3 filoni di risposte
  • Devi essere connesso per rispondere a questo topic.

Go to top