Changing random number generator seed

Topics about the HYSPLIT dispersion model.
Post Reply
Posts: 4
Joined: August 23rd, 2017, 12:08 am
Registered HYSPLIT User: No

Changing random number generator seed

Post by wsr » July 23rd, 2018, 3:32 pm

I have a question about the turbulence calculations in dispersion simulations. In the user guide, I have found no reference to random number generator (RNG) seed modulation, including no option to change or modulate the RNG seed in the turbulence term of the dispersion simulations. I figure I have missed something because I see that the seed is modulated in certain special runs. However, I am interested in running just the normal dispersion concentration simulation with a large number of particles several times while ensuring that each run has a different RNG seed so experiment repetitions are not identical. The only flag, KRAND, determines when random inputs are computed, but not how random numbers are computed viz. the initial seed used, and the seed seems to be fixed and not, e.g., set to another modulated input like clock time.

Please advise as to how I can invoke the Hysplit dispersion model with modulated RNG seeds. It is not encouraging to think about the statistical implications of a fixed RNG seed on problems which compare 2 or more runs with different configuration parameters. Thanks.

Posts: 608
Joined: November 7th, 2012, 3:14 pm
Registered HYSPLIT User: Yes

Re: Changing random number generator seed

Post by ariel.stein » July 30th, 2018, 4:31 pm

Unfortunately, the random number generator seed cannot be changed without recompiling the code.

Posts: 8
Joined: August 15th, 2017, 3:59 pm
Registered HYSPLIT User: No

Re: Changing random number generator seed

Post by christopher.loughner » August 1st, 2018, 3:06 pm

The seed id is set in hymodelc.F with the variable seed_id. seed_id is set to -1 and for MPI and ensemble runs, the seed_id is set to -ABS(job_id+1) and -ABS(ens_id), respectively.

If you edit hymodelc.F, recompile your programs built from hymodelc.F by typing "make program_name" in the exec directory (i.e., make hycs_std for recompiling hycs_std). The following are possible programs that you have that are built from hymodelc.F:

Post Reply