Variablen-Indizes in Matheumgebung Thema ist als GELÖST markiert

Tabellen und Grafiken erstellen und anordnen


goingeast

Variablen-Indizes in Matheumgebung

Beitrag von goingeast »

Hallo,
ich habe eine Frage zu der Mathe-Umgebung. Und zwar möchte ich links von einer Variable sowohl oben, als auch unten indizes einfügen. Nun sind die Indizes aber sehr unterschiedlich lang, nämlich einmal {LVLH} und {I}. Bei dem Befehl ^I_{LVLH}a werden die Indizes links ausgerichtet.

Meine Frage: Wie kann ich die Indizes rechts ausrichten?

Herzlichen Dank.

DonCube
Forum-Guru
Forum-Guru
Beiträge: 291
Registriert: So 29. Jun 2008, 21:17
Wohnort: Bocholt

Beitrag von DonCube »

Hmmm deine Frage kann ich noch niht ganz nachvollziehen. Könntest du ein Minimalbeispiel posten? Hast du dir genau überlegt was du da machen willst und ob es den Mehraufwand lohnt? Oder ist das eine Vorgabe?

Gruß
DonCube
Schau mal hier rein goLaTeX-Wiki, und gaaaanz wichtig Minimalbeispiel

goingeast

Beitrag von goingeast »

also, das Beispiel ist im prinzip der Befehl:

\[
^I_{LVLH}a
\]

Ich möchte, dass das "I" ganz an "a" herangerückt wird, und nicht links über dem "L" steht. Ist eine in der Robotik übliche Schreibweise. Brauche es für meine Diplomarbeit.

Danke!

Benutzeravatar
KOMA
TeX-Entwickler
TeX-Entwickler
Beiträge: 2958
Registriert: Fr 4. Jul 2008, 17:28
Kontaktdaten:

Beitrag von KOMA »

Ich gehe mal davon aus, dass Du wirklich alles im Mathemodus setzen willst:
\documentclass{article}
\usepackage{amsmath}
\newlength{\sublength}
\newlength{\suplength}
\newcommand\lsubsup[2]{%
  \settowidth{\sublength}{$#1$}%
  \settowidth{\suplength}{$#2$}%
  _{\text{%
      \ifdim \sublength<\suplength 
        \hphantom{$#2$}\llap{$#1$}%
      \else
        $#1$%
      \fi
    }%
  }%
  ^{\text{%
      \ifdim \suplength<\sublength
        \hphantom{$#1$}\llap{$#2$}%
      \else
        $#2$%
      \fi
    }%
  }%
}
\begin{document}
\[
\lsubsup{LVLH}Ia
\]
\end{document}
Sollen hingegen »LVLH« und »I« gar nicht als Variablen kursiv, sondern eher als Text aufrecht gesetzt werden, dann sind die Dollarzeichen allesamt zu entfernen! Die beiden Längen werden übrigens tatsächlich nur als Vergleichsgrößen verwendet. Dabei wird davon ausgegangen, dass wenn das eine Argument in einer Schriftgröße länger als das andere ist, dies auch in einer anderen Schriftgröße noch der Fall ist. Das ist zwar nicht zwingend, dürfte aber in hinreichend vielen Fällen ausreichend gute Ergebnisse liefern.

goingeast

Danke

Beitrag von goingeast »

Hey,
vielen Dank dir! Funktioniert sehr gut!

Mit den Variablen in Textform hast du es richtig erraten.

mache es einfach wie folgt:

\[
\lsubsup{\text{LVLH}}{\text{I}}a
\]

Beste Grüße!

Benutzeravatar
KOMA
TeX-Entwickler
TeX-Entwickler
Beiträge: 2958
Registriert: Fr 4. Jul 2008, 17:28
Kontaktdaten:

Beitrag von KOMA »

Nicht doch so umständlich. Mach einfach, was ich gesagt habe und entferne die $:
\documentclass{article} 
\usepackage{amsmath} 
\newlength{\sublength} 
\newlength{\suplength} 
\newcommand\lsubsup[2]{% 
  \settowidth{\sublength}{#1}% 
  \settowidth{\suplength}{#2}% 
  _{\text{% 
      \ifdim \sublength<\suplength 
        \hphantom{#2}\llap{#1}% 
      \else 
        #1%
      \fi 
    }% 
  }% 
  ^{\text{% 
      \ifdim \suplength<\sublength 
        \hphantom{#1}\llap{#2}% 
      \else 
        #2%
      \fi 
    }% 
  }% 
} 
\begin{document} 
\[ 
\lsubsup{LVLH}Ia 
\] 
\end{document}

Arne
Forum-Newbie
Forum-Newbie
Beiträge: 1
Registriert: Di 10. Nov 2009, 15:33

Beitrag von Arne »

Zunächst einmal auch von mir noch einmal vielen Dank für das Posten dieser Lösung, sie ist auch für mich sehr nützlich.

Allerdings stört mich noch, dass bei Verwendung von kursiven Symbolen der obere Index nur am unteren Index ausgerichtet ist und nicht noch näher am Symbol steht und das in einer Formel kein Abstand zum vorherigen Symbol gesetzt wir, so dass man nicht erkennt, zu welchem Symbol der Index gehört (s. Beispiel 1).

Gleiches Problem habe ich, wenn ich versuche einen einzelnen Index links oben vom Symbol zu setzen. Hier entsteht komplett der Eindruck, der Index gehöre zum vorherigen Symbol (s. Beispiel 2).

Ich habe schon versucht, den Abstand zu verkleinern, aber "Lösungen" (wahrscheinlich eher "Basteleien") mit z.B. \! gefallen mir nicht, weil sie keine Rücksicht auf das Bezugssymbol nehmen und sich die Buchstaben u.U. berühren.
Eine saubere Lösung habe ich bisher selber nicht gefunden, deswegen meine Frage ans Forum, kann mir da jemand weiterhelfen/einen Tipp geben?

Meine Beispiele:
\documentclass{article}
\usepackage{amsmath}
\usepackage{bm}
\newlength{\sublength}
\newlength{\suplength}
\newcommand\lsubsup[2]{%
  \settowidth{\sublength}{#1}%
  \settowidth{\suplength}{#2}%
  _{\text{%
      \ifdim \sublength<\suplength
        \hphantom{#2}\llap{#1}%
      \else
        #1%
      \fi
    }%
  }%
  ^{\text{%
      \ifdim \suplength<\sublength
        \hphantom{#1}\llap{#2}%
      \else
        #2%
      \fi
    }%
  }%
}

\newcommand{\swrt}[1]{%
	^{\textrm{#1}} {\bm s}
}
			
			
\begin{document}
	%Erstes Beispiel
	\[
		\lsubsup{C}{T} \bm s
	\]
	
	%Zweites Beispiel
	\[
		\swrt{T}
	\]
\end{document}

Antworten