Skip to content

Commit ed295fc

Browse files
authored
Fix wave generation with phaseSeed in waveClass to ensure the same wave spectrum is generated for all the parallel workers when using wecSimPCT (WEC-Sim#1467)
1 parent 62b5b34 commit ed295fc

1 file changed

Lines changed: 3 additions & 1 deletion

File tree

source/objects/waveClass.m

Lines changed: 3 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -598,7 +598,9 @@ function setWavePhase(obj)
598598
% Sets the irregular wave's random phase
599599
% used by: :meth:`waveClass.setup`.
600600
if obj.phaseSeed ~= 0
601-
rng(obj.phaseSeed); % Phase seed = 1,2,3,...,etc
601+
s = RandStream('Threefry', 'Seed', 1); % Global fixed seed
602+
s.Substream = obj.phaseSeed; % Substream based on phaseSeed
603+
RandStream.setGlobalStream(s); % Set globally
602604
else
603605
rng('shuffle'); % Phase seed shuffled
604606
end

0 commit comments

Comments
 (0)