Skip to content

Commit 23645f4

Browse files
committed
Updates to skip WaterKin and write inertialf as an int
1 parent c3183ca commit 23645f4

File tree

2 files changed

+12
-4
lines changed

2 files changed

+12
-4
lines changed

openfast_io/openfast_io/FAST_reader.py

Lines changed: 4 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -3452,7 +3452,10 @@ def read_MoorDyn(self, moordyn_file):
34523452
if option_name.upper() == 'WATERKIN':
34533453
self.fst_vt['MoorDyn']['WaterKin'] = option_value.strip('"')
34543454
WaterKin_file = os.path.normpath(os.path.join(os.path.dirname(moordyn_file), self.fst_vt['MoorDyn']['WaterKin']))
3455-
self.read_WaterKin(WaterKin_file)
3455+
if not os.path.isfile(WaterKin_file):
3456+
print(f'WaterKin file {WaterKin_file} does not exist.')
3457+
else:
3458+
self.read_WaterKin(WaterKin_file)
34563459

34573460
self.fst_vt['MoorDyn']['option_values'].append(float_read(option_value.strip('"'))) # some options values can be strings or floats
34583461
self.fst_vt['MoorDyn']['option_names'].append(option_name)

openfast_io/openfast_io/FAST_writer.py

Lines changed: 8 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -250,7 +250,7 @@ def execute(self):
250250
self.write_MAP()
251251
elif self.fst_vt['Fst']['CompMooring'] == 3:
252252
self.write_MoorDyn()
253-
if 'option_names' in self.fst_vt['MoorDyn'] and 'WATERKIN' in self.fst_vt['MoorDyn']['option_names']:
253+
if self.fst_vt['WaterKin']:
254254
self.write_WaterKin(os.path.join(self.FAST_runDirectory,self.fst_vt['MoorDyn']['WaterKin_file']))
255255

256256
# # look at if the the self.fst_vt['BeamDyn'] is an array, if so, loop through the array
@@ -2667,8 +2667,13 @@ def write_MoorDyn(self): # TODO: see TODO's in FAST_reader/read_MoorDyn.py and m
26672667
for i in range(len(self.fst_vt['MoorDyn']['option_values'])):
26682668

26692669
if 'WATERKIN' in self.fst_vt['MoorDyn']['option_names'][i]:
2670-
self.fst_vt['MoorDyn']['WaterKin_file'] = self.FAST_namingOut + '_WaterKin.dat'
2671-
f.write('{:<22} {:<11} {:}'.format('"'+self.fst_vt['MoorDyn']['WaterKin_file']+'"', self.fst_vt['MoorDyn']['option_names'][i], self.fst_vt['MoorDyn']['option_descriptions'][i]+'\n'))
2670+
if self.fst_vt['WaterKin']:
2671+
self.fst_vt['MoorDyn']['WaterKin_file'] = self.FAST_namingOut + '_WaterKin.dat'
2672+
f.write('{:<22} {:<11} {:}'.format('"'+self.fst_vt['MoorDyn']['WaterKin_file']+'"', self.fst_vt['MoorDyn']['option_names'][i], self.fst_vt['MoorDyn']['option_descriptions'][i]+'\n'))
2673+
else:
2674+
f.write('{:<22} {:<11} {:}'.format('0', self.fst_vt['MoorDyn']['option_names'][i], self.fst_vt['MoorDyn']['option_descriptions'][i]+'\n'))
2675+
elif self.fst_vt['MoorDyn']['option_names'][i].lower() == 'inertialf': # if inertialF, write as integer
2676+
f.write('{:<22d} {:<11} {:}'.format(int(self.fst_vt['MoorDyn']['option_values'][i]), self.fst_vt['MoorDyn']['option_names'][i], self.fst_vt['MoorDyn']['option_descriptions'][i]+'\n'))
26722677
else: # if not waterkin handle normally
26732678
f.write('{:<22} {:<11} {:}'.format(float_default_out(self.fst_vt['MoorDyn']['option_values'][i]), self.fst_vt['MoorDyn']['option_names'][i], self.fst_vt['MoorDyn']['option_descriptions'][i]+'\n'))
26742679

0 commit comments

Comments
 (0)