Skip to content

Commit 62b5b34

Browse files
jtgrasbkmruehl
andauthored
Fix paraview output function (WEC-Sim#1441)
* fix paraview output for multiple bodies * resolving minor bug to remove vtk dir * Clear paraview variables --------- Co-authored-by: Ruehl <kmruehl@sandia.gov>
1 parent 6665f8c commit 62b5b34

1 file changed

Lines changed: 21 additions & 18 deletions

File tree

source/functions/paraview/paraviewVisualization.m

Lines changed: 21 additions & 18 deletions
Original file line numberDiff line numberDiff line change
@@ -1,9 +1,9 @@
11
%% Paraview Visualization
22
if simu.paraview.option == 1
33
fprintf(' ...writing ParaView files... \n')
4-
if exist([simu.paraview.path filesep 'vtk'],'dir') ~= 0
4+
if exist([simu.paraview.path],'dir') ~= 0
55
try
6-
rmdir([simu.paraview.path filesep 'vtk'],'s')
6+
rmdir([simu.paraview.path],'s')
77
catch
88
error('The vtk directory could not be removed. Please close any files in the vtk directory and try running WEC-Sim again')
99
end
@@ -18,31 +18,34 @@
1818
end
1919
end
2020
end
21-
% bodies
21+
if isempty(simu.paraview.startTime) || isempty(simu.paraview.dt) || isempty(simu.paraview.endTime)
22+
if isempty(simu.paraview.startTime)
23+
simu.paraview.startTime = simu.startTime;
24+
end
25+
if isempty(simu.paraview.dt)
26+
simu.paraview.dt= simu.dt;
27+
end
28+
if isempty(simu.paraview.endTime)
29+
simu.paraview.endTime = simu.endTime;
30+
end
31+
NewTimeParaview(:,1) = simu.paraview.startTime:simu.paraview.dt:simu.paraview.endTime;
32+
end
33+
% bodies
2234
filename = [simu.paraview.path filesep 'bodies.txt'];
2335
mkdir([simu.paraview.path])
2436
[fid ,errmsg] = fopen(filename, 'w');
2537
vtkbodiesii = 1;
38+
2639
for ii = 1:length(body(1,:))
2740
if body(ii).paraview == 1
2841
bodyname = output.bodies(ii).name;
2942
mkdir([simu.paraview.path filesep 'body' num2str(vtkbodiesii) '_' bodyname]);
3043
TimeBodyParav = output.bodies(ii).time;
3144
PositionBodyParav = output.bodies(ii).position;
32-
if isempty(simu.paraview.startTime) || isempty(simu.paraview.dt) || isempty(simu.paraview.endTime)
33-
if isempty(simu.paraview.startTime)
34-
simu.paraview.startTime = simu.startTime;
35-
end
36-
if isempty(simu.paraview.dt)
37-
simu.paraview.dt= simu.dt;
38-
end
39-
if isempty(simu.paraview.endTime)
40-
simu.paraview.endTime = simu.endTime;
41-
end
42-
NewTimeParaview(:,1) = simu.paraview.startTime:simu.paraview.dt:simu.paraview.endTime;
43-
PositionBodyParav = interp1(TimeBodyParav,PositionBodyParav,NewTimeParaview);
44-
TimeBodyParav = NewTimeParaview;
45-
end
45+
46+
PositionBodyParav = interp1(TimeBodyParav,PositionBodyParav,NewTimeParaview);
47+
TimeBodyParav = NewTimeParaview;
48+
4649
writeParaviewBody(body(ii), TimeBodyParav, PositionBodyParav, bodyname, modelName, datestr(simu.date), output.bodies(ii).cellPressures_hydrostatic, output.bodies(ii).cellPressures_waveNonLinear, output.bodies(ii).cellPressures_waveLinear, simu.paraview.path,vtkbodiesii);
4750
bodies{vtkbodiesii} = bodyname;
4851
fprintf(fid,[bodyname '\n']);
@@ -65,4 +68,4 @@
6568
writeParaviewResponse(bodies, TimeBodyParav, modelName, datestr(simu.date), waves.type, moordynFlag, simu.paraview.path);
6669
clear bodies fid filename
6770
end
68-
clear body*_hspressure_out body*_wavenonlinearpressure_out body*_wavelinearpressure_out hspressure wpressurenl wpressurel cellareas bodyname
71+
clear body*_hspressure_out body*_wavenonlinearpressure_out body*_wavelinearpressure_out hspressure wpressurenl wpressurel cellareas bodyname NewTimeParaview PositionBodyParav TimeBodyParav vtkbodiesii

0 commit comments

Comments
 (0)