Mercurial > hg > octave-lyh
view liboctave/cruft/dassl/ddanrm.f @ 16499:facf00ce97d3
gui: configurable synchronization between file browser and octave directory
* default-qt-settings: all settings of the file browser are now located
in its section, new setting sync_octave_directory
* files-dock-widget.cc(constructor): make QToolBar and QAction variables local,
add two buttons for syncing from octave to file browser and vice versa,
change status-tips into tool-tips
* files-dock-widget.cc(set_current_directory):
do not emit signal displayed_directory_changed (would change octave dir)
* files-dock-widget.cc(do_sync_octave_directory): new function for manually
setting the octave dir to the one in the file browser
* files-dock-widget.cc(do_sync_browser_directory): new function for manually
setting the file browser to the octave directory
* files-dock-widget.cc(update_octave_directory): new function called from the
main-window when the octave directory has changed
* files-doc-widget.cc(display_directory): new second parameter (bool, default is
true) determining whether the signal with the new displayed directory should
be emitted if synchronizing is enabled
* files-dock-widget.cc(notice-settings): read new setting, enalbe or disable the
sync buttons and set file browser to octave directory depending on setting
* files-dock-widget.h: removed QToolBar and QAction variibles, new varaibles for
storing the actual octave directory and whether syncing is desired or not, new
functions (do_sync_octave_directory, do_sync_browser_directory,
update_octave_directory), function display_directory with second parameter
(bool, default true)
* libgui/src/icons/ok.png,libgui/src/icons/reload.png: new icons for the toolbar
* main-window.cc(change_directory): call new function update_octave_directory
instead of display_directory
* main-window.cc(construct-window-menu): rename "Current Directory" into
"File Browser"
* libgui/src/module.mk: new files icons/ok.png and icons/reload.png
* settings-dialog.cc(constructor,write_changed_settings): all files-dock-widgets
settings in a section, new setting sync_octave_directory
* settings-dialog.ui: new setting sync_octave_directory
author | Torsten <ttl@justmail.de> |
---|---|
date | Thu, 11 Apr 2013 19:01:55 +0200 |
parents | 648dabbb4c6b |
children |
line wrap: on
line source
DOUBLE PRECISION FUNCTION DDANRM (NEQ, V, WT, RPAR, IPAR) C***BEGIN PROLOGUE DDANRM C***SUBSIDIARY C***PURPOSE Compute vector norm for DDASSL. C***LIBRARY SLATEC (DASSL) C***TYPE DOUBLE PRECISION (SDANRM-S, DDANRM-D) C***AUTHOR PETZOLD, LINDA R., (LLNL) C***DESCRIPTION C----------------------------------------------------------------------- C THIS FUNCTION ROUTINE COMPUTES THE WEIGHTED C ROOT-MEAN-SQUARE NORM OF THE VECTOR OF LENGTH C NEQ CONTAINED IN THE ARRAY V,WITH WEIGHTS C CONTAINED IN THE ARRAY WT OF LENGTH NEQ. C DDANRM=SQRT((1/NEQ)*SUM(V(I)/WT(I))**2) C----------------------------------------------------------------------- C***ROUTINES CALLED (NONE) C***REVISION HISTORY (YYMMDD) C 830315 DATE WRITTEN C 901009 Finished conversion to SLATEC 4.0 format (F.N.Fritsch) C 901019 Merged changes made by C. Ulrich with SLATEC 4.0 format. C 901026 Added explicit declarations for all variables and minor C cosmetic changes to prologue. (FNF) C***END PROLOGUE DDANRM C INTEGER NEQ, IPAR(*) DOUBLE PRECISION V(NEQ), WT(NEQ), RPAR(*) C INTEGER I DOUBLE PRECISION SUM, VMAX C C***FIRST EXECUTABLE STATEMENT DDANRM DDANRM = 0.0D0 VMAX = 0.0D0 DO 10 I = 1,NEQ IF(ABS(V(I)/WT(I)) .GT. VMAX) VMAX = ABS(V(I)/WT(I)) 10 CONTINUE IF(VMAX .LE. 0.0D0) GO TO 30 SUM = 0.0D0 DO 20 I = 1,NEQ 20 SUM = SUM + ((V(I)/WT(I))/VMAX)**2 DDANRM = VMAX*SQRT(SUM/NEQ) 30 CONTINUE RETURN C------END OF FUNCTION DDANRM------ END