Anzeige:
Ergebnis 1 bis 11 von 11

Thema: Tensor Symbol

  1. #1
    Registrierter Benutzer
    Registriert seit
    25.07.2007
    Beiträge
    11

    Tensor Symbol

    Hallo

    Ich bin auf der Suche nach einem Symbol für einen Tensor (Rang 2). Würde gerne eine Art \harpoon symbol verwenden, welches auf beiden Seiten (links, rechts) nach oben gebogen sind.

    Wenn jemand den Befehl kennt, solch ein Symbol in Latex einzubinden, schreibt mir bitte.

    Falls jemand ein anderes Symbol verwenden würde, helft mir bitte weiter.

    Habe bis jetzt leider nichts gefunden außer: \overleftrightarrow, der irgendwie nicht gut aussieht in diesem Zusammenhang.

    DANKE,
    Willi

  2. #2
    Registrierter Benutzer Avatar von Stefan_K
    Registriert seit
    05.04.2007
    Ort
    Hamburg
    Beiträge
    3.534

    LaTeX Symbole

    Hallo Willi,

    hast Du schon in der großen LaTeX Symbolliste geschaut?

    Stefan

  3. #3
    Registrierter Benutzer
    Registriert seit
    25.07.2007
    Beiträge
    11
    Hallo

    Ja die Liste habe ich mir schon angesehen, leider gibt es mein symbol nicht.

    Gibt es eine Möglichkeit die zwei Symbole \overleftharpoon und \overrightharpoon zu einem Symbol zu vereinen (beide werden über eine Zeichenfolge gesetzt)?

    DANKE
    Willi

  4. #4
    Registrierter Benutzer
    Registriert seit
    10.09.2009
    Beiträge
    98
    Da anscheinend keiner eine "saubere" Möglichkeit gibt, probier mal das:

    Code:
    \newcommand{\tensor}[1]{
    	\tikz[baseline, anchor=base]{
    		\node{#1};
    		\node[overlay] {$\overleftharpoon {\phantom{\mbox{#1}}}$};
    		\node[overlay] {$\overrightharpoon{\phantom{\mbox{#1}}}$};
    		}
    	}
    
    
     \tensor{$\sigma$} 
      \tensor{Tensor}
    Vorher noch pgf/tikz in der Preambel einbinden (braucht pdflatex):

    Code:
    \usepackage{tikz}
    Grüße!

  5. #5
    Registrierter Benutzer
    Registriert seit
    25.07.2007
    Beiträge
    11
    Hallo

    Habe mir mal die Def. von \overleftharpoon angesehen und folgendes gefunden:

    \def\leftharpoonfill@{\arrowfill@\leftharpoondown\ relbar\relbar}

    \DeclareRobustCommand{\overleftharpoon}{\mathpalet te{\overarrow@\leftharpoonfill@}

    Leider habe ich nichts über \overarrow@ und \arrowfill@ gefunden. Könnte mir von euch jemand weiterhelfen um diesen Pfeil selber zu gestalten.

    DANKE
    Willi

  6. #6
    Registrierter Benutzer
    Registriert seit
    25.07.2007
    Beiträge
    11
    Zitat Zitat von borose Beitrag anzeigen
    Da anscheinend keiner eine "saubere" Möglichkeit gibt, probier mal das:

    Code:
    \newcommand{\tensor}[1]{
    	\tikz[baseline, anchor=base]{
    		\node{#1};
    		\node[overlay] {$\overleftharpoon {\phantom{\mbox{#1}}}$};
    		\node[overlay] {$\overrightharpoon{\phantom{\mbox{#1}}}$};
    		}
    	}
    
    
     \tensor{$\sigma$} 
      \tensor{Tensor}
    Vorher noch pgf/tikz in der Preambel einbinden (braucht pdflatex):

    Code:
    \usepackage{tikz}
    Grüße!

    Danke für die Antwort, funktioniert gut, nur leider zeigt das \overleftharpoon nach unten, möchte es gerne nach oben zeigen lassen.

  7. #7
    Registrierter Benutzer
    Registriert seit
    10.09.2009
    Beiträge
    98
    Ohh, da hab ich gar nicht drauf geachtet. Aber das ist schon eigenartig. In der "The Comprehensive LATEX Symbol List" ist unter "Table 161: MnSymbol Extensible Accents " das Symbol "\overleftharpoon{abc}" mit knick nach oben dargestellt.

    Weiß jemand warum es aber nach unten gezeichnet wird???

    Zum eigentlichen Problem: Ja, ist einfach lösbar: Spiegel wir doch einfach das richtige Symbol!

    Code:
    \newcommand{\tensor}[1]{
    	\tikz[baseline, anchor=base]{
    		\node{#1};
    		\node[overlay] {$\overrightharpoon {\phantom{\mbox{#1}}}$};
    		\node[overlay] {\reflectbox{$\overrightharpoon{\phantom{\mbox{#1}}}$}};
    		}
    	}
    
    
     \tensor{$\sigma$} 
     \tensor{Tensor}

  8. #8
    Registrierter Benutzer
    Registriert seit
    25.07.2007
    Beiträge
    11
    Daran habe ich auch schon gedacht. Leider wird link/rechts gespiegelt nicht up/down.

    Habe mir mal die Def. von \overleftharpoon angesehen und folgendes gefunden:

    \def\leftharpoonfill@{\arrowfill@\leftharpoondown\ relbar\relbar}

    \DeclareRobustCommand{\overleftharpoon}{\mathpalet te{\overarrow@\leftharpoonfill@}

    Leider habe ich nichts über \overarrow@ und \arrowfill@ gefunden. Könnte mir von euch jemand weiterhelfen um diesen Pfeil selber zu gestalten.

    DANKE
    Willi

  9. #9
    Registrierter Benutzer
    Registriert seit
    10.09.2009
    Beiträge
    98
    Oben genannter Befehl erzeugt doch genau das Gewünschte:

    Über eine Zeichenfolge ein Harpoon-Symbol "welches auf beiden Seiten (links, rechts) nach oben gebogen" ist.

    Ist doch alles okay, oder irre ich mich da???

    Das was bei mir durch den Code erstellt wird, habe ich angehängt. Vielleicht unterscheidet sich das ja.

  10. #10
    Registrierter Benutzer
    Registriert seit
    25.07.2007
    Beiträge
    11
    Hat doch funktioniert, hab noch einmal alles kopiert und mit \tensor{$blabla$} passt alles.

    Leider erzeugt das Symbol einen sehr gorßen Abstand zum umgebenden Text. Ist es vielleicht möglich das Symol so zu definieren wie \overrightharpoon definiert ist:

    Habe mir mal die Def. von \overleftharpoon angesehen und folgendes gefunden:

    \def\leftharpoonfill@{\arrowfill@\leftharpoondown\ relbar\relbar}

    \DeclareRobustCommand{\overleftharpoon}{\mathpalet te{\overarrow@\leftharpoonfill@}

    Leider habe ich nichts über \overarrow@ und \arrowfill@ gefunden. Könnte mir von euch jemand weiterhelfen um diesen Pfeil selber zu gestalten.

    DANKE,
    Willi
    Geändert von schmek (15-10-2009 um 14:57 Uhr)

  11. #11
    Registrierter Benutzer
    Registriert seit
    10.09.2009
    Beiträge
    98
    nun hat der befehl \tensor{abc} exakt die gleiche breite/höhe wie \overrightharpoon{abc}

    Code:
    \newcommand{\tensor}[1]{
         \tikz[baseline, anchor=base,inner sep=0pt]{
    	\node {$\overrightharpoon{\mbox{#1}}$};
    	\node[overlay]
                     {\reflectbox{$\overrightharpoon{\phantom{\mbox{#1}}}$}};
         }
     }
    und wenn \tensor{abc} soviel platz wie {abc} einnehmen soll, dann ist folgendes zu nehmen. mehr kann ich dann auch nicht helfen.

    Code:
    \newcommand{\tensor}[1]{
    	\tikz[baseline, anchor=base,inner sep=0pt]{
    		\node{\phantom{#1}};
    		\node[overlay] {$\overrightharpoon{\mbox{#1}}$};
    		\node[overlay] {\reflectbox{$\overrightharpoon{\phantom{\mbox{#1}}}$}};
      }
    }
    Geändert von borose (15-10-2009 um 15:35 Uhr)

Lesezeichen

Berechtigungen

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