Skip to content

Commit 440b635

Browse files
authored
waveClass Constructor Improvements (WEC-Sim#1515)
* Change waveClass constructor to use enumeration instead of string
1 parent 97c44e3 commit 440b635

2 files changed

Lines changed: 18 additions & 6 deletions

File tree

Lines changed: 14 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,14 @@
1+
classdef waveType
2+
3+
enumeration
4+
noWave
5+
noWaveCIC
6+
regular
7+
regularCIC
8+
irregular
9+
spectrumImport
10+
spectrumImportFullDir
11+
elevationImport
12+
end
13+
14+
end

source/objects/waveClass.m

Lines changed: 4 additions & 6 deletions
Original file line numberDiff line numberDiff line change
@@ -118,6 +118,10 @@
118118
% waveClass object
119119
%
120120

121+
arguments
122+
type (1,1) internal.waveType
123+
end
124+
121125
obj.type = type;
122126
switch obj.type
123127
case {'noWave'} % No Waves with Constant Hydrodynamic Coefficients
@@ -164,12 +168,6 @@ function checkInputs(obj)
164168
mustBeInRange(obj.direction,-360, 360)
165169
mustBeInRange(obj.spread,0, 1)
166170

167-
% check wave type
168-
types = {'noWave', 'noWaveCIC', 'regular', 'regularCIC', 'irregular', 'spectrumImport','spectrumImportFullDir', 'elevationImport'};
169-
if sum(strcmp(types,obj.type)) ~= 1
170-
error(['Unexpected wave environment type setting, choose from: ' ...
171-
'"noWave", "noWaveCIC", "regular", "regularCIC", "irregular", "spectrumImport", "spectrumImportFullDir", and "elevationImport".'])
172-
end
173171
% check 'waves.bem' fields
174172
if length(fieldnames(obj.bem)) ~=4
175173
error(['Unrecognized method, property, or field for class "waveClass", ' ...

0 commit comments

Comments
 (0)