TABLE OF CONTENTS
::pwtk::pdos_fullplot
SYNOPSIS
proc ::pwtk::pdos_fullplot {args} {
USAGE
pdos_fullplot ?OPTIONS? FILPLOT
PURPOSE
Plot the PDOS(es) of each pdos_atm file into a separate plot of a multiplot.
OPTIONS
For options, see ::pwtk::pdos_multiplot
ARGUMENT
- FILPLOT ... the rootname of projwfc.x 'filplot' files, i.e. FILPLOT.pdos_atm#*(*)_wfc#*(*)
SOURCE
set filplot [lindex $args end] set args [lrange $args 0 end-1] print PDOS_FULLPLOT: # construct a list of lists of LDOS plots set nat 0 foreach f [pdos_atm_files -f $filplot] { # extract atom.# (iat) and angular momentum (l) from the filename regexp {pdos_atm#(\d+)\(\w+\)_wfc#\d+\((\w)\)} $f matchVar iat l lappend l1($iat,$l) $f if { $iat > $nat} { set nat $iat } } for {set iat 1} {$iat <= $nat} {incr iat} { foreach l {s p d f g h} { ifnotempty l1($iat,$l) { foreach x $l1($iat,$l) { switch -exact $l { s { lappend ll [list $x s] } p { lappend ll [list $x pz $x px $x py] } d { lappend ll [list $x dz2 $x dzx $x dzy $x dx2y2 $x dzy] } default { ::pwtk::warning "angular momentum beyond d not supported" } } } } } } pdos_multiplot {*}$args $ll $filplot.fullPDOS }