clear;clc;clear all;
dbstop if error
% profile on
Oa=[0 0 0];
Ra=[0 0 0];
mp=Build_Piston28();
% profile on
top_func(mp,1);
% profile viewer      

%

%---------------step2
mp.tmphandle.cir1.set_property('Oa',[5 0 0],true);
mp.tmphandle.cir2.set_property('Oa',[15 0 0],true);

mp.c.modify_node_by_tag_A_argname('planeL','x',5,'dai');
mp.c.modify_node_by_tag_A_argname('planeR','x',15,'dai');

mp.tmphandle.rcc1_skt.setIschangedFlg(mp.tmphandle.rcc1_skt.rootH);
mp.tmphandle.rcc2_skt.setIschangedFlg(mp.tmphandle.rcc2_skt.rootH);
mp.tmphandle.rc1_skt.setIschangedFlg(mp.tmphandle.rc1_skt.rootH);
mp.tmphandle.rc2_skt.setIschangedFlg(mp.tmphandle.rc2_skt.rootH);
mp.tmphandle.lines_skt.setIschangedFlg(mp.tmphandle.lines_skt.rootH);

mp.tmphandle.rc1_skt_down.setIschangedFlg(mp.tmphandle.rc1_skt_down.rootH);
mp.tmphandle.rc2_skt_down.setIschangedFlg(mp.tmphandle.rc2_skt_down.rootH);
mp.tmphandle.rcc1_skt_down.setIschangedFlg(mp.tmphandle.rcc1_skt_down.rootH);
mp.tmphandle.rcc2_skt_down.setIschangedFlg(mp.tmphandle.rcc2_skt_down.rootH);
mp.tmphandle.lines_skt_down.setIschangedFlg(mp.tmphandle.lines_skt_down.rootH);

if mp.isrecord
    tic
    mp.fmt.reflash_table();
    mp.recorder.time_maintain_fmt(end+1)=toc;
else
    mp.fmt.reflash_table();
end

top_func(mp,2);

%


%---------------step3
mp.tmphandle.cir2.set_property('r',7.5,false);

mp.tmphandle.rcc1_skt.setIschangedFlg(mp.tmphandle.rcc1_skt.rootH);
mp.tmphandle.rcc2_skt.setIschangedFlg(mp.tmphandle.rcc2_skt.rootH);
mp.tmphandle.rc1_skt.setIschangedFlg(mp.tmphandle.rc1_skt.rootH);
mp.tmphandle.rc2_skt.setIschangedFlg(mp.tmphandle.rc2_skt.rootH);
mp.tmphandle.lines_skt.setIschangedFlg(mp.tmphandle.lines_skt.rootH);


mp.tmphandle.rc1_skt_down.setIschangedFlg(mp.tmphandle.rc1_skt_down.rootH);
mp.tmphandle.rc2_skt_down.setIschangedFlg(mp.tmphandle.rc2_skt_down.rootH);
mp.tmphandle.rcc1_skt_down.setIschangedFlg(mp.tmphandle.rcc1_skt_down.rootH);
mp.tmphandle.rcc2_skt_down.setIschangedFlg(mp.tmphandle.rcc2_skt_down.rootH);
mp.tmphandle.lines_skt_down.setIschangedFlg(mp.tmphandle.lines_skt_down.rootH);

if mp.isrecord
    tic
    mp.fmt.reflash_table();
    mp.recorder.time_maintain_fmt(end+1)=toc;
else
    mp.fmt.reflash_table();
end

top_func(mp,3);
%---------------step4
the_h=1;
mp.tmphandle.the_skt.z=the_h;
mp.tmphandle.the_skt_down.z=-the_h;

mp.tmphandle.the_rc1.semi_len=3.5-the_h;
mp.tmphandle.the_rc2.semi_len=3.5-the_h;
mp.tmphandle.the_rcc1.semi_len=3.5-the_h;
mp.tmphandle.the_rcc2.semi_len=3.5-the_h;

mp.tmphandle.the_rc1_down.semi_len=3.5-the_h;
mp.tmphandle.the_rc2_down.semi_len=3.5-the_h;
mp.tmphandle.the_rcc1_down.semi_len=3.5-the_h;
mp.tmphandle.the_rcc2_down.semi_len=3.5-the_h;

mp.tmphandle.rcc1_skt.setIschangedFlg(mp.tmphandle.rcc1_skt.rootH);
mp.tmphandle.rcc2_skt.setIschangedFlg(mp.tmphandle.rcc2_skt.rootH);
mp.tmphandle.rc1_skt.setIschangedFlg(mp.tmphandle.rc1_skt.rootH);
mp.tmphandle.rc2_skt.setIschangedFlg(mp.tmphandle.rc2_skt.rootH);
mp.tmphandle.lines_skt.setIschangedFlg(mp.tmphandle.lines_skt.rootH);


mp.tmphandle.rc1_skt_down.setIschangedFlg(mp.tmphandle.rc1_skt_down.rootH);
mp.tmphandle.rc2_skt_down.setIschangedFlg(mp.tmphandle.rc2_skt_down.rootH);
mp.tmphandle.rcc1_skt_down.setIschangedFlg(mp.tmphandle.rcc1_skt_down.rootH);
mp.tmphandle.rcc2_skt_down.setIschangedFlg(mp.tmphandle.rcc2_skt_down.rootH);
mp.tmphandle.lines_skt_down.setIschangedFlg(mp.tmphandle.lines_skt_down.rootH);
if mp.isrecord
    tic
    mp.fmt.reflash_table();
    mp.recorder.time_maintain_fmt(end+1)=toc;
else
    mp.fmt.reflash_table();
end

top_func(mp,4);
%---------------step5
the_h=-0.5;
mp.tmphandle.the_skt.z=the_h;
mp.tmphandle.the_skt_down.z=-the_h;


mp.c.delete_node_by_tag('Lrc1');
mp.c.delete_node_by_tag('Lrc2');
mp.c.delete_node_by_tag('Lrc3');
mp.c.delete_node_by_tag('Lrc4');
mp.c.delete_node_by_tag('Crc1');
mp.c.delete_node_by_tag('Crc2');
mp.c.delete_node_by_tag('Crc3');
mp.c.delete_node_by_tag('Crc4');


mp.tmphandle.lines_skt.setIschangedFlg(mp.tmphandle.lines_skt.rootH);


mp.tmphandle.lines_skt_down.setIschangedFlg(mp.tmphandle.lines_skt_down.rootH);
mp.c.display_csg();

if mp.isrecord
    tic
    mp.fmt.reflash_table();
    mp.recorder.time_maintain_fmt(end+1)=toc;
else
    mp.fmt.reflash_table();
end

top_func(mp,5);
% step 6.
mp.tmphandle.cir1.set_property('r',3,false);
mp.tmphandle.cir2.set_property('r',5,false);
mp.tmphandle.lines_skt.setIschangedFlg(mp.tmphandle.lines_skt.rootH);
if mp.isrecord
    tic
    mp.fmt.reflash_table();
    mp.recorder.time_maintain_fmt(end+1)=toc;
else
    mp.fmt.reflash_table();
end

top_func(mp,5);

%

mp.saveKe=[];
save_file_name='NNew_Data/Piston28/Piston28_plot_data.mat';
try
    eval_str=['save ',save_file_name,' mp'];
    eval(eval_str);
catch
    eval_str=['save ',save_file_name,' mp -v7.3'];
    eval(eval_str);
end
