1

 This file has been generated by CoCoSim2.

2


3

 Compiler: Lustre compiler 2 (ToLustre.m)

4

 Time: 03Dec2018 22:03:43

5

#open <conv>

6

node bool_to_real(x : bool;)

7

returns(y : real;);

8

let

9

y = if x then

10

1.0

11

else 0.0;

12

tel

13


14

(*

15

Original block name: enable_test_PP/EnabledSubsystem

16

*)

17

node EnabledSubsystem_150_004_automaton(In1_1 : real;

18

_isEnabled : bool;

19

__time_step : real;

20

__nb_step : int;)

21

returns(Out1_1 : real;);

22

var pre_Out1_1 : real;

23

let

24

pre_Out1_1 = if (__nb_step > 0) then

25

(pre Out1_1)

26

else 0.000000000000000;

27

automaton enabled_EnabledSubsystem_150_004

28

state Active_EnabledSubsystem_150_004:

29

unless (not _isEnabled) restart Inactive_EnabledSubsystem_150_004

30

let

31

Out1_1 = EnabledSubsystem_150_004(In1_1, __time_step, __nb_step);

32

tel

33


34

state Inactive_EnabledSubsystem_150_004:

35

unless _isEnabled resume Active_EnabledSubsystem_150_004

36

let

37

Out1_1 = pre_Out1_1;

38

tel

39


40


41

tel

42


43

(*

44

Original block name: enable_test_PP/EnabledSubsystem

45

*)

46

node EnabledSubsystem_150_004(In1_1 : real;

47

__time_step : real;

48

__nb_step : int;)

49

returns(Out1_1 : real;);

50

let

51

Out1_1 = In1_1;

52

tel

53


54

(*

55

Original block name: enable_test_PP/EnabledSubsystem1

56

*)

57

node EnabledSubsystem1_155_006_automaton(In1_1 : real;

58

Enable_1 : bool;

59

_isEnabled : bool;

60

__time_step : real;

61

__nb_step : int;)

62

returns(Out1_1 : real;);

63

var pre_Out1_1 : real;

64

let

65

pre_Out1_1 = if (__nb_step > 0) then

66

(pre Out1_1)

67

else 0.000000000000000;

68

automaton enabled_EnabledSubsystem1_155_006

69

state Active_EnabledSubsystem1_155_006:

70

unless (not _isEnabled) restart Inactive_EnabledSubsystem1_155_006

71

let

72

Out1_1 = EnabledSubsystem1_155_006(In1_1, Enable_1, __time_step, __nb_step);

73

tel

74


75

state Inactive_EnabledSubsystem1_155_006:

76

unless _isEnabled restart Active_EnabledSubsystem1_155_006

77

let

78

Out1_1 = pre_Out1_1;

79

tel

80


81


82

tel

83


84

(*

85

Original block name: enable_test_PP/EnabledSubsystem1

86

*)

87

node EnabledSubsystem1_155_006(In1_1 : real;

88

Enable_1 : bool;

89

__time_step : real;

90

__nb_step : int;)

91

returns(Out1_1 : real;);

92

var Add_1 : real;

93

UnitDelay_1 : real;

94

let

95

Add_1 = 0.0 + bool_to_real(Enable_1) + In1_1;

96

UnitDelay_1 = (0.000000000000000 > (pre Add_1));

97

Out1_1 = UnitDelay_1;

98

tel

99


100

(*

101

Original block name: enable_test_PP/EnabledSubsystem2

102

*)

103

node EnabledSubsystem2_165_004_automaton(In1_1 : real;

104

Enable_1 : int;

105

Enable_2 : int;

106

Enable_3 : int;

107

_isEnabled : bool;

108

__time_step : real;

109

__nb_step : int;)

110

returns(Out1_1 : real;

111

Out1_2 : real;

112

Out1_3 : real;);

113

var pre_Out1_1 : real;

114

pre_Out1_2 : real;

115

pre_Out1_3 : real;

116

let

117

pre_Out1_1 = if (__nb_step > 0) then

118

(pre Out1_1)

119

else 0.000000000000000;

120

pre_Out1_2 = if (__nb_step > 0) then

121

(pre Out1_2)

122

else 0.000000000000000;

123

pre_Out1_3 = if (__nb_step > 0) then

124

(pre Out1_3)

125

else 0.000000000000000;

126

automaton enabled_EnabledSubsystem2_165_004

127

state Active_EnabledSubsystem2_165_004:

128

unless (not _isEnabled) restart Inactive_EnabledSubsystem2_165_004

129

let

130

(Out1_1, Out1_2, Out1_3) = EnabledSubsystem2_165_004(In1_1, Enable_1, Enable_2, Enable_3, __time_step, __nb_step);

131

tel

132


133

state Inactive_EnabledSubsystem2_165_004:

134

unless _isEnabled restart Active_EnabledSubsystem2_165_004

135

let

136

Out1_1 = pre_Out1_1;

137

Out1_2 = pre_Out1_2;

138

Out1_3 = pre_Out1_3;

139

tel

140


141


142

tel

143


144

(*

145

Original block name: enable_test_PP/EnabledSubsystem2

146

*)

147

node EnabledSubsystem2_165_004(In1_1 : real;

148

Enable_1 : int;

149

Enable_2 : int;

150

Enable_3 : int;

151

__time_step : real;

152

__nb_step : int;)

153

returns(Out1_1 : real;

154

Out1_2 : real;

155

Out1_3 : real;);

156

var Add_1 : real;

157

Add_2 : real;

158

Add_3 : real;

159

Memory_1 : real;

160

Memory_2 : real;

161

Memory_3 : real;

162

let

163

Add_1 = 0.0 + int_to_real(Enable_1) + In1_1;

164

Add_2 = 0.0 + int_to_real(Enable_2) + In1_1;

165

Add_3 = 0.0 + int_to_real(Enable_3) + In1_1;

166

Memory_1 = (0.000000000000000 > (pre Add_1));

167

Memory_2 = (0.000000000000000 > (pre Add_2));

168

Memory_3 = (0.000000000000000 > (pre Add_3));

169

Out1_1 = Memory_1;

170

Out1_2 = Memory_2;

171

Out1_3 = Memory_3;

172

tel

173


174

(*

175

Original block name: enable_test_PP/EnabledSubsystem3

176

*)

177

node EnabledSubsystem3_175_006_automaton(In1_1 : real;

178

Enable_1 : real;

179

_isEnabled : bool;

180

__time_step : real;

181

__nb_step : int;)

182

returns(Out1_1 : real;);

183

var pre_Out1_1 : real;

184

let

185

pre_Out1_1 = if (__nb_step > 0) then

186

(pre Out1_1)

187

else 0.000000000000000;

188

automaton enabled_EnabledSubsystem3_175_006

189

state Active_EnabledSubsystem3_175_006:

190

unless (not _isEnabled) restart Inactive_EnabledSubsystem3_175_006

191

let

192

Out1_1 = EnabledSubsystem3_175_006(In1_1, Enable_1, __time_step, __nb_step);

193

tel

194


195

state Inactive_EnabledSubsystem3_175_006:

196

unless _isEnabled resume Active_EnabledSubsystem3_175_006

197

let

198

Out1_1 = pre_Out1_1;

199

tel

200


201


202

tel

203


204

(*

205

Original block name: enable_test_PP/EnabledSubsystem3

206

*)

207

node EnabledSubsystem3_175_006(In1_1 : real;

208

Enable_1 : real;

209

__time_step : real;

210

__nb_step : int;)

211

returns(Out1_1 : real;);

212

var Add_1 : real;

213

let

214

Add_1 = 0.0 + Enable_1 + In1_1;

215

Out1_1 = Add_1;

216

tel

217


218

(*

219

Original block name: enable_test_PP/EnabledSubsystem4/Discrete_minus_TimeIntegrator

220

*)

221

node Discrete_minus_TimeIntegrator_187_006(f_lpar_x_rpar__1 : real;

222

__time_step : real;

223

__nb_step : int;)

224

returns(F_lpar_x_rpar__1 : real;);

225

var Sample_1 : real;

226

Sum6_1 : real;

227

UnitDelay_1 : real;

228

let

229

Sample_1 = (f_lpar_x_rpar__1 * 1.000000000000000);

230

Sum6_1 = 0.0 + Sample_1 + UnitDelay_1;

231

UnitDelay_1 = (0.000000000000000 > (pre Sum6_1));

232

F_lpar_x_rpar__1 = UnitDelay_1;

233

tel

234


235

(*

236

Original block name: enable_test_PP/EnabledSubsystem4/Discrete_minus_TimeIntegrator1

237

*)

238

node Discrete_minus_TimeIntegrator1_188_005(f_lpar_x_rpar__1 : real;

239

reset_falling_1 : real;

240

__time_step : real;

241

__nb_step : int;)

242

returns(F_lpar_x_rpar__1 : real;);

243

var Constant_1 : real;

244

DataTypeConversion_1 : real;

245

DataTypeConversion1_1 : real;

246

Init_1 : real;

247

Product_1 : real;

248

Product2_1 : real;

249

Sample_1 : real;

250

Sum1_1 : real;

251

Sum2_1 : real;

252

Sum3_1 : real;

253

Sum4_1 : real;

254

Sum5_1 : real;

255

Sum6_1 : real;

256

UnitDelay_1 : real;

257

UnitDelay1_1 : real;

258

UnitDelay2_1 : real;

259

eq0_1 : bool;

260

ne1_1 : bool;

261

zero_1 : real;

262

let

263

Constant_1 = 0.000000000000000;

264

DataTypeConversion_1 = bool_to_real(eq0_1);

265

DataTypeConversion1_1 = bool_to_real(ne1_1);

266

Init_1 = 0.000000000000000;

267

Product_1 = 1.0 * Init_1 * UnitDelay1_1;

268

Product2_1 = 1.0 * Sum3_1 * DataTypeConversion_1 * DataTypeConversion1_1;

269

Sample_1 = (f_lpar_x_rpar__1 * 1.000000000000000);

270

Sum1_1 = 0.0 + Sample_1 + Sum2_1;

271

Sum2_1 = 0.0 + Sum4_1 + Product_1;

272

Sum3_1 = 0.0  UnitDelay_1 + Init_1;

273

Sum4_1 = 0.0 + UnitDelay_1 + Product2_1;

274

Sum5_1 = 0.0 + UnitDelay_1 + Product_1;

275

Sum6_1 = 0.0 + Sum5_1 + Product2_1;

276

UnitDelay_1 = (0.000000000000000 > (pre Sum1_1));

277

UnitDelay1_1 = (1.000000000000000 > (pre Constant_1));

278

UnitDelay2_1 = (0.000000000000000 > (pre reset_falling_1));

279

eq0_1 = (reset_falling_1 <= zero_1);

280

ne1_1 = (UnitDelay2_1 > zero_1);

281

zero_1 = 0.000000000000000;

282

F_lpar_x_rpar__1 = Sum6_1;

283

tel

284


285

(*

286

Original block name: enable_test_PP/EnabledSubsystem4/Discrete_minus_TimeIntegrator2

287

*)

288

node Discrete_minus_TimeIntegrator2_189_005(f_lpar_x_rpar__1 : real;

289

x0_1 : real;

290

__time_step : real;

291

__nb_step : int;)

292

returns(F_lpar_x_rpar__1 : real;);

293

var Constant_1 : real;

294

Product_1 : real;

295

Sample_1 : real;

296

Sum1_1 : real;

297

Sum2_1 : real;

298

Sum6_1 : real;

299

UnitDelay_1 : real;

300

UnitDelay1_1 : real;

301

let

302

Constant_1 = 0.000000000000000;

303

Product_1 = 1.0 * x0_1 * UnitDelay1_1;

304

Sample_1 = (f_lpar_x_rpar__1 * 1.000000000000000);

305

Sum1_1 = 0.0 + Sample_1 + Sum2_1;

306

Sum2_1 = 0.0 + UnitDelay_1 + Product_1;

307

Sum6_1 = 0.0 + UnitDelay_1 + Product_1;

308

UnitDelay_1 = (0.000000000000000 > (pre Sum1_1));

309

UnitDelay1_1 = (1.000000000000000 > (pre Constant_1));

310

F_lpar_x_rpar__1 = Sum6_1;

311

tel

312


313

(*

314

Original block name: enable_test_PP/EnabledSubsystem4/Discrete_minus_TimeIntegrator3

315

*)

316

node Discrete_minus_TimeIntegrator3_190_005(f_lpar_x_rpar__1 : real;

317

reset_level_1 : real;

318

x0_1 : real;

319

__time_step : real;

320

__nb_step : int;)

321

returns(F_lpar_x_rpar__1 : real;);

322

var Add_1 : real;

323

Constant_1 : real;

324

DataTypeConversion_1 : real;

325

DataTypeConversion1_1 : real;

326

DataTypeConversion2_1 : real;

327

Product_1 : real;

328

Product1_1 : real;

329

Product2_1 : real;

330

Sample_1 : real;

331

Sum1_1 : real;

332

Sum2_1 : real;

333

Sum3_1 : real;

334

Sum4_1 : real;

335

Sum5_1 : real;

336

Sum6_1 : real;

337

UnitDelay_1 : real;

338

UnitDelay1_1 : real;

339

UnitDelay2_1 : real;

340

eq0_1 : bool;

341

ne0_1 : bool;

342

ne1_1 : bool;

343

zero_1 : real;

344

let

345

Add_1 = 0.0 + Product1_1 + Product2_1;

346

Constant_1 = 0.000000000000000;

347

DataTypeConversion_1 = bool_to_real(ne0_1);

348

DataTypeConversion1_1 = bool_to_real(eq0_1);

349

DataTypeConversion2_1 = bool_to_real(ne1_1);

350

Product_1 = 1.0 * x0_1 * UnitDelay1_1;

351

Product1_1 = 1.0 * Sum3_1 * DataTypeConversion_1;

352

Product2_1 = 1.0 * Sum3_1 * DataTypeConversion1_1 * DataTypeConversion2_1;

353

Sample_1 = (f_lpar_x_rpar__1 * 1.000000000000000);

354

Sum1_1 = 0.0 + Sample_1 + Sum2_1;

355

Sum2_1 = 0.0 + Sum4_1 + Product_1;

356

Sum3_1 = 0.0  UnitDelay_1 + x0_1;

357

Sum4_1 = 0.0 + UnitDelay_1 + Add_1;

358

Sum5_1 = 0.0 + UnitDelay_1 + Product_1;

359

Sum6_1 = 0.0 + Sum5_1 + Add_1;

360

UnitDelay_1 = (0.000000000000000 > (pre Sum1_1));

361

UnitDelay1_1 = (1.000000000000000 > (pre Constant_1));

362

UnitDelay2_1 = (0.000000000000000 > (pre reset_level_1));

363

eq0_1 = (reset_level_1 = zero_1);

364

ne0_1 = (reset_level_1 <> zero_1);

365

ne1_1 = (UnitDelay2_1 <> zero_1);

366

zero_1 = 0.000000000000000;

367

F_lpar_x_rpar__1 = Sum6_1;

368

tel

369


370

(*

371

Original block name: enable_test_PP/EnabledSubsystem4

372

*)

373

node EnabledSubsystem4_183_005_automaton(In1_1 : real;

374

Enable_1 : real;

375

_isEnabled : bool;

376

__time_step : real;

377

__nb_step : int;)

378

returns(Out1_1 : real;

379

Out2_1 : real;

380

Out3_1 : real;

381

Out4_1 : real;);

382

var pre_Out1_1 : real;

383

pre_Out2_1 : real;

384

pre_Out3_1 : real;

385

pre_Out4_1 : real;

386

let

387

pre_Out1_1 = if (__nb_step > 0) then

388

(pre Out1_1)

389

else 0.000000000000000;

390

pre_Out2_1 = if (__nb_step > 0) then

391

(pre Out2_1)

392

else 0.000000000000000;

393

pre_Out3_1 = if (__nb_step > 0) then

394

(pre Out3_1)

395

else 0.000000000000000;

396

pre_Out4_1 = if (__nb_step > 0) then

397

(pre Out4_1)

398

else 0.000000000000000;

399

automaton enabled_EnabledSubsystem4_183_005

400

state Active_EnabledSubsystem4_183_005:

401

unless (not _isEnabled) restart Inactive_EnabledSubsystem4_183_005

402

let

403

(Out1_1, Out2_1, Out3_1, Out4_1) = EnabledSubsystem4_183_005(In1_1, Enable_1, __time_step, __nb_step);

404

tel

405


406

state Inactive_EnabledSubsystem4_183_005:

407

unless _isEnabled restart Active_EnabledSubsystem4_183_005

408

let

409

Out1_1 = pre_Out1_1;

410

Out2_1 = pre_Out2_1;

411

Out3_1 = pre_Out3_1;

412

Out4_1 = pre_Out4_1;

413

tel

414


415


416

tel

417


418

(*

419

Original block name: enable_test_PP/EnabledSubsystem4

420

*)

421

node EnabledSubsystem4_183_005(In1_1 : real;

422

Enable_1 : real;

423

__time_step : real;

424

__nb_step : int;)

425

returns(Out1_1 : real;

426

Out2_1 : real;

427

Out3_1 : real;

428

Out4_1 : real;);

429

var Add_1 : real;

430

Discrete_minus_TimeIntegrator_1 : real;

431

Discrete_minus_TimeIntegrator1_1 : real;

432

Discrete_minus_TimeIntegrator2_1 : real;

433

Discrete_minus_TimeIntegrator3_1 : real;

434

let

435

Add_1 = 0.0 + Enable_1 + In1_1;

436

Discrete_minus_TimeIntegrator_1 = Discrete_minus_TimeIntegrator_187_006(Add_1, __time_step, __nb_step);

437

Discrete_minus_TimeIntegrator1_1 = Discrete_minus_TimeIntegrator1_188_005(Add_1, Enable_1, __time_step, __nb_step);

438

Discrete_minus_TimeIntegrator2_1 = Discrete_minus_TimeIntegrator2_189_005(Add_1, In1_1, __time_step, __nb_step);

439

Discrete_minus_TimeIntegrator3_1 = Discrete_minus_TimeIntegrator3_190_005(Add_1, Enable_1, In1_1, __time_step, __nb_step);

440

Out1_1 = Discrete_minus_TimeIntegrator_1;

441

Out2_1 = Discrete_minus_TimeIntegrator1_1;

442

Out3_1 = Discrete_minus_TimeIntegrator2_1;

443

Out4_1 = Discrete_minus_TimeIntegrator3_1;

444

tel

445


446

(*

447

Original block name: enable_test_PP/EnabledandTriggeredSubsystem

448

*)

449

node EnabledandTriggeredSubsystem_216_004_automaton(In1_1 : real;

450

_isEnabled : bool;

451

_isTriggered : bool;

452

__time_step : real;

453

__nb_step : int;)

454

returns(Out1_1 : real;);

455

var pre_Out1_1 : real;

456

let

457

pre_Out1_1 = if (__nb_step > 0) then

458

(pre Out1_1)

459

else 0.000000000000000;

460

automaton enabled_EnabledandTriggeredSubsystem_216_004

461

state Active_EnabledandTriggeredSubsystem_216_004:

462

unless (not _isEnabled) restart Inactive_EnabledandTriggeredSubsystem_216_004

463

let

464

automaton triggered_EnabledandTriggeredSubsystem_216_004

465

state Active_triggered_EnabledandTriggeredSubsystem_216_004:

466

unless (not _isTriggered) resume Inactive_triggered_EnabledandTriggeredSubsystem_216_004

467

let

468

Out1_1 = EnabledandTriggeredSubsystem_216_004(In1_1, __time_step, __nb_step);

469

tel

470


471

state Inactive_triggered_EnabledandTriggeredSubsystem_216_004:

472

unless _isTriggered resume Active_triggered_EnabledandTriggeredSubsystem_216_004

473

let

474

Out1_1 = pre_Out1_1;

475

tel

476


477


478

tel

479


480

state Inactive_EnabledandTriggeredSubsystem_216_004:

481

unless _isEnabled resume Active_EnabledandTriggeredSubsystem_216_004

482

let

483

Out1_1 = pre_Out1_1;

484

tel

485


486


487

tel

488


489

(*

490

Original block name: enable_test_PP/EnabledandTriggeredSubsystem

491

*)

492

node EnabledandTriggeredSubsystem_216_004(In1_1 : real;

493

__time_step : real;

494

__nb_step : int;)

495

returns(Out1_1 : real;);

496

let

497

Out1_1 = In1_1;

498

tel

499


500

(*

501

Original block name: enable_test_PP/EnabledandTriggeredSubsystem1/CompareToZero

502

*)

503

node CompareToZero_227_006(u_1 : real;

504

__time_step : real;

505

__nb_step : int;)

506

returns(y_1 : bool;);

507

var Compare_1 : bool;

508

Constant_1 : real;

509

let

510

Compare_1 = (u_1 <= Constant_1);

511

Constant_1 = 0.000000000000000;

512

y_1 = Compare_1;

513

tel

514


515

(*

516

Original block name: enable_test_PP/EnabledandTriggeredSubsystem1

517

*)

518

node EnabledandTriggeredSubsystem1_222_005_automaton(In1_1 : real;

519

Enable_1 : bool;

520

Trigger_1 : real;

521

_isEnabled : bool;

522

_isTriggered : bool;

523

__time_step : real;

524

__nb_step : int;)

525

returns(Out1_1 : bool;);

526

var pre_Out1_1 : bool;

527

let

528

pre_Out1_1 = if (__nb_step > 0) then

529

(pre Out1_1)

530

else false;

531

automaton enabled_EnabledandTriggeredSubsystem1_222_005

532

state Active_EnabledandTriggeredSubsystem1_222_005:

533

unless (not _isEnabled) restart Inactive_EnabledandTriggeredSubsystem1_222_005

534

let

535

automaton triggered_EnabledandTriggeredSubsystem1_222_005

536

state Active_triggered_EnabledandTriggeredSubsystem1_222_005:

537

unless (not _isTriggered) resume Inactive_triggered_EnabledandTriggeredSubsystem1_222_005

538

let

539

Out1_1 = EnabledandTriggeredSubsystem1_222_005(In1_1, Enable_1, Trigger_1, __time_step, __nb_step);

540

tel

541


542

state Inactive_triggered_EnabledandTriggeredSubsystem1_222_005:

543

unless _isTriggered resume Active_triggered_EnabledandTriggeredSubsystem1_222_005

544

let

545

Out1_1 = pre_Out1_1;

546

tel

547


548


549

tel

550


551

state Inactive_EnabledandTriggeredSubsystem1_222_005:

552

unless _isEnabled resume Active_EnabledandTriggeredSubsystem1_222_005

553

let

554

Out1_1 = pre_Out1_1;

555

tel

556


557


558

tel

559


560

(*

561

Original block name: enable_test_PP/EnabledandTriggeredSubsystem1

562

*)

563

node EnabledandTriggeredSubsystem1_222_005(In1_1 : real;

564

Enable_1 : bool;

565

Trigger_1 : real;

566

__time_step : real;

567

__nb_step : int;)

568

returns(Out1_1 : bool;);

569

var Add_1 : real;

570

CompareToZero_1 : bool;

571

LogicalOperator_1 : bool;

572

let

573

Add_1 = 0.0 + Trigger_1 + In1_1;

574

CompareToZero_1 = CompareToZero_227_006(Add_1, __time_step, __nb_step);

575

LogicalOperator_1 = ( CompareToZero_1 and Enable_1 );

576

Out1_1 = LogicalOperator_1;

577

tel

578


579

(*

580

Original block name: enable_test_PP

581

*)

582

node enable_test_PP(In1_1 : real;

583

In2_1 : bool;

584

In3_1 : int;

585

In3_2 : int;

586

In3_3 : int;

587

In4_1 : real;

588

In5_1 : real;

589

In6_1 : real;)

590

returns(Out3_1 : real;

591

Out1_1 : real;

592

Out2_1 : real;

593

Out4_1 : real;

594

Out4_2 : real;

595

Out4_3 : real;

596

Out5_1 : real;

597

Out6_1 : bool;

598

Out7_1 : real;

599

Out8_1 : real;

600

Out9_1 : real;

601

Out10_1 : real;);

602

var ExecutionCond_of_EnabledSubsystem_150_004 : bool;

603

EnabledSubsystem_1 : real;

604

ExecutionCond_of_EnabledSubsystem1_155_006 : bool;

605

EnabledSubsystem1_1 : real;

606

ExecutionCond_of_EnabledSubsystem2_165_004 : bool;

607

EnabledSubsystem2_1 : real;

608

EnabledSubsystem2_2 : real;

609

EnabledSubsystem2_3 : real;

610

ExecutionCond_of_EnabledSubsystem3_175_006 : bool;

611

EnabledSubsystem3_1 : real;

612

ExecutionCond_of_EnabledSubsystem4_183_005 : bool;

613

EnabledSubsystem4_1 : real;

614

EnabledSubsystem4_2 : real;

615

EnabledSubsystem4_3 : real;

616

EnabledSubsystem4_4 : real;

617

ExecutionCond_of_EnabledandTriggeredSubsystem_216_004 : bool;

618

TriggerCond_of_EnabledandTriggeredSubsystem_216_004 : bool;

619

EnableCond_of_EnabledandTriggeredSubsystem_216_004 : bool;

620

EnabledandTriggeredSubsystem_1 : real;

621

ExecutionCond_of_EnabledandTriggeredSubsystem1_222_005 : bool;

622

TriggerCond_of_EnabledandTriggeredSubsystem1_222_005 : bool;

623

EnableCond_of_EnabledandTriggeredSubsystem1_222_005 : bool;

624

EnabledandTriggeredSubsystem1_1 : bool;

625

__time_step : real;

626

__nb_step : int;

627

let

628

ExecutionCond_of_EnabledSubsystem_150_004 = In2_1;

629

EnabledSubsystem_1 = EnabledSubsystem_150_004_automaton(In1_1, ExecutionCond_of_EnabledSubsystem_150_004, __time_step, __nb_step);

630

ExecutionCond_of_EnabledSubsystem1_155_006 = In2_1;

631

EnabledSubsystem1_1 = EnabledSubsystem1_155_006_automaton(In1_1, In2_1, ExecutionCond_of_EnabledSubsystem1_155_006, __time_step, __nb_step);

632

ExecutionCond_of_EnabledSubsystem2_165_004 = ( (In3_1 > 0) or (In3_2 > 0) or (In3_3 > 0) );

633

(EnabledSubsystem2_1, EnabledSubsystem2_2, EnabledSubsystem2_3) = EnabledSubsystem2_165_004_automaton(In1_1, In3_1, In3_2, In3_3, ExecutionCond_of_EnabledSubsystem2_165_004, __time_step, __nb_step);

634

ExecutionCond_of_EnabledSubsystem3_175_006 = (In4_1 > 0.0);

635

EnabledSubsystem3_1 = EnabledSubsystem3_175_006_automaton(In1_1, In4_1, ExecutionCond_of_EnabledSubsystem3_175_006, __time_step, __nb_step);

636

ExecutionCond_of_EnabledSubsystem4_183_005 = (In6_1 > 0.0);

637

(EnabledSubsystem4_1, EnabledSubsystem4_2, EnabledSubsystem4_3, EnabledSubsystem4_4) = EnabledSubsystem4_183_005_automaton(In1_1, In6_1, ExecutionCond_of_EnabledSubsystem4_183_005, __time_step, __nb_step);

638

EnableCond_of_EnabledandTriggeredSubsystem_216_004 = In2_1;

639

TriggerCond_of_EnabledandTriggeredSubsystem_216_004 = (false > (In2_1 and (not (pre In2_1))));

640

ExecutionCond_of_EnabledandTriggeredSubsystem_216_004 = (EnableCond_of_EnabledandTriggeredSubsystem_216_004 and TriggerCond_of_EnabledandTriggeredSubsystem_216_004);

641

EnabledandTriggeredSubsystem_1 = EnabledandTriggeredSubsystem_216_004_automaton(In1_1, EnableCond_of_EnabledandTriggeredSubsystem_216_004, TriggerCond_of_EnabledandTriggeredSubsystem_216_004, __time_step, __nb_step);

642

EnableCond_of_EnabledandTriggeredSubsystem1_222_005 = In2_1;

643

TriggerCond_of_EnabledandTriggeredSubsystem1_222_005 = (false > ((not In2_1) and (pre In2_1)));

644

ExecutionCond_of_EnabledandTriggeredSubsystem1_222_005 = (EnableCond_of_EnabledandTriggeredSubsystem1_222_005 and TriggerCond_of_EnabledandTriggeredSubsystem1_222_005);

645

EnabledandTriggeredSubsystem1_1 = EnabledandTriggeredSubsystem1_222_005_automaton(In5_1, In2_1, (0.0 > if TriggerCond_of_EnabledandTriggeredSubsystem1_222_005 then

646

( 1.0)

647

else 0.0), EnableCond_of_EnabledandTriggeredSubsystem1_222_005, TriggerCond_of_EnabledandTriggeredSubsystem1_222_005, __time_step, __nb_step);

648

Out3_1 = EnabledSubsystem_1;

649

Out1_1 = EnabledandTriggeredSubsystem_1;

650

Out2_1 = EnabledSubsystem1_1;

651

Out4_1 = EnabledSubsystem2_1;

652

Out4_2 = EnabledSubsystem2_2;

653

Out4_3 = EnabledSubsystem2_3;

654

Out5_1 = EnabledSubsystem3_1;

655

Out6_1 = EnabledandTriggeredSubsystem1_1;

656

Out7_1 = EnabledSubsystem4_1;

657

Out8_1 = EnabledSubsystem4_2;

658

Out9_1 = EnabledSubsystem4_3;

659

Out10_1 = EnabledSubsystem4_4;

660

__time_step = (0.0 > ((pre __time_step) + 1.000000000000000));

661

__nb_step = (0 > ((pre __nb_step) + 1));

662

tel

663

