Anzeige:
Ergebnis 1 bis 12 von 12

Thema: Verallgemeinerung von \sideset

  1. #1
    Registrierter Benutzer
    Registriert seit
    09.02.2005
    Beiträge
    77

    Verallgemeinerung von \sideset

    Hallo,

    mit \sideset kann man gewisse Symbole wie z.B. \sum im mathmode mit Sub- und Superindizes ausstetten und zwar nicht nur rechts davon, sondern auch links davon, also an allen 4 Ecken.

    Ich meine mich zu erinnern, dass es ein Paket gibt, mit dem dies allgemein möglich ist, nicht nur bei speziellen Symbolen wie \sum. Leider erinnere ich mich nicht an den Namen. Kennt es jemand?

    Vielen Dank,
    infutura

  2. #2
    Registrierter Benutzer Avatar von voss
    Registriert seit
    10.04.2005
    Beiträge
    5.045
    Zitat Zitat von infutura Beitrag anzeigen
    mit \sideset kann man gewisse Symbole wie z.B. \sum im mathmode mit Sub- und Superindizes ausstetten und zwar nicht nur rechts davon, sondern auch links davon, also an allen 4 Ecken.

    Ich meine mich zu erinnern, dass es ein Paket gibt, mit dem dies allgemein möglich ist, nicht nur bei speziellen Symbolen wie \sum. Leider erinnere ich mich nicht an den Namen. Kennt es jemand?
    dazu braucht man kein Paket; es geht mit jedem beliebigen Zeichen!

    Herbert

  3. #3
    Registrierter Benutzer
    Registriert seit
    09.02.2005
    Beiträge
    77
    Zitat Zitat von voss Beitrag anzeigen
    dazu braucht man kein Paket; es geht mit jedem beliebigen Zeichen!

    Herbert
    Wie meinst du das genau?

    Wenn ich sideset verwende und z.B. $\sideset{_1^2}{_3^4}{A}$ schreibe, erhalte ich einen Fehler, obwohl ich als Resultat erhalte, was ich erwarte. $\sideset{_1^2}{_3^4}{\prod}$ kompiliert hingehen ohne Fehler.

    Oder gibt es eine Möglichkeit ohne sideset? Wenn ja, wie?

  4. #4
    Registrierter Benutzer
    Registriert seit
    27.11.2007
    Beiträge
    375
    Hallo,

    das nächste Mal bitte gleich selber ein Minimalbeispiel erstellen.

    Code:
    \documentclass{minimal}
    \usepackage{amsmath}
    
    \begin{document}
    $\sideset{_1^2}{_3^4}{\operatorname{A}}$
    \end{document}
    Christian.
    Ubuntu 16.04 -- TeX Live 2015 -- Emacs (AUCTeX, RefTeX)

  5. #5
    Registrierter Benutzer
    Registriert seit
    09.02.2005
    Beiträge
    77
    Zitat Zitat von tral Beitrag anzeigen
    Hallo,

    das nächste Mal bitte gleich selber ein Minimalbeispiel erstellen.

    Code:
    \documentclass{minimal}
    \usepackage{amsmath}
    
    \begin{document}
    $\sideset{_1^2}{_3^4}{\operatorname{A}}$
    \end{document}
    Christian.
    Vielen Dank für deine Nachricht und das Beispiel mit einem Lösungsansatz.

    Meine Frage ist nun, warum $\sideset{_1^2}{_3^4}{\operatorname{A}}$
    funktioniert, nicht aber $\sideset{_1^2}{_3^4}{A}$.
    Davon abgesehen ist $\operatorname{A}$ nicht das gleiche wie $A$.

    Ich suche nach einem allgemeinen Ansatz, der es auch zulassen würde, $A$ statt $\operatorname{A}$ mit Sup- und Subindizes zu versehen. Geht das mit \sideset? Falls ja, wie? Falls nein, gibt es Alternativen?

  6. #6
    Registrierter Benutzer Avatar von voss
    Registriert seit
    10.04.2005
    Beiträge
    5.045
    Zitat Zitat von infutura Beitrag anzeigen
    Vielen Dank für deine Nachricht und das Beispiel mit einem Lösungsansatz.

    Meine Frage ist nun, warum $\sideset{_1^2}{_3^4}{\operatorname{A}}$
    funktioniert, nicht aber $\sideset{_1^2}{_3^4}{A}$.
    Davon abgesehen ist $\operatorname{A}$ nicht das gleiche wie $A$.

    Ich suche nach einem allgemeinen Ansatz, der es auch zulassen würde, $A$ statt $\operatorname{A}$ mit Sup- und Subindizes zu versehen. Geht das mit \sideset? Falls ja, wie? Falls nein, gibt es Alternativen?
    Code:
    \documentclass{minimal}
    \usepackage{amsmath}
    
    \begin{document}
    $\sideset{_1^2}{_3^4}{\operatorname{A}}$
    
    $\sideset{_1^2}{_3^4}{\mathop{A}}$
    
    $\sideset{_1^2}{_3^4}{\mathop A}$
    
    \end{document}
    Herbert

  7. #7
    Registrierter Benutzer
    Registriert seit
    27.11.2007
    Beiträge
    375
    Hallo,

    ich hab mal die Definition von sideset für dich so verändert, dass sie für normale Nicht-Operatoren geht:

    Code:
    \documentclass{minimal}
    \usepackage{amsmath}
    
    \makeatletter
    \newcommand{\mysideset}[3]{\@mathmeasure \z@ \displaystyle {#3}\global \setbox \@ne \vbox to\ht \z@ {}\dp \@ne \dp \z@ \setbox \tw@ \box \@ne \@mathmeasure 4\displaystyle {\copy \tw@ #1}\@mathmeasure 6\displaystyle {#3 #2}\dimen@ -\wd 6 \advance \dimen@ \wd 4 \advance \dimen@ \wd \z@ \hbox to\dimen@ {}\mathop {\kern -\dimen@ \box 4\box 6}}
    \makeatother
    
    \begin{document}
    $\sideset{_1^2}{_3^4}{\operatorname{A}}$
    
    \vspace{2em}
    
    $\mysideset{_1^2}{_3^4}{A}$
    
    \vspace{2em}
    
    $\mysideset{_1^2}{_3^4}{\sum}$
    
    \end{document}
    Eigentlich habe ich aus der Orginaldefinition nur das \nolimits entfernt. ACHTUNG: Wie du an der letzten Zeile siehst, funktioniert das jetzt nicht mehr für normale Operatoren!

    Christian.

    [UPD] Herberts Lösung ist besser! Außerdem war er schneller...
    Ubuntu 16.04 -- TeX Live 2015 -- Emacs (AUCTeX, RefTeX)

  8. #8
    Registrierter Benutzer Avatar von localghost
    Registriert seit
    01.11.2006
    Ort
    Braunschweig
    Beiträge
    3.413

    Pakete

    Man kann auch leftidx oder tensor nehmen.


    Thorsten
    TeX und LaTeX, Fragen und Antworten – TeXwelt

    ¹ Es tut mir Leid. Meine Antworten sind begrenzt. Sie müssen die richtigen Fragen stellen.
    ² System: openSUSE 13.1 (Linux 3.11.10), TeX Live 2013, TeXworks 0.5 (r1351)

  9. #9
    Registrierter Benutzer Avatar von voss
    Registriert seit
    10.04.2005
    Beiträge
    5.045
    Zitat Zitat von localghost Beitrag anzeigen
    Man kann auch leftidx oder tensor nehmen.
    man kann auch gar kein Paket nehmen ...
    Code:
    \documentclass{article}
    
    \begin{document}
    
    $\displaystyle{}^1_2A^3_4$
    
    ${}^1_2A^3_4$
    
    \end{document}
    Herbert

  10. #10
    Registrierter Benutzer Avatar von localghost
    Registriert seit
    01.11.2006
    Ort
    Braunschweig
    Beiträge
    3.413

    Kann man

    Zitat Zitat von voss Beitrag anzeigen
    man kann auch gar kein Paket nehmen […]
    Wird aber hässlich.
    Code:
    \documentclass{article}
    \usepackage{tensor}
    
    \begin{document}
      $\displaystyle{}^{10}_2A^{30}_4$
    
      ${}^{10}_2A^{30}_4$
    
      $\tensor*[^{10}_2]{A}{^{30}_4}$
    \end{document}
    TeX und LaTeX, Fragen und Antworten – TeXwelt

    ¹ Es tut mir Leid. Meine Antworten sind begrenzt. Sie müssen die richtigen Fragen stellen.
    ² System: openSUSE 13.1 (Linux 3.11.10), TeX Live 2013, TeXworks 0.5 (r1351)

  11. #11
    Registrierter Benutzer Avatar von voss
    Registriert seit
    10.04.2005
    Beiträge
    5.045
    Zitat Zitat von localghost Beitrag anzeigen
    Wird aber hässlich.
    oder schön ...
    Code:
    \documentclass{article}
    \usepackage{tensor}
    \def\d{\phantom{1}}
    
    \begin{document}
      $\displaystyle{}^{10}_{\d2}A^{30}_4$
    
      ${}^{10}_{\d2}A^{30}_4$
    
      $\tensor*[^{10}_2]{A}{^{30}_4}$
    
    \end{document}
    Herbert

  12. #12
    Registrierter Benutzer
    Registriert seit
    09.02.2005
    Beiträge
    77
    Vielen Dank für eure Lösungsansätze.

    Zitat Zitat von voss Beitrag anzeigen
    oder schön ...
    Code:
    \documentclass{article}
    \usepackage{tensor}
    \def\d{\phantom{1}}
    
    \begin{document}
      $\displaystyle{}^{10}_{\d2}A^{30}_4$
    
      ${}^{10}_{\d2}A^{30}_4$
    
      $\tensor*[^{10}_2]{A}{^{30}_4}$
    
    \end{document}
    Herbert
    Diese Lösung ist ähnlich wie im Paket leftidx. Dort wurde aber offenbar vor allem Wert auf die vertikale Ausrichtung gelegt und \vphantom statt \phantom benutzt. Das sehe ich als klaren Nachteil dieses Paketes an.

    Das Paket tensor scheint das besser zu meistern, es ist aber auch komplizierter, und eigentlich bin ich der Meinung, dass man nicht zu viele Pakete nutzen sollte.

    Möchte man das ganze in einem Makro verwenden und ist nicht klar, was als Sup- und Subindizes auftauchen wird, ist Herberts Lösung (in dieser Form) nicht so flexibel.

    Ich denke, ich werde das Tensor-Paket nutzen.

Lesezeichen

Berechtigungen

  • Neue Themen erstellen: Nein
  • Themen beantworten: Nein
  • Anhänge hochladen: Nein
  • Beiträge bearbeiten: Nein
  •