hzambran / hydroPSO

Model-Independent Particle Swarm Optimisation for Environmental Models
https://cran.r-project.org/package=hydroPSO
GNU General Public License v2.0
36 stars 18 forks source link

How to control digit numbers after the decimal point when writing values for a calibrated parameter? #23

Open WatershedFlow opened 3 years ago

WatershedFlow commented 3 years ago

When I use hydroPSO, I found that I cannot control digit numbers after the decimal point when writing a new value for the calibration parameter. For example, hydroPSO would write one value as 32.045634, while I only want 32.04. How to fix this, Mauricio?

Kangsheng

hzambran commented 3 years ago

Dear Kangsheng,

Thanks for your interest in hydroPSO.

If you are using the 'hydromod' function you might control the amount of decimal digits in the 'ParameterFiles.txt' file, in the 'DecimalPlaces' column. See page 25 in the hydroPSO vignette for SWAT2005 and MODFLOW2005: https://www.rforge.net/hydroPSO/files/hydroPSO_vignette.pdf

Kind regards

Mauricio

https://columbusuniversity.edu/ Mauricio Zambrano-Bigiarini, PhD Associate Professor, Universidad de La Frontera Adjoint Researcher, (CR)2 FONDAP Center Phone: +56 45 259 2812 <+56+45+259+2812> e-mail: mauricio.zambrano@ufrontera.cl [image: webpage] http://hzambran.github.io/ [image: ORCID] https://orcid.org/0000-0002-9536-643X [image: Github] https://github.com/hzambran [image: Linkedin] http://www.linkedin.com/in/hzambran/

=======================================

"Siccome una giornata bene spesa dà lieto dormire,così una vita bene usata dà lieto morire". (Leonardo Da Vinci, 1452-151)

Linux user #454569 -- Linux Mint user

hzambran commented 3 years ago

Dear Kangsheng,

Thanks for your interest in hydroPSO.

If you are using the 'hydromod' function you might control the amount of decimal digits in the 'ParameterFiles.txt' file, in the 'DecimalPlaces' column. See page 25 in the hydroPSO vignette for SWAT2005 and MODFLOW2005.

WatershedFlow commented 3 years ago

I did this as showed the following line (I also attach a file for clarity)

TOPSOIL SCCReek.rvp 54 27 39 2

But, the value is still, such as 20.654709, not 20.65.

Maybe something is wrong. Thanks for your help.

Kangsheng

ParameterNmbr ParameterName Filename Row.NUmber Col.Start Col.End DecimalPlaces 1 TOPSOIL SCCReek.rvp 54 27 39 2 2 FAST_RES SCCReek.rvp 54 54 65 2 3 POROSITY SCCReek.rvp 67 16 29 2 4 HBV_BETA SCCReek.rvp 67 61 71 2 5 BASEF_COEFF1 SCCReek.rvp 68 116 129 2 6 BASEFLOW_N1 SCCReek.rvp 68 134 148 2 7 BASEF_COEFF21 SCCReek.rvp 68 153 169 2 8 STORAGETH1 SCCReek.rvp 68 173 184 2 9 MELT_FACTOR SCCReek.rvp 82 16 25 2 10 MIN_MELT_FACTOR SCCReek.rvp 82 30 39 2 11 DD_MELT_TEMP SCCReek.rvp 82 116 125 2