CGI/Perl Guide | Learning Center | Forums | Advertise | Login
Site Search: in

  Main Index MAIN
INDEX
Search Posts SEARCH
POSTS
Who's Online WHO'S
ONLINE
Log in LOG
IN

Home: Perl Programming Help: Beginner:
Tex2bib question (urgent!)

 



evvp
New User

May 28, 2010, 6:42 AM

Post #1 of 1 (1394 views)
Tex2bib question (urgent!) Can't Post

I am writing my dissertation and require to fetch \bibitems from a Tex file and convert them to BibTex entries. I'm trying to use the tex2bib Perl script and it does not seem to recognize the entries.
The command I use is:

perl tex2bib.pl -i bibitems.tex -o bibtexEntries.tex

And the result is:

items has 0 items
0 items processed

Any help as to why this code does not recognize the entries will be greatly appreciated!

Following is the tex2bib.pl script:

Code
#! /usr/local/bin/perl  

$Script = 'tex2bib';
$Version=0.97; # 22 Feb 2006 10:50:35
$Author='Michael Friendly (friendly@yorku.ca)';

# Copyright (c) 1997 Michael Friendly
#
# License:
# This is free software subject to copyright, released according to the
# BSD style license. It may be freely used, modified and distributed.
# See: http://www.ctan.org/tex-archive/help/Catalogue/licenses.bsd.html
# for details and further information.

# tex2bib
# Input a TeX document containing \bibitems, translate these
# to BibTeX format
#
# Usage:
# tex2bib [-k][-i infile] [-o outfile]
# -k: regenerate keys
# if infile not given, reads from stdin
# if outfile not given, prints to stdout

# The entire tex document is scanned for \bibitems, ending when
# the string '\end{thebibliography}' is read.

# Assumes that bibitems are formatted as follows:
# -- {key}author(s), (date) at the beginning
# -- titles of books or names of journals: {\em title}
# -- article titles: after date, `` '' quotes optional
# -- volume, pages: {\it vol}, nnn-nnn.
# -- publisher/address: address:publisher
#
# All text in the bibitem which cannot be parsed is included
# in a note = { } field
#
# Changes
# 0.96 1998/06/22 Allow \bibitem keys to contain [\w:-]
# 0.97 2006/02/21 Added BSD license
#################################################################
# Examples of a book, article, inproceedings:

#\bibitem{Bertin83}Bertin, J. (1983),
# {\em Semiology of Graphics} (trans. W. Berg). Madison, WI:
# University of Wisconsin Press.
#
#\bibitem{Bickel75}Bickel, P. J., Hammel, J. W. and O'Connell, J. W.
# (1975).
# Sex bias in graduate admissions: data from Berkeley. {\em
# Science}, {\it 187}, 398-403.
#
#\bibitem{Farebrother87}Farebrother, R. W. (1987),
# ``Mechanical representations of the ${L}_1$ and ${L}_2$ estimation
# problems'', In Y. Dodge (ed.) {\em Statistical data analysis
# based on the L1 norm and related methods}, Amsterdam:
# North-Holland., 455-464.


# These are output as:

#@Book{ Bertin:83,
# author = {J. Bertin},
# year = 1983,
# title = {Semiology of Graphics},
# publisher = {University of Wisconsin Press},
# address = {Madison, WI},
# note = {(trans. W. Berg).}
#}
#@Article{ Bickel:75,
# author = {Bickel, P. J. and Hammel, J. W. and O'Connell, J. W.},
# year = 1975,
# title = {Sex Bias in Graduate Admissions: Data from Berkeley},
# journal = {Science},
# volume = 187,
# pages = {398-403}
#}
#@InCollection{ Farebrother:87,
# author = {R. W. Farebrother},
# year = 1987,
# title = {Mechanical Representations of the ${L}_1$ and ${L}_2$ Estimation Problems},
# booktitle = {Statistical Data Analysis Based on the L1 Norm and Related Methods},
# editor = {Y. Dodge},
# publisher = {North-Holland},
# address = {Amsterdam},
# pages = {455-464}

# Text in a bibitem is removed from the bibitem as it is assigned to
# bibtex fields. Any text remaining is assigned to a note={ } field
# at the end. Since the parsing is heuristic, some manual fixup work
# can be expected at the end.

#################################################################

require 'getopt.pl' ;

Getopt("oikdrt:"); # ARGV now contains [inputfile] and
# $opt_o, $opt_i might be set.

$default_type = $opt_t || 'Article';

open(STDIN, "<$opt_i") or die "-i $opt_i: can't open.\n" if $opt_i ;
open(STDOUT, ">$opt_o") or die "-o $opt_o: can't create.\n" if $opt_o ;

####################### Process input files ####################
$bibs=0;
while (<>)
{
/^\s*\\end\{thebibliography/ && last;
if (/\\bibitem\s*\{([\w\d:-]+)\}/) {
$bibs++;
$key = $1;
# print STDERR "$bibs key: $key\n";
}
# skip if we're still reading tex text (no bibitems encountered)
next unless $bibs;
chomp;
s/^\s*/ /;
$lines .= $_;
}

# All lines containing \bibitems have been read into the $lines string.
# Now, split into separate items

@items = split(/\\bibitem\s*/, $lines);
print STDERR "items has ", scalar(@items), " items\n";

@months = qw(january february march april may jun july august september
october november december);
$month_pat = join('|', @months);

foreach (@months) {
$month_abbrv{$_} = substr($_, 0,3);
}

$ordinal = 'first|second|third|fourth|1st\.?|2nd\.?|3rd\.?|4th\.?';

# title words to ignore for casing;
foreach ( qw(a about an and by for from in of on the to von with) ) {
$ignore_case{$_} = 1;
}

$outitems =0;
%keys_seen = {};

foreach $i (0..$#items) {
undef $title;
undef $pages;
undef $journal;
undef $volume;
undef $number;
undef $booktitle;
undef $editor;
undef $edition;
undef $month;
undef $publisher;
undef $address;
undef $chapter;
undef $rest;

print "$items[$i]\n" if $opt_d;
# assume each entry starts with
# {key}Author, F.I. etc (date[a-z]?)
# $items[$i] =~ /^\{([^}]+)\}([^\(]*)\((\d{4})[a-z]?\)[,.]?\s*/;
# ($key, $authors, $date) = ($1, $2, $3);
$items[$i] =~ /^\{([^}]+)\}\s*/;
$key = $1;
# print "key: $key\n";
$rest = $';

$rest =~ /\((\d{4})[a-z]?\)[,.]?\s*/ &&
do {
$authors = $`;
$date = $1;
$rest = $';
};

unless (defined($key)) {
print STDERR "Skipping: $authors, $date in \n$items[$i]\n";
next;
}


$rest =~ s/^[,]?\s+//;
$rest =~ s/\s+$//;

# print "key: $key\n";
# $key =~ m/(['A-Za-z]+)([^:]*)/ &&
# do { $key = "$1:$2"; };
# print "key: $key\n";

&parse_authors;

$orig_key = $key;
$key = &generate_key if $opt_k or $keys_seen{$key};

# if the $key has already been seen, make a new, unique one
if ($keys_seen{$key}) {
foreach $suffix (('b'..'z')) {
$try = $key . $suffix;
# print STDERR "Seen $key ... trying $try\n";
unless ($keys_seen{$try}) {$key = $try; last; };
}
print STDERR "New unique key generated: $key (was $orig_key)\n"
unless $key eq $orig_key;
}
$keys_seen{$key}++;

# assume it's an article at first
$type = '@' . $default_type;

if ($rest =~ /^\{\\em\s+/) {
#tech report or book
$type = '@Book';
$rest =~ m/^\{\\em\s+(['\w ,?:]+)\}[, ]*/;
$title = $1;
$rest = $';
&parse_edition;
&parse_publish;

$rest =~ m/\sreport(s?)[,]?\s*/i &&
do {
$type ='@TechReport';
$rest = $` . $';
&parse_report_number;
};
}

else {
#does it begin with quoted title?
if ($rest =~ /^``/){
$rest =~ m/^``([^`]+)''[, ]*/;
$title = $1;
$rest = $';
}
else {
$rest =~ m#^(['\{\}\w\d,\(\)\\ :\?/-]+)[ ]*#;
$title = $1;
$rest = $';
}
$rest =~ s/^[,\s]+//;

if ($rest =~ /^\{\\em\s+/) {
$rest =~ m/^\{\\em\s+([\w\\& ,'-?]+)\}[, ]*/;
$journal = $1;
$rest = $';
}
# parse {\it volume (number)}
&parse_volume;

$rest =~ m/,?\s*(\d{1,4}--?\d{1,4})[,]?\s*/ &&
do {
$pages = $1;
$rest = $`. $';
$pages =~ s/(\d)-(\d)/$1--$2/;
};

$rest =~ m/\(($month_pat)\)/i &&
do {
($month = $1) =~ tr/A-Z/a-z/;
$month = $month_abbrv{$month};
$rest = $` . $';
};

$rest =~ m/(technical|tech\.)\s+report[,.]?/i &&
do {
$type ='@TechReport';
$rest = $` . $';
&parse_report_number;
};

$rest =~ m/^In\s+/i &&
do {
$rest = $';
$type ='@InCollection'; # maybe, proceedings
$rest =~ m/\{\\em\s+([\w ,':!?]+)\}[, ]*/ &&
do {
$booktitle = $1;
$rest = $` . $';
$type = '@InProceedings' if $booktitle =~ m/proceedings/i;
};
$rest =~ m/([\w., ]+)\s+\(eds?\.\)[,.]?\s*/i &&
do {
$editor = $1;
$rest = $` . $';
};
$rest =~ m/Chapter\s+(\d+)[,]?\s*/i &&
do {
$chapter = $1;
$rest = $` . $';
};

&parse_edition;
&parse_publish;
};

$rest =~ m/proceedings/i &&
do {
$type = '@InProceedings';
# print "$items[$i]\n";
};
}

$rest =~ s/^\s+//;
$rest =~ s/$date([,]?)//;

$title = &case_title($title);
$booktitle = &case_title($booktitle) if $booktitle;

print "$type\{$key";
print ",\n author\t= {$authors}";
print ",\n year\t= $date";
print ",\n title\t= {$title}" if $title;
print ",\n booktitle\t= {$booktitle}" if $booktitle;
print ",\n edition\t= {$edition}" if $edition;
print ",\n editor\t= {$editor}" if $editor;
print ",\n publisher\t= {$publisher}" if $publisher;
print ",\n address\t= {$address}" if $address;
print ",\n journal\t= {$journal}" if $journal;
print ",\n volume\t= $volume" if $volume;
print ",\n month\t= $month" if $month;
print ",\n number\t= $number" if $number;
print ",\n pages\t= {$pages}" if $pages;
print ",\n chapter\t= {$chapter}" if $chapter;
print ",\n note\t= {$rest}" if $rest;
print "\n\}\n";
$outitems++;
}
print STDERR "$outitems items processed\n";
exit;

########################### subroutines #############################

# separate multiple authors with 'and'
sub parse_authors {
# fix authors field
$authors =~ s/\s+$//;
$authors =~ s/\\&/and/;
$authors =~ s/([A-Z])\.([A-Z])\./$1. $2./g;
$authors =~ s/ ([A-Z])\.,\s+(?!Jr.)/ $1. and /g;
$authors =~ s/ and and / and /;
# $authors =~ s/Friendly, M./Friendly, Michael/;
$authors =~ s/M. Friendly/Friendly, M./;
local($commas) = ($authors =~ tr/,/,/);
if ($opt_r && $commas == 1) {
@auth = split(/, /, $authors);
$authors = join(' ',reverse(@auth));
}

}

# extract last names of authors into @auth array
sub split_authors {
@auth = split(/ and /, $authors);
@auth =~ grep(s/, .*$//g,@auth); # strip trailing initials
@auth =~ grep(s/^([A-Z]\.\s*)+//g,@auth);
# @auth =~ grep(s/^[a-z ]+//,@auth); # strip any name prefixes

foreach $i (0..$#auth) {
@n = split(/ /, $auth[$i]);
$auth[$i] = pop(@n); # strip anything before lastname
$auth[$i] =~ s/[^\w]//g; # remove non-word chars
}

# print STDERR "Authors: $authors --> ",
join('|',@auth),"\n" if scalar(@auth) > 1;

}

sub parse_volume {
$rest =~ m/,?\s*\{\\it\s+([A-Za-z \d()]+)\s*\}[,]?/ &&
do {
$volume = $1;
$rest = $`. $';
$volume =~ m/\(([ \w]+)\)/ &&
do {
$volume = $`;
$number = $1;
};
$volume = "{$volume}" unless $volume =~ m/^\d*$/;
$number = "\{$number\}" unless $number =~ m/^\d*$/;
};

}

# find publisher and address in book/inproceedings items
# assume the format is address:publisher
sub parse_publish {
local($before, $after);
$rest =~ m#:\s*([\w-\\/& ]+)[]?# &&
do {
$publisher = $1;
($before, $after) = ($`, $');
$before =~ m/([\w, ]+)$/ &&
do {
$address = $1;
$before = $`;
$address =~ s/^\s+//;
};
$rest = $before . $after;
};
}

sub parse_report_number {
$rest =~ m/\s*(no\.|number)\s+(\d+)[,.]?\s*/i &&
do {
$number = $2;
$rest = $` . $';
}
}

sub parse_edition {
$rest =~ m/\(?($ordinal).*(edition|ed\.)\)?\.?\s*/i &&
do {
$edition = $1;
$rest = $` . $';
}
}

# Initial-caps for all non-ignored words
sub case_title {
local($t) = @_;
local(@words) = split(/\s+/, $t);
local($w) =0;
local($colon);
foreach (@words) {
$w++;
next if /^[A-Z]/;
unless ($colon) {next if $ignore_case{$_}};
s/^([a-z])/\u$1/;
$colon = tr/:/:/;
}
join(' ', @words);
}

sub generate_key {
local($yr, $key);
($yr = $date) =~ s/^1\d//;
&split_authors;
if (scalar(@auth) < 3) {
$key = join('', @auth, ':', $yr);
}
else {
$key = join('', $auth[0], '-etal:', $yr);
}
# print STDERR "New key: $key (", join('|', @auth), ": $date)\n";
$key;
}



And the bibitems.tex file is:

Code
\begin{thebibliography}{16} \expandafter\ifx\csname 
natexlab\endcsname\relax\def\natexlab#1{#1}\fi
\expandafter\ifx\csname bibnamefont\endcsname\relax
\def\bibnamefont#1{#1}\fi \expandafter\ifx\csname
bibfnamefont\endcsname\relax \def\bibfnamefont#1{#1}\fi
\expandafter\ifx\csname citenamefont\endcsname\relax
\def\citenamefont#1{#1}\fi \expandafter\ifx\csname
url\endcsname\relax \def\url#1{\texttt{#1}}\fi
\expandafter\ifx\csname urlprefix\endcsname\relax\def\urlprefix{URL
}\fi \providecommand{\bibinfo}[2]{#2}
\providecommand{\eprint}[2][]{\url{#2}}

\bibitem[{\citenamefont{Kouwenhoven
et~al.}(2001)\citenamefont{Kouwenhoven, Austing, and
Tarucha}}]{Kouwen_Austing_Tarucha}
\bibinfo{author}{\bibfnamefont{L.~P.} \bibnamefont{Kouwenhoven}},
\bibinfo{author}{\bibfnamefont{D.~G.} \bibnamefont{Austing}},
\bibnamefont{and}
\bibinfo{author}{\bibfnamefont{S.}~\bibnamefont{Tarucha}},
\bibinfo{journal}{Rep. Prog. Phys.} \textbf{\bibinfo{volume}{64}},
\bibinfo{pages}{701} (\bibinfo{year}{2001}).

\bibitem[{\citenamefont{Ashoori}(1996)}]{ashoori96:_elect_in_artif_atoms}
\bibinfo{author}{\bibfnamefont{R.~C.} \bibnamefont{Ashoori}},
\bibinfo{journal}{Nature} \textbf{\bibinfo{volume}{379}},
\bibinfo{pages}{413} (\bibinfo{year}{1996}).

\bibitem[{\citenamefont{Beenakker}(1991)}]{beenak91:coulom.block}
\bibinfo{author}{\bibfnamefont{C.~W.~J.} \bibnamefont{Beenakker}},
\bibinfo{journal}{Phys.\ Rev.\ B} \textbf{\bibinfo{volume}{44}},
\bibinfo{pages}{1646} (\bibinfo{year}{1991}).

\bibitem[{\citenamefont{Jacobini and Lugli}(1989)}]{Jacobini_MC}
\bibinfo{author}{\bibfnamefont{C.}~\bibnamefont{Jacobini}}
\bibnamefont{and}
\bibinfo{author}{\bibfnamefont{P.}~\bibnamefont{Lugli}},
\emph{\bibinfo{title}{The Monte Carlo Method for Semiconductor
Device Simulations}} (\bibinfo{publisher}{Springer-Verlag},
\bibinfo{address}{New York}, \bibinfo{year}{1989}).

\bibitem[{\citenamefont{Shah}(1992)}]{Shah}
\bibinfo{author}{\bibfnamefont{J.}~\bibnamefont{Shah}},
\emph{\bibinfo{title}{Hot Carriers in Semiconductor Nanostructures:
Physics and Applications}} (\bibinfo{publisher}{Academic Press
inc.}, \bibinfo{address}{Boston}, \bibinfo{year}{1992}).

\bibitem[{\citenamefont{Sch\"oll}(1998)}]{Scholl}
\bibinfo{author}{\bibfnamefont{E.}~\bibnamefont{Sch\"oll}},
\emph{\bibinfo{title}{Theory of Transport Properties of
Semiconductor Nanostructures}} (\bibinfo{publisher}{Chapman and
Hall}, \bibinfo{address}{London}, \bibinfo{year}{1998}).

\bibitem[{\citenamefont{Blum}(1996)}]{Blum_DMT}
\bibinfo{author}{\bibfnamefont{K.}~\bibnamefont{Blum}},
\emph{\bibinfo{title}{Density Matrix Theory and Applications}}
(\bibinfo{publisher}{Springer}, \bibinfo{address}{New York},
\bibinfo{year}{1996}).

\bibitem[{\citenamefont{Rogge
et~al.}(2005{\natexlab{a}})\citenamefont{Rogge, Harke, Fricke,
Hohls, Reinwald, Wegscheider, and Haug}}]{rogge-2005-72}
\bibinfo{author}{\bibfnamefont{M.~C.} \bibnamefont{Rogge}},
\bibinfo{author}{\bibfnamefont{B.}~\bibnamefont{Harke}},
\bibinfo{author}{\bibfnamefont{C.}~\bibnamefont{Fricke}},
\bibinfo{author}{\bibfnamefont{F.}~\bibnamefont{Hohls}},
\bibinfo{author}{\bibfnamefont{M.}~\bibnamefont{Reinwald}},
\bibinfo{author}{\bibfnamefont{W.}~\bibnamefont{Wegscheider}},
\bibnamefont{and} \bibinfo{author}{\bibfnamefont{R.~J.}
\bibnamefont{Haug}}, \bibinfo{journal}{Physical Review B}
\textbf{\bibinfo{volume}{72}}, \bibinfo{pages}{233402}
(\bibinfo{year}{2005}{\natexlab{a}}).

\bibitem[{\citenamefont{Rogge
et~al.}(2005{\natexlab{b}})\citenamefont{Rogge, Cavaliere,
Sassetti, Haug, and Kramer}}]{rogge-2005-NDC}
\bibinfo{author}{\bibfnamefont{M.~C.} \bibnamefont{Rogge}},
\bibinfo{author}{\bibfnamefont{F.}~\bibnamefont{Cavaliere}},
\bibinfo{author}{\bibfnamefont{M.}~\bibnamefont{Sassetti}},
\bibinfo{author}{\bibfnamefont{R.~J.} \bibnamefont{Haug}},
\bibnamefont{and}
\bibinfo{author}{\bibfnamefont{B.}~\bibnamefont{Kramer}}
(\bibinfo{year}{2005}{\natexlab{b}}), \eprint{cond-mat/0507036}.

\bibitem[{\citenamefont{Cavaliere
et~al.}(2004)\citenamefont{Cavaliere, Braggio, Stockburger,
Sassetti, and Kramer}}]{cavaliere04:_negat_differ_conduc}
\bibinfo{author}{\bibfnamefont{F.}~\bibnamefont{Cavaliere}},
\bibinfo{author}{\bibfnamefont{A.}~\bibnamefont{Braggio}},
\bibinfo{author}{\bibfnamefont{J.~T.} \bibnamefont{Stockburger}},
\bibinfo{author}{\bibfnamefont{M.}~\bibnamefont{Sassetti}},
\bibnamefont{and}
\bibinfo{author}{\bibfnamefont{B.}~\bibnamefont{Kramer}},
\bibinfo{journal}{Phys.\ Rev.\ Lett.} \textbf{\bibinfo{volume}{93}},
\bibinfo{pages}{036803} (\bibinfo{year}{2004}).

\bibitem[{\citenamefont{Hettler et~al.}(2002)\citenamefont{Hettler,
Schoeller, and Wenzel}}]{hettler02:_non_linear_trans}
\bibinfo{author}{\bibfnamefont{M.~H.} \bibnamefont{Hettler}},
\bibinfo{author}{\bibfnamefont{H.}~\bibnamefont{Schoeller}},
\bibnamefont{and}
\bibinfo{author}{\bibfnamefont{W.}~\bibnamefont{Wenzel}},
\bibinfo{journal}{Europhys.\ Lett.} \textbf{\bibinfo{volume}{57}},
\bibinfo{pages}{571} (\bibinfo{year}{2002}).

\bibitem[{\citenamefont{Thielmann
et~al.}(2005)\citenamefont{Thielmann, Hettler, Konig, and
Schon}}]{thielmann-2005-71}
\bibinfo{author}{\bibfnamefont{A.}~\bibnamefont{Thielmann}},
\bibinfo{author}{\bibfnamefont{M.~H.} \bibnamefont{Hettler}},
\bibinfo{author}{\bibfnamefont{J.}~\bibnamefont{Konig}},
\bibnamefont{and}
\bibinfo{author}{\bibfnamefont{G.}~\bibnamefont{Schon}},
\bibinfo{journal}{Phys.\ Rev.\ B} \textbf{\bibinfo{volume}{71}},
\bibinfo{pages}{045341} (\bibinfo{year}{2005}).

\bibitem[{\citenamefont{Jacak et~al.}(1998)\citenamefont{Jacak,
Hawrylak, and W\'ojs}}]{Qdots}
\bibinfo{author}{\bibfnamefont{L.}~\bibnamefont{Jacak}},
\bibinfo{author}{\bibfnamefont{P.}~\bibnamefont{Hawrylak}},
\bibnamefont{and}
\bibinfo{author}{\bibfnamefont{A.}~\bibnamefont{W\'ojs}},
\emph{\bibinfo{title}{Quantum dots}}
(\bibinfo{publisher}{Springer-Verlag}, \bibinfo{address}{Berlin},
\bibinfo{year}{1998}).

\bibitem[{\citenamefont{Weis et~al.}(1993)\citenamefont{Weis, Haug,
v.~Klitzing, and Ploog}}]{weis93:compet.chann.singl}
\bibinfo{author}{\bibfnamefont{J.}~\bibnamefont{Weis}},
\bibinfo{author}{\bibfnamefont{R.~J.} \bibnamefont{Haug}},
\bibinfo{author}{\bibfnamefont{K.}~\bibnamefont{v.~Klitzing}},
\bibnamefont{and}
\bibinfo{author}{\bibfnamefont{K.}~\bibnamefont{Ploog}},
\bibinfo{journal}{Phys.\ Rev.\ Lett.} \textbf{\bibinfo{volume}{71}},
\bibinfo{pages}{4019} (\bibinfo{year}{1993}).

\bibitem[{\citenamefont{Redfield}(1957)\citenamefont{Redfield}}]{redfield-1957}
\bibinfo{author}{\bibfnamefont{A.G.}~\bibnamefont{Redfield}},
\bibinfo{journal}{IBM J. Res. Dev.} \textbf{\bibinfo{volume}{1}},
\bibinfo{pages}{19} (\bibinfo{year}{1957}).


\bibitem[{\citenamefont{Toutounji}(2005)\citenamefont{Toutounji}}]{toutounji-2005}
\bibinfo{author}{\bibfnamefont{M.}~\bibnamefont{Toutounji}},
\bibinfo{journal}{J.\ Chem.\ Phys.} \textbf{\bibinfo{volume}{123}},
\bibinfo{pages}{244102} (\bibinfo{year}{2005}).

\bibitem[{\citenamefont{Vaz}(2006)}]{vaz06:_quant_statis}
\bibinfo{author}{\bibfnamefont{E.~V.} \bibnamefont{Vaz}}, Master's
thesis, \bibinfo{school}{Dalhousie University}
(\bibinfo{year}{2006}).

\bibitem[{\citenamefont{Meir and
Wingreen}(1992)}]{meir92:landauer.formul.curren}
\bibinfo{author}{\bibfnamefont{Y.}~\bibnamefont{Meir}}
\bibnamefont{and} \bibinfo{author}{\bibfnamefont{N.~S.}
\bibnamefont{Wingreen}}, \bibinfo{journal}{Phys.\ Rev.\ Lett.}
\textbf{\bibinfo{volume}{68}}, \bibinfo{pages}{2512}
(\bibinfo{year}{1992}).

\bibitem[{\citenamefont{Thielmann
et~al.}(2003)\citenamefont{Thielmann, Hettler, Konig, and
Schon}}]{thielmann-2003-68}
\bibinfo{author}{\bibfnamefont{A.}~\bibnamefont{Thielmann}},
\bibinfo{author}{\bibfnamefont{M.~H.} \bibnamefont{Hettler}},
\bibinfo{author}{\bibfnamefont{J.}~\bibnamefont{Konig}},
\bibnamefont{and}
\bibinfo{author}{\bibfnamefont{G.}~\bibnamefont{Schon}},
\bibinfo{journal}{Phys.\ Rev.\ B} \textbf{\bibinfo{volume}{68}},
\bibinfo{pages}{115105} (\bibinfo{year}{2003}).


\end{thebibliography}


 
 


Search for (options) Powered by Gossamer Forum v.1.2.0

Web Applications & Managed Hosting Powered by Gossamer Threads
Visit our Mailing List Archives