Newer
Older
13001
13002
13003
13004
13005
13006
13007
13008
13009
13010
13011
13012
13013
13014
13015
13016
13017
13018
13019
13020
13021
13022
13023
13024
13025
13026
13027
13028
13029
13030
13031
13032
13033
13034
13035
13036
13037
13038
13039
13040
13041
13042
13043
13044
13045
13046
13047
13048
13049
13050
13051
13052
13053
13054
13055
13056
13057
13058
13059
13060
13061
13062
13063
13064
13065
13066
13067
13068
13069
13070
13071
13072
13073
13074
13075
13076
13077
13078
13079
13080
13081
13082
13083
13084
13085
13086
13087
13088
13089
13090
13091
13092
13093
13094
13095
13096
13097
13098
13099
13100
13101
13102
13103
13104
13105
13106
13107
13108
13109
13110
13111
13112
13113
13114
13115
13116
13117
13118
13119
13120
13121
13122
13123
13124
13125
13126
13127
13128
13129
13130
13131
13132
13133
13134
13135
13136
13137
13138
13139
13140
13141
13142
13143
13144
13145
13146
13147
13148
13149
13150
13151
13152
13153
13154
13155
13156
13157
13158
13159
13160
13161
13162
13163
13164
13165
13166
13167
13168
13169
13170
13171
13172
13173
13174
13175
13176
13177
13178
13179
13180
13181
13182
13183
13184
13185
13186
13187
13188
13189
13190
13191
13192
13193
13194
13195
13196
13197
13198
13199
13200
13201
13202
13203
13204
13205
13206
13207
13208
13209
13210
13211
13212
13213
13214
13215
13216
13217
13218
13219
13220
13221
13222
13223
13224
13225
13226
13227
13228
13229
13230
13231
13232
13233
13234
13235
13236
13237
13238
13239
13240
13241
13242
13243
13244
13245
13246
13247
13248
13249
13250
13251
13252
13253
13254
13255
13256
13257
13258
13259
13260
13261
13262
13263
13264
13265
13266
13267
13268
13269
13270
13271
13272
13273
13274
13275
13276
13277
13278
13279
13280
13281
13282
13283
13284
13285
13286
13287
13288
13289
13290
13291
13292
13293
13294
13295
13296
13297
13298
13299
13300
13301
13302
13303
13304
13305
13306
13307
13308
13309
13310
13311
13312
13313
13314
13315
13316
13317
13318
13319
13320
13321
13322
13323
13324
13325
13326
13327
13328
13329
13330
13331
13332
13333
13334
13335
13336
13337
13338
13339
13340
13341
13342
13343
13344
13345
13346
13347
13348
13349
13350
13351
13352
13353
13354
13355
13356
13357
13358
13359
13360
13361
13362
13363
13364
13365
13366
13367
13368
13369
13370
13371
13372
13373
13374
13375
13376
13377
13378
13379
13380
13381
13382
13383
13384
13385
13386
13387
13388
13389
13390
13391
13392
13393
13394
13395
13396
13397
13398
13399
13400
13401
13402
13403
13404
13405
13406
13407
13408
13409
13410
13411
13412
13413
13414
13415
13416
13417
13418
13419
13420
13421
13422
13423
13424
13425
13426
13427
13428
13429
13430
13431
13432
13433
13434
13435
13436
13437
13438
13439
13440
13441
13442
13443
13444
13445
13446
13447
13448
13449
13450
13451
13452
13453
13454
13455
13456
13457
13458
13459
13460
13461
13462
13463
13464
13465
13466
13467
13468
13469
13470
13471
13472
13473
13474
13475
13476
13477
13478
13479
13480
13481
13482
13483
13484
13485
13486
13487
13488
13489
13490
13491
13492
13493
13494
13495
13496
13497
13498
13499
13500
13501
13502
13503
13504
13505
13506
13507
13508
13509
13510
13511
13512
13513
13514
13515
13516
13517
13518
13519
13520
13521
13522
13523
13524
13525
13526
13527
13528
13529
13530
13531
13532
13533
13534
13535
13536
13537
13538
13539
13540
13541
13542
13543
13544
13545
13546
13547
13548
13549
13550
13551
13552
13553
13554
13555
13556
13557
13558
13559
13560
13561
13562
13563
13564
13565
13566
13567
13568
13569
13570
13571
13572
13573
13574
13575
13576
13577
13578
13579
13580
13581
13582
13583
13584
13585
13586
13587
13588
13589
13590
13591
13592
13593
13594
13595
13596
13597
13598
13599
13600
13601
13602
13603
13604
13605
13606
13607
13608
13609
13610
13611
13612
13613
13614
13615
13616
13617
13618
13619
13620
13621
13622
13623
13624
13625
13626
13627
13628
13629
13630
13631
13632
13633
13634
13635
13636
13637
13638
13639
13640
13641
13642
13643
13644
13645
13646
13647
13648
13649
13650
13651
13652
13653
13654
13655
13656
13657
13658
13659
13660
13661
13662
13663
13664
13665
13666
13667
13668
13669
13670
13671
13672
13673
13674
13675
13676
13677
13678
13679
13680
13681
13682
13683
13684
13685
13686
13687
13688
13689
13690
13691
13692
13693
13694
13695
13696
13697
13698
13699
13700
13701
13702
13703
13704
13705
13706
13707
13708
13709
13710
13711
13712
13713
13714
13715
13716
13717
13718
13719
13720
13721
13722
13723
13724
13725
13726
13727
13728
13729
13730
13731
13732
13733
13734
13735
13736
13737
13738
13739
13740
13741
13742
13743
13744
13745
13746
13747
13748
13749
13750
13751
13752
13753
13754
13755
13756
13757
13758
13759
13760
13761
13762
13763
13764
13765
13766
13767
13768
13769
13770
13771
13772
13773
13774
13775
13776
13777
13778
13779
13780
13781
13782
13783
13784
13785
13786
13787
13788
13789
13790
13791
13792
13793
13794
13795
13796
13797
13798
13799
13800
13801
13802
13803
13804
13805
13806
13807
13808
13809
13810
13811
13812
13813
13814
13815
13816
13817
13818
13819
13820
13821
13822
13823
13824
13825
13826
13827
13828
13829
13830
13831
13832
13833
13834
13835
13836
13837
13838
13839
13840
13841
13842
13843
13844
13845
13846
13847
13848
13849
13850
13851
13852
13853
13854
13855
13856
13857
13858
13859
13860
13861
13862
13863
13864
13865
13866
13867
13868
13869
13870
13871
13872
13873
13874
13875
13876
13877
13878
13879
13880
13881
13882
13883
13884
13885
13886
13887
13888
13889
13890
13891
13892
13893
13894
13895
13896
13897
13898
13899
13900
13901
13902
13903
13904
13905
13906
13907
13908
13909
13910
13911
13912
13913
13914
13915
13916
13917
13918
13919
13920
13921
13922
13923
13924
13925
13926
13927
13928
13929
13930
13931
13932
13933
13934
13935
13936
13937
13938
13939
13940
13941
13942
13943
13944
13945
13946
13947
13948
13949
13950
13951
13952
13953
13954
13955
13956
13957
13958
13959
13960
13961
13962
13963
13964
13965
13966
13967
13968
13969
13970
13971
13972
13973
13974
13975
13976
13977
13978
13979
13980
13981
13982
13983
13984
13985
13986
13987
13988
13989
13990
13991
13992
13993
13994
13995
13996
13997
13998
13999
14000
{
"data": {
"text/plain": [
"\" It:195 Obj:187.5363800668086 Vol:0.4999861912365636 ch:0.17553511288934348 \""
]
},
"metadata": {},
"output_type": "display_data"
},
{
"data": {
"text/plain": [
"\" It:196 Obj:187.5260989413126 Vol:0.5000125962163978 ch:0.20000000000000007 \""
]
},
"metadata": {},
"output_type": "display_data"
},
{
"data": {
"text/plain": [
"\" It:197 Obj:187.48660543480725 Vol:0.5000148470424511 ch:0.19999999999999996 \""
]
},
"metadata": {},
"output_type": "display_data"
},
{
"data": {
"text/plain": [
"\" It:198 Obj:187.45863587949393 Vol:0.5000018020061429 ch:0.07632439866178942 \""
]
},
"metadata": {},
"output_type": "display_data"
},
{
"data": {
"text/plain": [
"\" It:199 Obj:187.4528349095957 Vol:0.500011558464005 ch:0.005085756632071892 \""
]
},
"metadata": {},
"output_type": "display_data"
},
{
"data": {
"text/plain": [
"([1.0 1.0 … 0.0 0.0; 1.0 1.0 … 0.0 0.0; … ; 1.0 1.0 … 1.0 1.0; 1.0 1.0 … 1.0 1.0], Animation(\"/var/folders/f1/6d3kkmqj2n38tl1j1qkg8pwr0000gn/T/jl_34x4Ko\", [\"000001.png\", \"000002.png\", \"000003.png\", \"000004.png\", \"000005.png\", \"000006.png\", \"000007.png\", \"000008.png\", \"000009.png\", \"000010.png\" … \"000028.png\", \"000029.png\", \"000030.png\", \"000031.png\", \"000032.png\", \"000033.png\", \"000034.png\", \"000035.png\", \"000036.png\", \"000037.png\"]))"
]
},
"execution_count": 18,
"metadata": {},
"output_type": "execute_result"
}
],
"source": [
"topologyOptimization(90,30,0.5,1.5,3)"
]
},
{
"cell_type": "code",
"execution_count": 4,
"metadata": {},
"outputs": [
{
"data": {
"text/plain": [
"(1.8301678226790747, [1.0, 1.0, 1.0, 1.0, 1.0, 1.0, 1.0, 1.0, 1.0, 1.0 … 1.0e-9, 1.0e-9, 1.0e-9, 1.0e-9, 1.0e-9, 1.0e-9, 1.0e-9, 1.0e-9, 1.0e-9, 1.0e-9], :XTOL_REACHED)"
]
},
"metadata": {},
"output_type": "display_data"
},
{
"data": {
"text/plain": [
"\"got 1.8301678226790747 after 63 iterations (returned XTOL_REACHED)\""
]
},
"metadata": {},
"output_type": "display_data"
},
{
"data": {
"image/svg+xml": [
"<?xml version=\"1.0\" encoding=\"utf-8\"?>\n",
"<svg xmlns=\"http://www.w3.org/2000/svg\" xmlns:xlink=\"http://www.w3.org/1999/xlink\" width=\"600\" height=\"400\" viewBox=\"0 0 2400 1600\">\n",
"<defs>\n",
" <clipPath id=\"clip4800\">\n",
" <rect x=\"0\" y=\"0\" width=\"2400\" height=\"1600\"/>\n",
" </clipPath>\n",
"</defs>\n",
"<path clip-path=\"url(#clip4800)\" d=\"\n",
"M0 1600 L2400 1600 L2400 0 L0 0 Z\n",
" \" fill=\"#ffffff\" fill-rule=\"evenodd\" fill-opacity=\"1\"/>\n",
"<defs>\n",
" <clipPath id=\"clip4801\">\n",
" <rect x=\"480\" y=\"0\" width=\"1681\" height=\"1600\"/>\n",
" </clipPath>\n",
"</defs>\n",
"<path clip-path=\"url(#clip4800)\" d=\"\n",
"M136.76 1408.51 L2112.76 1408.51 L2112.76 125.179 L136.76 125.179 Z\n",
" \" fill=\"#ffffff\" fill-rule=\"evenodd\" fill-opacity=\"1\"/>\n",
"<defs>\n",
" <clipPath id=\"clip4802\">\n",
" <rect x=\"136\" y=\"125\" width=\"1977\" height=\"1284\"/>\n",
" </clipPath>\n",
"</defs>\n",
"<polyline clip-path=\"url(#clip4802)\" style=\"stroke:#000000; stroke-width:2; stroke-opacity:0.1; fill:none\" points=\"\n",
" 564.893,1408.51 564.893,125.179 \n",
" \"/>\n",
"<polyline clip-path=\"url(#clip4802)\" style=\"stroke:#000000; stroke-width:2; stroke-opacity:0.1; fill:none\" points=\"\n",
" 1004,1408.51 1004,125.179 \n",
" \"/>\n",
"<polyline clip-path=\"url(#clip4802)\" style=\"stroke:#000000; stroke-width:2; stroke-opacity:0.1; fill:none\" points=\"\n",
" 1443.11,1408.51 1443.11,125.179 \n",
" \"/>\n",
"<polyline clip-path=\"url(#clip4802)\" style=\"stroke:#000000; stroke-width:2; stroke-opacity:0.1; fill:none\" points=\"\n",
" 1882.22,1408.51 1882.22,125.179 \n",
" \"/>\n",
"<polyline clip-path=\"url(#clip4802)\" style=\"stroke:#000000; stroke-width:2; stroke-opacity:0.1; fill:none\" points=\"\n",
" 136.76,1326.71 2112.76,1326.71 \n",
" \"/>\n",
"<polyline clip-path=\"url(#clip4802)\" style=\"stroke:#000000; stroke-width:2; stroke-opacity:0.1; fill:none\" points=\"\n",
" 136.76,1107.16 2112.76,1107.16 \n",
" \"/>\n",
"<polyline clip-path=\"url(#clip4802)\" style=\"stroke:#000000; stroke-width:2; stroke-opacity:0.1; fill:none\" points=\"\n",
" 136.76,887.601 2112.76,887.601 \n",
" \"/>\n",
"<polyline clip-path=\"url(#clip4802)\" style=\"stroke:#000000; stroke-width:2; stroke-opacity:0.1; fill:none\" points=\"\n",
" 136.76,668.046 2112.76,668.046 \n",
" \"/>\n",
"<polyline clip-path=\"url(#clip4802)\" style=\"stroke:#000000; stroke-width:2; stroke-opacity:0.1; fill:none\" points=\"\n",
" 136.76,448.491 2112.76,448.491 \n",
" \"/>\n",
"<polyline clip-path=\"url(#clip4802)\" style=\"stroke:#000000; stroke-width:2; stroke-opacity:0.1; fill:none\" points=\"\n",
" 136.76,228.936 2112.76,228.936 \n",
" \"/>\n",
"<polyline clip-path=\"url(#clip4800)\" style=\"stroke:#000000; stroke-width:4; stroke-opacity:1; fill:none\" points=\"\n",
" 136.76,1408.51 2112.76,1408.51 \n",
" \"/>\n",
"<polyline clip-path=\"url(#clip4800)\" style=\"stroke:#000000; stroke-width:4; stroke-opacity:1; fill:none\" points=\"\n",
" 136.76,1408.51 136.76,125.179 \n",
" \"/>\n",
"<polyline clip-path=\"url(#clip4800)\" style=\"stroke:#000000; stroke-width:4; stroke-opacity:1; fill:none\" points=\"\n",
" 564.893,1408.51 564.893,1393.11 \n",
" \"/>\n",
"<polyline clip-path=\"url(#clip4800)\" style=\"stroke:#000000; stroke-width:4; stroke-opacity:1; fill:none\" points=\"\n",
" 1004,1408.51 1004,1393.11 \n",
" \"/>\n",
"<polyline clip-path=\"url(#clip4800)\" style=\"stroke:#000000; stroke-width:4; stroke-opacity:1; fill:none\" points=\"\n",
" 1443.11,1408.51 1443.11,1393.11 \n",
" \"/>\n",
"<polyline clip-path=\"url(#clip4800)\" style=\"stroke:#000000; stroke-width:4; stroke-opacity:1; fill:none\" points=\"\n",
" 1882.22,1408.51 1882.22,1393.11 \n",
" \"/>\n",
"<polyline clip-path=\"url(#clip4800)\" style=\"stroke:#000000; stroke-width:4; stroke-opacity:1; fill:none\" points=\"\n",
" 136.76,1326.71 160.472,1326.71 \n",
" \"/>\n",
"<polyline clip-path=\"url(#clip4800)\" style=\"stroke:#000000; stroke-width:4; stroke-opacity:1; fill:none\" points=\"\n",
" 136.76,1107.16 160.472,1107.16 \n",
" \"/>\n",
"<polyline clip-path=\"url(#clip4800)\" style=\"stroke:#000000; stroke-width:4; stroke-opacity:1; fill:none\" points=\"\n",
" 136.76,887.601 160.472,887.601 \n",
" \"/>\n",
"<polyline clip-path=\"url(#clip4800)\" style=\"stroke:#000000; stroke-width:4; stroke-opacity:1; fill:none\" points=\"\n",
" 136.76,668.046 160.472,668.046 \n",
" \"/>\n",
"<polyline clip-path=\"url(#clip4800)\" style=\"stroke:#000000; stroke-width:4; stroke-opacity:1; fill:none\" points=\"\n",
" 136.76,448.491 160.472,448.491 \n",
" \"/>\n",
"<polyline clip-path=\"url(#clip4800)\" style=\"stroke:#000000; stroke-width:4; stroke-opacity:1; fill:none\" points=\"\n",
" 136.76,228.936 160.472,228.936 \n",
" \"/>\n",
"<path clip-path=\"url(#clip4800)\" d=\"M 0 0 M546.039 1458.05 L562.358 1458.05 L562.358 1461.98 L540.414 1461.98 L540.414 1458.05 Q543.076 1455.29 547.659 1450.67 Q552.265 1446.01 553.446 1444.67 Q555.691 1442.15 556.571 1440.41 Q557.474 1438.65 557.474 1436.96 Q557.474 1434.21 555.529 1432.47 Q553.608 1430.73 550.506 1430.73 Q548.307 1430.73 545.853 1431.5 Q543.423 1432.26 540.645 1433.81 L540.645 1429.09 Q543.469 1427.96 545.923 1427.38 Q548.377 1426.8 550.414 1426.8 Q555.784 1426.8 558.978 1429.48 Q562.173 1432.17 562.173 1436.66 Q562.173 1438.79 561.363 1440.71 Q560.576 1442.61 558.469 1445.2 Q557.89 1445.87 554.789 1449.09 Q551.687 1452.29 546.039 1458.05 Z\" fill=\"#000000\" fill-rule=\"evenodd\" fill-opacity=\"1\" /><path clip-path=\"url(#clip4800)\" d=\"M 0 0 M577.427 1430.5 Q573.816 1430.5 571.988 1434.07 Q570.182 1437.61 570.182 1444.74 Q570.182 1451.85 571.988 1455.41 Q573.816 1458.95 577.427 1458.95 Q581.062 1458.95 582.867 1455.41 Q584.696 1451.85 584.696 1444.74 Q584.696 1437.61 582.867 1434.07 Q581.062 1430.5 577.427 1430.5 M577.427 1426.8 Q583.238 1426.8 586.293 1431.41 Q589.372 1435.99 589.372 1444.74 Q589.372 1453.47 586.293 1458.07 Q583.238 1462.66 577.427 1462.66 Q571.617 1462.66 568.539 1458.07 Q565.483 1453.47 565.483 1444.74 Q565.483 1435.99 568.539 1431.41 Q571.617 1426.8 577.427 1426.8 Z\" fill=\"#000000\" fill-rule=\"evenodd\" fill-opacity=\"1\" /><path clip-path=\"url(#clip4800)\" d=\"M 0 0 M993.505 1431.5 L981.7 1449.95 L993.505 1449.95 L993.505 1431.5 M992.278 1427.42 L998.158 1427.42 L998.158 1449.95 L1003.09 1449.95 L1003.09 1453.84 L998.158 1453.84 L998.158 1461.98 L993.505 1461.98 L993.505 1453.84 L977.903 1453.84 L977.903 1449.32 L992.278 1427.42 Z\" fill=\"#000000\" fill-rule=\"evenodd\" fill-opacity=\"1\" /><path clip-path=\"url(#clip4800)\" d=\"M 0 0 M1018.16 1430.5 Q1014.55 1430.5 1012.72 1434.07 Q1010.91 1437.61 1010.91 1444.74 Q1010.91 1451.85 1012.72 1455.41 Q1014.55 1458.95 1018.16 1458.95 Q1021.79 1458.95 1023.6 1455.41 Q1025.43 1451.85 1025.43 1444.74 Q1025.43 1437.61 1023.6 1434.07 Q1021.79 1430.5 1018.16 1430.5 M1018.16 1426.8 Q1023.97 1426.8 1027.02 1431.41 Q1030.1 1435.99 1030.1 1444.74 Q1030.1 1453.47 1027.02 1458.07 Q1023.97 1462.66 1018.16 1462.66 Q1012.35 1462.66 1009.27 1458.07 Q1006.21 1453.47 1006.21 1444.74 Q1006.21 1435.99 1009.27 1431.41 Q1012.35 1426.8 1018.16 1426.8 Z\" fill=\"#000000\" fill-rule=\"evenodd\" fill-opacity=\"1\" /><path clip-path=\"url(#clip4800)\" d=\"M 0 0 M1430.01 1442.84 Q1426.86 1442.84 1425.01 1444.99 Q1423.18 1447.15 1423.18 1450.9 Q1423.18 1454.62 1425.01 1456.8 Q1426.86 1458.95 1430.01 1458.95 Q1433.16 1458.95 1434.99 1456.8 Q1436.84 1454.62 1436.84 1450.9 Q1436.84 1447.15 1434.99 1444.99 Q1433.16 1442.84 1430.01 1442.84 M1439.29 1428.19 L1439.29 1432.45 Q1437.53 1431.61 1435.73 1431.17 Q1433.95 1430.73 1432.19 1430.73 Q1427.56 1430.73 1425.1 1433.86 Q1422.67 1436.98 1422.33 1443.3 Q1423.69 1441.29 1425.75 1440.23 Q1427.81 1439.14 1430.29 1439.14 Q1435.5 1439.14 1438.51 1442.31 Q1441.54 1445.46 1441.54 1450.9 Q1441.54 1456.22 1438.39 1459.44 Q1435.24 1462.66 1430.01 1462.66 Q1424.02 1462.66 1420.84 1458.07 Q1417.67 1453.47 1417.67 1444.74 Q1417.67 1436.54 1421.56 1431.68 Q1425.45 1426.8 1432 1426.8 Q1433.76 1426.8 1435.54 1427.15 Q1437.35 1427.49 1439.29 1428.19 Z\" fill=\"#000000\" fill-rule=\"evenodd\" fill-opacity=\"1\" /><path clip-path=\"url(#clip4800)\" d=\"M 0 0 M1456.61 1430.5 Q1453 1430.5 1451.17 1434.07 Q1449.36 1437.61 1449.36 1444.74 Q1449.36 1451.85 1451.17 1455.41 Q1453 1458.95 1456.61 1458.95 Q1460.24 1458.95 1462.05 1455.41 Q1463.88 1451.85 1463.88 1444.74 Q1463.88 1437.61 1462.05 1434.07 Q1460.24 1430.5 1456.61 1430.5 M1456.61 1426.8 Q1462.42 1426.8 1465.47 1431.41 Q1468.55 1435.99 1468.55 1444.74 Q1468.55 1453.47 1465.47 1458.07 Q1462.42 1462.66 1456.61 1462.66 Q1450.8 1462.66 1447.72 1458.07 Q1444.66 1453.47 1444.66 1444.74 Q1444.66 1435.99 1447.72 1431.41 Q1450.8 1426.8 1456.61 1426.8 Z\" fill=\"#000000\" fill-rule=\"evenodd\" fill-opacity=\"1\" /><path clip-path=\"url(#clip4800)\" d=\"M 0 0 M1868.72 1445.57 Q1865.38 1445.57 1863.46 1447.35 Q1861.56 1449.14 1861.56 1452.26 Q1861.56 1455.39 1863.46 1457.17 Q1865.38 1458.95 1868.72 1458.95 Q1872.05 1458.95 1873.97 1457.17 Q1875.89 1455.36 1875.89 1452.26 Q1875.89 1449.14 1873.97 1447.35 Q1872.07 1445.57 1868.72 1445.57 M1864.04 1443.58 Q1861.03 1442.84 1859.34 1440.78 Q1857.67 1438.72 1857.67 1435.76 Q1857.67 1431.61 1860.61 1429.21 Q1863.58 1426.8 1868.72 1426.8 Q1873.88 1426.8 1876.82 1429.21 Q1879.76 1431.61 1879.76 1435.76 Q1879.76 1438.72 1878.07 1440.78 Q1876.4 1442.84 1873.42 1443.58 Q1876.79 1444.37 1878.67 1446.66 Q1880.57 1448.95 1880.57 1452.26 Q1880.57 1457.29 1877.49 1459.97 Q1874.43 1462.66 1868.72 1462.66 Q1863 1462.66 1859.92 1459.97 Q1856.86 1457.29 1856.86 1452.26 Q1856.86 1448.95 1858.76 1446.66 Q1860.66 1444.37 1864.04 1443.58 M1862.33 1436.2 Q1862.33 1438.88 1863.99 1440.39 Q1865.68 1441.89 1868.72 1441.89 Q1871.73 1441.89 1873.42 1440.39 Q1875.13 1438.88 1875.13 1436.2 Q1875.13 1433.51 1873.42 1432.01 Q1871.73 1430.5 1868.72 1430.5 Q1865.68 1430.5 1863.99 1432.01 Q1862.33 1433.51 1862.33 1436.2 Z\" fill=\"#000000\" fill-rule=\"evenodd\" fill-opacity=\"1\" /><path clip-path=\"url(#clip4800)\" d=\"M 0 0 M1895.64 1430.5 Q1892.03 1430.5 1890.2 1434.07 Q1888.39 1437.61 1888.39 1444.74 Q1888.39 1451.85 1890.2 1455.41 Q1892.03 1458.95 1895.64 1458.95 Q1899.27 1458.95 1901.08 1455.41 Q1902.91 1451.85 1902.91 1444.74 Q1902.91 1437.61 1901.08 1434.07 Q1899.27 1430.5 1895.64 1430.5 M1895.64 1426.8 Q1901.45 1426.8 1904.5 1431.41 Q1907.58 1435.99 1907.58 1444.74 Q1907.58 1453.47 1904.5 1458.07 Q1901.45 1462.66 1895.64 1462.66 Q1889.83 1462.66 1886.75 1458.07 Q1883.69 1453.47 1883.69 1444.74 Q1883.69 1435.99 1886.75 1431.41 Q1889.83 1426.8 1895.64 1426.8 Z\" fill=\"#000000\" fill-rule=\"evenodd\" fill-opacity=\"1\" /><path clip-path=\"url(#clip4800)\" d=\"M 0 0 M47.4829 1329.11 L59.9597 1329.11 L59.9597 1332.9 L47.4829 1332.9 L47.4829 1329.11 Z\" fill=\"#000000\" fill-rule=\"evenodd\" fill-opacity=\"1\" /><path clip-path=\"url(#clip4800)\" d=\"M 0 0 M65.8393 1340.06 L73.4782 1340.06 L73.4782 1313.69 L65.168 1315.36 L65.168 1311.1 L73.4319 1309.43 L78.1078 1309.43 L78.1078 1340.06 L85.7466 1340.06 L85.7466 1343.99 L65.8393 1343.99 L65.8393 1340.06 Z\" fill=\"#000000\" fill-rule=\"evenodd\" fill-opacity=\"1\" /><path clip-path=\"url(#clip4800)\" d=\"M 0 0 M100.816 1312.51 Q97.2049 1312.51 95.3762 1316.07 Q93.5707 1319.62 93.5707 1326.75 Q93.5707 1333.85 95.3762 1337.42 Q97.2049 1340.96 100.816 1340.96 Q104.45 1340.96 106.256 1337.42 Q108.084 1333.85 108.084 1326.75 Q108.084 1319.62 106.256 1316.07 Q104.45 1312.51 100.816 1312.51 M100.816 1308.81 Q106.626 1308.81 109.682 1313.41 Q112.76 1318 112.76 1326.75 Q112.76 1335.47 109.682 1340.08 Q106.626 1344.66 100.816 1344.66 Q95.0058 1344.66 91.9272 1340.08 Q88.8716 1335.47 88.8716 1326.75 Q88.8716 1318 91.9272 1313.41 Q95.0058 1308.81 100.816 1308.81 Z\" fill=\"#000000\" fill-rule=\"evenodd\" fill-opacity=\"1\" /><path clip-path=\"url(#clip4800)\" d=\"M 0 0 M100.816 1092.96 Q97.2049 1092.96 95.3762 1096.52 Q93.5707 1100.06 93.5707 1107.19 Q93.5707 1114.3 95.3762 1117.86 Q97.2049 1121.4 100.816 1121.4 Q104.45 1121.4 106.256 1117.86 Q108.084 1114.3 108.084 1107.19 Q108.084 1100.06 106.256 1096.52 Q104.45 1092.96 100.816 1092.96 M100.816 1089.25 Q106.626 1089.25 109.682 1093.86 Q112.76 1098.44 112.76 1107.19 Q112.76 1115.92 109.682 1120.52 Q106.626 1125.11 100.816 1125.11 Q95.0058 1125.11 91.9272 1120.52 Q88.8716 1115.92 88.8716 1107.19 Q88.8716 1098.44 91.9272 1093.86 Q95.0058 1089.25 100.816 1089.25 Z\" fill=\"#000000\" fill-rule=\"evenodd\" fill-opacity=\"1\" /><path clip-path=\"url(#clip4800)\" d=\"M 0 0 M65.8393 900.946 L73.4782 900.946 L73.4782 874.581 L65.168 876.247 L65.168 871.988 L73.4319 870.321 L78.1078 870.321 L78.1078 900.946 L85.7466 900.946 L85.7466 904.881 L65.8393 904.881 L65.8393 900.946 Z\" fill=\"#000000\" fill-rule=\"evenodd\" fill-opacity=\"1\" /><path clip-path=\"url(#clip4800)\" d=\"M 0 0 M100.816 873.4 Q97.2049 873.4 95.3762 876.965 Q93.5707 880.506 93.5707 887.636 Q93.5707 894.742 95.3762 898.307 Q97.2049 901.849 100.816 901.849 Q104.45 901.849 106.256 898.307 Q108.084 894.742 108.084 887.636 Q108.084 880.506 106.256 876.965 Q104.45 873.4 100.816 873.4 M100.816 869.696 Q106.626 869.696 109.682 874.303 Q112.76 878.886 112.76 887.636 Q112.76 896.363 109.682 900.969 Q106.626 905.553 100.816 905.553 Q95.0058 905.553 91.9272 900.969 Q88.8716 896.363 88.8716 887.636 Q88.8716 878.886 91.9272 874.303 Q95.0058 869.696 100.816 869.696 Z\" fill=\"#000000\" fill-rule=\"evenodd\" fill-opacity=\"1\" /><path clip-path=\"url(#clip4800)\" d=\"M 0 0 M69.4273 681.391 L85.7466 681.391 L85.7466 685.326 L63.8023 685.326 L63.8023 681.391 Q66.4643 678.636 71.0476 674.007 Q75.6541 669.354 76.8346 668.011 Q79.08 665.488 79.9596 663.752 Q80.8624 661.993 80.8624 660.303 Q80.8624 657.549 78.918 655.812 Q76.9967 654.076 73.8948 654.076 Q71.6958 654.076 69.2421 654.84 Q66.8115 655.604 64.0338 657.155 L64.0338 652.433 Q66.8578 651.299 69.3115 650.72 Q71.7652 650.141 73.8023 650.141 Q79.1726 650.141 82.367 652.826 Q85.5614 655.512 85.5614 660.002 Q85.5614 662.132 84.7513 664.053 Q83.9642 665.951 81.8578 668.544 Q81.2791 669.215 78.1772 672.433 Q75.0754 675.627 69.4273 681.391 Z\" fill=\"#000000\" fill-rule=\"evenodd\" fill-opacity=\"1\" /><path clip-path=\"url(#clip4800)\" d=\"M 0 0 M100.816 653.845 Q97.2049 653.845 95.3762 657.41 Q93.5707 660.951 93.5707 668.081 Q93.5707 675.187 95.3762 678.752 Q97.2049 682.294 100.816 682.294 Q104.45 682.294 106.256 678.752 Q108.084 675.187 108.084 668.081 Q108.084 660.951 106.256 657.41 Q104.45 653.845 100.816 653.845 M100.816 650.141 Q106.626 650.141 109.682 654.748 Q112.76 659.331 112.76 668.081 Q112.76 676.808 109.682 681.414 Q106.626 685.998 100.816 685.998 Q95.0058 685.998 91.9272 681.414 Q88.8716 676.808 88.8716 668.081 Q88.8716 659.331 91.9272 654.748 Q95.0058 650.141 100.816 650.141 Z\" fill=\"#000000\" fill-rule=\"evenodd\" fill-opacity=\"1\" /><path clip-path=\"url(#clip4800)\" d=\"M 0 0 M78.617 447.137 Q81.9735 447.855 83.8485 450.123 Q85.7466 452.392 85.7466 455.725 Q85.7466 460.841 82.2281 463.642 Q78.7096 466.442 72.2282 466.442 Q70.0523 466.442 67.7375 466.003 Q65.4458 465.586 62.9921 464.729 L62.9921 460.216 Q64.9366 461.35 67.2514 461.929 Q69.5662 462.507 72.0893 462.507 Q76.4874 462.507 78.7791 460.771 Q81.0939 459.035 81.0939 455.725 Q81.0939 452.669 78.9411 450.956 Q76.8115 449.22 72.9921 449.22 L68.9643 449.22 L68.9643 445.378 L73.1773 445.378 Q76.6263 445.378 78.455 444.012 Q80.2837 442.623 80.2837 440.031 Q80.2837 437.369 78.3856 435.956 Q76.5106 434.521 72.9921 434.521 Q71.0708 434.521 68.8717 434.938 Q66.6727 435.355 64.0338 436.234 L64.0338 432.068 Q66.6958 431.327 69.0106 430.957 Q71.3486 430.586 73.4087 430.586 Q78.7328 430.586 81.8346 433.017 Q84.9365 435.424 84.9365 439.544 Q84.9365 442.415 83.2929 444.406 Q81.6494 446.373 78.617 447.137 Z\" fill=\"#000000\" fill-rule=\"evenodd\" fill-opacity=\"1\" /><path clip-path=\"url(#clip4800)\" d=\"M 0 0 M100.816 434.29 Q97.2049 434.29 95.3762 437.855 Q93.5707 441.396 93.5707 448.526 Q93.5707 455.632 95.3762 459.197 Q97.2049 462.739 100.816 462.739 Q104.45 462.739 106.256 459.197 Q108.084 455.632 108.084 448.526 Q108.084 441.396 106.256 437.855 Q104.45 434.29 100.816 434.29 M100.816 430.586 Q106.626 430.586 109.682 435.193 Q112.76 439.776 112.76 448.526 Q112.76 457.253 109.682 461.859 Q106.626 466.442 100.816 466.442 Q95.0058 466.442 91.9272 461.859 Q88.8716 457.253 88.8716 448.526 Q88.8716 439.776 91.9272 435.193 Q95.0058 430.586 100.816 430.586 Z\" fill=\"#000000\" fill-rule=\"evenodd\" fill-opacity=\"1\" /><path clip-path=\"url(#clip4800)\" d=\"M 0 0 M76.1634 215.73 L64.3579 234.179 L76.1634 234.179 L76.1634 215.73 M74.9365 211.656 L80.8161 211.656 L80.8161 234.179 L85.7466 234.179 L85.7466 238.068 L80.8161 238.068 L80.8161 246.216 L76.1634 246.216 L76.1634 238.068 L60.5616 238.068 L60.5616 233.554 L74.9365 211.656 Z\" fill=\"#000000\" fill-rule=\"evenodd\" fill-opacity=\"1\" /><path clip-path=\"url(#clip4800)\" d=\"M 0 0 M100.816 214.735 Q97.2049 214.735 95.3762 218.3 Q93.5707 221.841 93.5707 228.971 Q93.5707 236.077 95.3762 239.642 Q97.2049 243.184 100.816 243.184 Q104.45 243.184 106.256 239.642 Q108.084 236.077 108.084 228.971 Q108.084 221.841 106.256 218.3 Q104.45 214.735 100.816 214.735 M100.816 211.031 Q106.626 211.031 109.682 215.638 Q112.76 220.221 112.76 228.971 Q112.76 237.698 109.682 242.304 Q106.626 246.887 100.816 246.887 Q95.0058 246.887 91.9272 242.304 Q88.8716 237.698 88.8716 228.971 Q88.8716 220.221 91.9272 215.638 Q95.0058 211.031 100.816 211.031 Z\" fill=\"#000000\" fill-rule=\"evenodd\" fill-opacity=\"1\" /><g clip-path=\"url(#clip4802)\">\n",
"<image width=\"1976\" height=\"659\" xlink:href=\"data:image/png;base64,\n",
"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\n",
"AAAARjke9rNXADiLzXY3e4XpXHADAAAAAAAAkCBwAwAAAAAAAJAgcAMAAAAAAACQIHADAAAAAAAA\n",
"kCBwAwAAAAAAAJAgcAMAAAAAAACQIHADAAAAAAAAkCBwAwAAAAAAAJAgcAMAAAAAAACQIHADAAAA\n",
"AAAAkCBwAwAAAAAAAJAgcAMAAAAAAACQIHADAAAAAAAAkCBwAwAAAAAAAJAgcAMAAAAAAACQIHAD\n",
"AAAAAAAAkCBwAwAAAAAAAJAgcAMAAAAAAACQIHADAAAAAAAAkCBwAwAAAAAAAJAgcAMAAAAAAACQ\n",
"IHADAAAAAAAAkCBwAwAAAAAAAJAgcAMAAAAAAACQIHADAAAAAAAAkCBwAwAAAAAAAJAgcAMAAAAA\n",
"AACQIHADAAAAAAAAkCBwAwAAAAAAAJAgcAMAAAAAAACQIHADAAAAAAAAkCBwAwAAAAAAAJAgcAMA\n",
"AAAAAACQIHADAAAAAAAAkCBwAwAAAAAAAJAgcAMAAAAAAACQIHADAAAAAAAAkCBwAwAAAAAAAJAg\n",
"cAMAAAAAAACQIHADAAAAAAAAkCBwAwAAAAAAAJAgcAMAAAAAAACQIHADAAAAAAAAkLC+vLo9zV4C\n",
"AAAAAAAAAP7GBTcAAAAAAAAACQI3AAAAAAAAAAkCNwAAAAAAAAAJAjcAAAAAAAAACQI3AAAAAAAA\n",
"AAkCNwAAAAAAAAAJAjcAAAAAAAAACQI3AJA/mf4AAACFSURBVAAAAAAAAAkCNwAAAAAAAAAJAjcA\n",
"AAAAAAAACQI3AAAAAAAAAAkCNwAAAAAAAAAJAjcAAAAAAAAACQI3AAAAAAAAAAkCNwAAAAAAAAAJ\n",
"AjcAAAAAAAAACQI3AAAAAAAAAAkCNwAAAAAAAAAJAjcAAAAAAAAACQI3AAAAAAAAAAk/AcbCzkNp\n",
"dr4vAAAAAElFTkSuQmCC\n",
"\" transform=\"translate(137, 438)\"/>\n",
"</g>\n",
"<defs>\n",
" <clipPath id=\"clip4803\">\n",
" <rect x=\"2160\" y=\"125\" width=\"73\" height=\"1284\"/>\n",
" </clipPath>\n",
"</defs>\n",
"<g clip-path=\"url(#clip4803)\">\n",
"<image width=\"72\" height=\"1283\" xlink:href=\"data:image/png;base64,\n",
"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\n",
"\" transform=\"translate(2161, 125)\"/>\n",
"</g>\n",
"<path clip-path=\"url(#clip4800)\" d=\"M 0 0 M2280.7 1262.35 Q2277.09 1262.35 2275.26 1265.91 Q2273.45 1269.46 2273.45 1276.59 Q2273.45 1283.69 2275.26 1287.26 Q2277.09 1290.8 2280.7 1290.8 Q2284.33 1290.8 2286.14 1287.26 Q2287.97 1283.69 2287.97 1276.59 Q2287.97 1269.46 2286.14 1265.91 Q2284.33 1262.35 2280.7 1262.35 M2280.7 1258.65 Q2286.51 1258.65 2289.57 1263.25 Q2292.64 1267.84 2292.64 1276.59 Q2292.64 1285.31 2289.57 1289.92 Q2286.51 1294.5 2280.7 1294.5 Q2274.89 1294.5 2271.81 1289.92 Q2268.76 1285.31 2268.76 1276.59 Q2268.76 1267.84 2271.81 1263.25 Q2274.89 1258.65 2280.7 1258.65 Z\" fill=\"#000000\" fill-rule=\"evenodd\" fill-opacity=\"1\" /><path clip-path=\"url(#clip4800)\" d=\"M 0 0 M2297.71 1287.95 L2302.6 1287.95 L2302.6 1293.83 L2297.71 1293.83 L2297.71 1287.95 Z\" fill=\"#000000\" fill-rule=\"evenodd\" fill-opacity=\"1\" /><path clip-path=\"url(#clip4800)\" d=\"M 0 0 M2308.48 1289.9 L2316.12 1289.9 L2316.12 1263.53 L2307.81 1265.2 L2307.81 1260.94 L2316.07 1259.27 L2320.75 1259.27 L2320.75 1289.9 L2328.39 1289.9 L2328.39 1293.83 L2308.48 1293.83 L2308.48 1289.9 Z\" fill=\"#000000\" fill-rule=\"evenodd\" fill-opacity=\"1\" /><path clip-path=\"url(#clip4800)\" d=\"M 0 0 M2280.7 1134.02 Q2277.09 1134.02 2275.26 1137.58 Q2273.45 1141.12 2273.45 1148.25 Q2273.45 1155.36 2275.26 1158.92 Q2277.09 1162.46 2280.7 1162.46 Q2284.33 1162.46 2286.14 1158.92 Q2287.97 1155.36 2287.97 1148.25 Q2287.97 1141.12 2286.14 1137.58 Q2284.33 1134.02 2280.7 1134.02 M2280.7 1130.31 Q2286.51 1130.31 2289.57 1134.92 Q2292.64 1139.5 2292.64 1148.25 Q2292.64 1156.98 2289.57 1161.59 Q2286.51 1166.17 2280.7 1166.17 Q2274.89 1166.17 2271.81 1161.59 Q2268.76 1156.98 2268.76 1148.25 Q2268.76 1139.5 2271.81 1134.92 Q2274.89 1130.31 2280.7 1130.31 Z\" fill=\"#000000\" fill-rule=\"evenodd\" fill-opacity=\"1\" /><path clip-path=\"url(#clip4800)\" d=\"M 0 0 M2297.71 1159.62 L2302.6 1159.62 L2302.6 1165.5 L2297.71 1165.5 L2297.71 1159.62 Z\" fill=\"#000000\" fill-rule=\"evenodd\" fill-opacity=\"1\" /><path clip-path=\"url(#clip4800)\" d=\"M 0 0 M2311.7 1161.56 L2328.01 1161.56 L2328.01 1165.5 L2306.07 1165.5 L2306.07 1161.56 Q2308.73 1158.81 2313.32 1154.18 Q2317.92 1149.52 2319.1 1148.18 Q2321.35 1145.66 2322.23 1143.92 Q2323.13 1142.16 2323.13 1140.47 Q2323.13 1137.72 2321.19 1135.98 Q2319.26 1134.25 2316.16 1134.25 Q2313.96 1134.25 2311.51 1135.01 Q2309.08 1135.78 2306.3 1137.33 L2306.3 1132.6 Q2309.13 1131.47 2311.58 1130.89 Q2314.03 1130.31 2316.07 1130.31 Q2321.44 1130.31 2324.64 1133 Q2327.83 1135.68 2327.83 1140.17 Q2327.83 1142.3 2327.02 1144.22 Q2326.23 1146.12 2324.13 1148.71 Q2323.55 1149.39 2320.45 1152.6 Q2317.34 1155.8 2311.7 1161.56 Z\" fill=\"#000000\" fill-rule=\"evenodd\" fill-opacity=\"1\" /><path clip-path=\"url(#clip4800)\" d=\"M 0 0 M2280.7 1005.68 Q2277.09 1005.68 2275.26 1009.25 Q2273.45 1012.79 2273.45 1019.92 Q2273.45 1027.02 2275.26 1030.59 Q2277.09 1034.13 2280.7 1034.13 Q2284.33 1034.13 2286.14 1030.59 Q2287.97 1027.02 2287.97 1019.92 Q2287.97 1012.79 2286.14 1009.25 Q2284.33 1005.68 2280.7 1005.68 M2280.7 1001.98 Q2286.51 1001.98 2289.57 1006.59 Q2292.64 1011.17 2292.64 1019.92 Q2292.64 1028.65 2289.57 1033.25 Q2286.51 1037.84 2280.7 1037.84 Q2274.89 1037.84 2271.81 1033.25 Q2268.76 1028.65 2268.76 1019.92 Q2268.76 1011.17 2271.81 1006.59 Q2274.89 1001.98 2280.7 1001.98 Z\" fill=\"#000000\" fill-rule=\"evenodd\" fill-opacity=\"1\" /><path clip-path=\"url(#clip4800)\" d=\"M 0 0 M2297.71 1031.28 L2302.6 1031.28 L2302.6 1037.16 L2297.71 1037.16 L2297.71 1031.28 Z\" fill=\"#000000\" fill-rule=\"evenodd\" fill-opacity=\"1\" /><path clip-path=\"url(#clip4800)\" d=\"M 0 0 M2321.83 1018.53 Q2325.19 1019.25 2327.07 1021.52 Q2328.96 1023.78 2328.96 1027.12 Q2328.96 1032.23 2325.45 1035.03 Q2321.93 1037.84 2315.45 1037.84 Q2313.27 1037.84 2310.95 1037.4 Q2308.66 1036.98 2306.21 1036.12 L2306.21 1031.61 Q2308.15 1032.74 2310.47 1033.32 Q2312.78 1033.9 2315.31 1033.9 Q2319.7 1033.9 2322 1032.16 Q2324.31 1030.43 2324.31 1027.12 Q2324.31 1024.06 2322.16 1022.35 Q2320.03 1020.61 2316.21 1020.61 L2312.18 1020.61 L2312.18 1016.77 L2316.39 1016.77 Q2319.84 1016.77 2321.67 1015.4 Q2323.5 1014.02 2323.5 1011.42 Q2323.5 1008.76 2321.6 1007.35 Q2319.73 1005.91 2316.21 1005.91 Q2314.29 1005.91 2312.09 1006.33 Q2309.89 1006.75 2307.25 1007.63 L2307.25 1003.46 Q2309.91 1002.72 2312.23 1002.35 Q2314.57 1001.98 2316.63 1001.98 Q2321.95 1001.98 2325.05 1004.41 Q2328.15 1006.82 2328.15 1010.94 Q2328.15 1013.81 2326.51 1015.8 Q2324.87 1017.77 2321.83 1018.53 Z\" fill=\"#000000\" fill-rule=\"evenodd\" fill-opacity=\"1\" /><path clip-path=\"url(#clip4800)\" d=\"M 0 0 M2280.7 877.349 Q2277.09 877.349 2275.26 880.914 Q2273.45 884.456 2273.45 891.585 Q2273.45 898.692 2275.26 902.256 Q2277.09 905.798 2280.7 905.798 Q2284.33 905.798 2286.14 902.256 Q2287.97 898.692 2287.97 891.585 Q2287.97 884.456 2286.14 880.914 Q2284.33 877.349 2280.7 877.349 M2280.7 873.645 Q2286.51 873.645 2289.57 878.252 Q2292.64 882.835 2292.64 891.585 Q2292.64 900.312 2289.57 904.918 Q2286.51 909.502 2280.7 909.502 Q2274.89 909.502 2271.81 904.918 Q2268.76 900.312 2268.76 891.585 Q2268.76 882.835 2271.81 878.252 Q2274.89 873.645 2280.7 873.645 Z\" fill=\"#000000\" fill-rule=\"evenodd\" fill-opacity=\"1\" /><path clip-path=\"url(#clip4800)\" d=\"M 0 0 M2297.71 902.951 L2302.6 902.951 L2302.6 908.83 L2297.71 908.83 L2297.71 902.951 Z\" fill=\"#000000\" fill-rule=\"evenodd\" fill-opacity=\"1\" /><path clip-path=\"url(#clip4800)\" d=\"M 0 0 M2320.51 878.345 L2308.71 896.794 L2320.51 896.794 L2320.51 878.345 M2319.29 874.27 L2325.17 874.27 L2325.17 896.794 L2330.1 896.794 L2330.1 900.682 L2325.17 900.682 L2325.17 908.83 L2320.51 908.83 L2320.51 900.682 L2304.91 900.682 L2304.91 896.169 L2319.29 874.27 Z\" fill=\"#000000\" fill-rule=\"evenodd\" fill-opacity=\"1\" /><path clip-path=\"url(#clip4800)\" d=\"M 0 0 M2280.7 749.016 Q2277.09 749.016 2275.26 752.581 Q2273.45 756.122 2273.45 763.252 Q2273.45 770.358 2275.26 773.923 Q2277.09 777.465 2280.7 777.465 Q2284.33 777.465 2286.14 773.923 Q2287.97 770.358 2287.97 763.252 Q2287.97 756.122 2286.14 752.581 Q2284.33 749.016 2280.7 749.016 M2280.7 745.312 Q2286.51 745.312 2289.57 749.919 Q2292.64 754.502 2292.64 763.252 Q2292.64 771.979 2289.57 776.585 Q2286.51 781.168 2280.7 781.168 Q2274.89 781.168 2271.81 776.585 Q2268.76 771.979 2268.76 763.252 Q2268.76 754.502 2271.81 749.919 Q2274.89 745.312 2280.7 745.312 Z\" fill=\"#000000\" fill-rule=\"evenodd\" fill-opacity=\"1\" /><path clip-path=\"url(#clip4800)\" d=\"M 0 0 M2297.71 774.618 L2302.6 774.618 L2302.6 780.497 L2297.71 780.497 L2297.71 774.618 Z\" fill=\"#000000\" fill-rule=\"evenodd\" fill-opacity=\"1\" /><path clip-path=\"url(#clip4800)\" d=\"M 0 0 M2307.71 745.937 L2326.07 745.937 L2326.07 749.872 L2312 749.872 L2312 758.345 Q2313.01 757.997 2314.03 757.835 Q2315.05 757.65 2316.07 757.65 Q2321.86 757.65 2325.24 760.821 Q2328.62 763.993 2328.62 769.409 Q2328.62 774.988 2325.14 778.09 Q2321.67 781.168 2315.35 781.168 Q2313.18 781.168 2310.91 780.798 Q2308.66 780.428 2306.26 779.687 L2306.26 774.988 Q2308.34 776.122 2310.56 776.678 Q2312.78 777.233 2315.26 777.233 Q2319.26 777.233 2321.6 775.127 Q2323.94 773.02 2323.94 769.409 Q2323.94 765.798 2321.6 763.692 Q2319.26 761.585 2315.26 761.585 Q2313.39 761.585 2311.51 762.002 Q2309.66 762.419 2307.71 763.298 L2307.71 745.937 Z\" fill=\"#000000\" fill-rule=\"evenodd\" fill-opacity=\"1\" /><path clip-path=\"url(#clip4800)\" d=\"M 0 0 M2280.7 620.683 Q2277.09 620.683 2275.26 624.247 Q2273.45 627.789 2273.45 634.919 Q2273.45 642.025 2275.26 645.59 Q2277.09 649.131 2280.7 649.131 Q2284.33 649.131 2286.14 645.59 Q2287.97 642.025 2287.97 634.919 Q2287.97 627.789 2286.14 624.247 Q2284.33 620.683 2280.7 620.683 M2280.7 616.979 Q2286.51 616.979 2289.57 621.585 Q2292.64 626.169 2292.64 634.919 Q2292.64 643.645 2289.57 648.252 Q2286.51 652.835 2280.7 652.835 Q2274.89 652.835 2271.81 648.252 Q2268.76 643.645 2268.76 634.919 Q2268.76 626.169 2271.81 621.585 Q2274.89 616.979 2280.7 616.979 Z\" fill=\"#000000\" fill-rule=\"evenodd\" fill-opacity=\"1\" /><path clip-path=\"url(#clip4800)\" d=\"M 0 0 M2297.71 646.284 L2302.6 646.284 L2302.6 652.164 L2297.71 652.164 L2297.71 646.284 Z\" fill=\"#000000\" fill-rule=\"evenodd\" fill-opacity=\"1\" /><path clip-path=\"url(#clip4800)\" d=\"M 0 0 M2318.25 633.02 Q2315.1 633.02 2313.25 635.173 Q2311.42 637.326 2311.42 641.076 Q2311.42 644.803 2313.25 646.979 Q2315.1 649.131 2318.25 649.131 Q2321.39 649.131 2323.22 646.979 Q2325.08 644.803 2325.08 641.076 Q2325.08 637.326 2323.22 635.173 Q2321.39 633.02 2318.25 633.02 M2327.53 618.368 L2327.53 622.627 Q2325.77 621.794 2323.96 621.354 Q2322.18 620.914 2320.42 620.914 Q2315.79 620.914 2313.34 624.039 Q2310.91 627.164 2310.56 633.483 Q2311.93 631.47 2313.99 630.405 Q2316.05 629.317 2318.52 629.317 Q2323.73 629.317 2326.74 632.488 Q2329.77 635.636 2329.77 641.076 Q2329.77 646.4 2326.63 649.618 Q2323.48 652.835 2318.25 652.835 Q2312.25 652.835 2309.08 648.252 Q2305.91 643.645 2305.91 634.919 Q2305.91 626.724 2309.8 621.863 Q2313.69 616.979 2320.24 616.979 Q2322 616.979 2323.78 617.326 Q2325.58 617.673 2327.53 618.368 Z\" fill=\"#000000\" fill-rule=\"evenodd\" fill-opacity=\"1\" /><path clip-path=\"url(#clip4800)\" d=\"M 0 0 M2280.7 492.349 Q2277.09 492.349 2275.26 495.914 Q2273.45 499.456 2273.45 506.585 Q2273.45 513.692 2275.26 517.257 Q2277.09 520.798 2280.7 520.798 Q2284.33 520.798 2286.14 517.257 Q2287.97 513.692 2287.97 506.585 Q2287.97 499.456 2286.14 495.914 Q2284.33 492.349 2280.7 492.349 M2280.7 488.646 Q2286.51 488.646 2289.57 493.252 Q2292.64 497.835 2292.64 506.585 Q2292.64 515.312 2289.57 519.919 Q2286.51 524.502 2280.7 524.502 Q2274.89 524.502 2271.81 519.919 Q2268.76 515.312 2268.76 506.585 Q2268.76 497.835 2271.81 493.252 Q2274.89 488.646 2280.7 488.646 Z\" fill=\"#000000\" fill-rule=\"evenodd\" fill-opacity=\"1\" /><path clip-path=\"url(#clip4800)\" d=\"M 0 0 M2297.71 517.951 L2302.6 517.951 L2302.6 523.831 L2297.71 523.831 L2297.71 517.951 Z\" fill=\"#000000\" fill-rule=\"evenodd\" fill-opacity=\"1\" /><path clip-path=\"url(#clip4800)\" d=\"M 0 0 M2306.49 489.271 L2328.71 489.271 L2328.71 491.261 L2316.16 523.831 L2311.28 523.831 L2323.08 493.206 L2306.49 493.206 L2306.49 489.271 Z\" fill=\"#000000\" fill-rule=\"evenodd\" fill-opacity=\"1\" /><path clip-path=\"url(#clip4800)\" d=\"M 0 0 M2280.7 364.016 Q2277.09 364.016 2275.26 367.581 Q2273.45 371.122 2273.45 378.252 Q2273.45 385.358 2275.26 388.923 Q2277.09 392.465 2280.7 392.465 Q2284.33 392.465 2286.14 388.923 Q2287.97 385.358 2287.97 378.252 Q2287.97 371.122 2286.14 367.581 Q2284.33 364.016 2280.7 364.016 M2280.7 360.312 Q2286.51 360.312 2289.57 364.919 Q2292.64 369.502 2292.64 378.252 Q2292.64 386.979 2289.57 391.585 Q2286.51 396.169 2280.7 396.169 Q2274.89 396.169 2271.81 391.585 Q2268.76 386.979 2268.76 378.252 Q2268.76 369.502 2271.81 364.919 Q2274.89 360.312 2280.7 360.312 Z\" fill=\"#000000\" fill-rule=\"evenodd\" fill-opacity=\"1\" /><path clip-path=\"url(#clip4800)\" d=\"M 0 0 M2297.71 389.618 L2302.6 389.618 L2302.6 395.497 L2297.71 395.497 L2297.71 389.618 Z\" fill=\"#000000\" fill-rule=\"evenodd\" fill-opacity=\"1\" /><path clip-path=\"url(#clip4800)\" d=\"M 0 0 M2317.67 379.085 Q2314.33 379.085 2312.41 380.868 Q2310.51 382.65 2310.51 385.775 Q2310.51 388.9 2312.41 390.682 Q2314.33 392.465 2317.67 392.465 Q2321 392.465 2322.92 390.682 Q2324.84 388.877 2324.84 385.775 Q2324.84 382.65 2322.92 380.868 Q2321.02 379.085 2317.67 379.085 M2312.99 377.095 Q2309.98 376.354 2308.29 374.294 Q2306.63 372.234 2306.63 369.271 Q2306.63 365.127 2309.57 362.72 Q2312.53 360.312 2317.67 360.312 Q2322.83 360.312 2325.77 362.72 Q2328.71 365.127 2328.71 369.271 Q2328.71 372.234 2327.02 374.294 Q2325.35 376.354 2322.37 377.095 Q2325.75 377.882 2327.62 380.173 Q2329.52 382.465 2329.52 385.775 Q2329.52 390.798 2326.44 393.483 Q2323.39 396.169 2317.67 396.169 Q2311.95 396.169 2308.87 393.483 Q2305.82 390.798 2305.82 385.775 Q2305.82 382.465 2307.71 380.173 Q2309.61 377.882 2312.99 377.095 M2311.28 369.71 Q2311.28 372.396 2312.95 373.9 Q2314.64 375.405 2317.67 375.405 Q2320.68 375.405 2322.37 373.9 Q2324.08 372.396 2324.08 369.71 Q2324.08 367.025 2322.37 365.521 Q2320.68 364.016 2317.67 364.016 Q2314.64 364.016 2312.95 365.521 Q2311.28 367.025 2311.28 369.71 Z\" fill=\"#000000\" fill-rule=\"evenodd\" fill-opacity=\"1\" /><path clip-path=\"url(#clip4800)\" d=\"M 0 0 M2280.7 235.683 Q2277.09 235.683 2275.26 239.247 Q2273.45 242.789 2273.45 249.919 Q2273.45 257.025 2275.26 260.59 Q2277.09 264.132 2280.7 264.132 Q2284.33 264.132 2286.14 260.59 Q2287.97 257.025 2287.97 249.919 Q2287.97 242.789 2286.14 239.247 Q2284.33 235.683 2280.7 235.683 M2280.7 231.979 Q2286.51 231.979 2289.57 236.585 Q2292.64 241.169 2292.64 249.919 Q2292.64 258.646 2289.57 263.252 Q2286.51 267.835 2280.7 267.835 Q2274.89 267.835 2271.81 263.252 Q2268.76 258.646 2268.76 249.919 Q2268.76 241.169 2271.81 236.585 Q2274.89 231.979 2280.7 231.979 Z\" fill=\"#000000\" fill-rule=\"evenodd\" fill-opacity=\"1\" /><path clip-path=\"url(#clip4800)\" d=\"M 0 0 M2297.71 261.284 L2302.6 261.284 L2302.6 267.164 L2297.71 267.164 L2297.71 261.284 Z\" fill=\"#000000\" fill-rule=\"evenodd\" fill-opacity=\"1\" /><path clip-path=\"url(#clip4800)\" d=\"M 0 0 M2307.81 266.446 L2307.81 262.187 Q2309.57 263.02 2311.37 263.46 Q2313.18 263.9 2314.91 263.9 Q2319.54 263.9 2321.97 260.798 Q2324.43 257.673 2324.77 251.331 Q2323.43 253.321 2321.37 254.386 Q2319.31 255.451 2316.81 255.451 Q2311.63 255.451 2308.59 252.326 Q2305.58 249.178 2305.58 243.738 Q2305.58 238.414 2308.73 235.197 Q2311.88 231.979 2317.11 231.979 Q2323.11 231.979 2326.26 236.585 Q2329.43 241.169 2329.43 249.919 Q2329.43 258.09 2325.54 262.974 Q2321.67 267.835 2315.12 267.835 Q2313.36 267.835 2311.56 267.488 Q2309.75 267.141 2307.81 266.446 M2317.11 251.794 Q2320.26 251.794 2322.09 249.641 Q2323.94 247.488 2323.94 243.738 Q2323.94 240.011 2322.09 237.859 Q2320.26 235.683 2317.11 235.683 Q2313.96 235.683 2312.11 237.859 Q2310.28 240.011 2310.28 243.738 Q2310.28 247.488 2312.11 249.641 Q2313.96 251.794 2317.11 251.794 Z\" fill=\"#000000\" fill-rule=\"evenodd\" fill-opacity=\"1\" /><path clip-path=\"url(#clip4800)\" d=\"M 0 0 M2269.43 134.896 L2277.07 134.896 L2277.07 108.53 L2268.76 110.197 L2268.76 105.937 L2277.02 104.271 L2281.7 104.271 L2281.7 134.896 L2289.33 134.896 L2289.33 138.831 L2269.43 138.831 L2269.43 134.896 Z\" fill=\"#000000\" fill-rule=\"evenodd\" fill-opacity=\"1\" /><path clip-path=\"url(#clip4800)\" d=\"M 0 0 M2294.4 132.951 L2299.29 132.951 L2299.29 138.831 L2294.4 138.831 L2294.4 132.951 Z\" fill=\"#000000\" fill-rule=\"evenodd\" fill-opacity=\"1\" /><path clip-path=\"url(#clip4800)\" d=\"M 0 0 M2314.36 107.349 Q2310.75 107.349 2308.92 110.914 Q2307.11 114.456 2307.11 121.585 Q2307.11 128.692 2308.92 132.257 Q2310.75 135.798 2314.36 135.798 Q2317.99 135.798 2319.8 132.257 Q2321.63 128.692 2321.63 121.585 Q2321.63 114.456 2319.8 110.914 Q2317.99 107.349 2314.36 107.349 M2314.36 103.646 Q2320.17 103.646 2323.22 108.252 Q2326.3 112.835 2326.3 121.585 Q2326.3 130.312 2323.22 134.919 Q2320.17 139.502 2314.36 139.502 Q2308.55 139.502 2305.47 134.919 Q2302.41 130.312 2302.41 121.585 Q2302.41 112.835 2305.47 108.252 Q2308.55 103.646 2314.36 103.646 Z\" fill=\"#000000\" fill-rule=\"evenodd\" fill-opacity=\"1\" /><polyline clip-path=\"url(#clip4800)\" style=\"stroke:#000000; stroke-width:4; stroke-opacity:1; fill:none\" points=\"\n",
" 2232.76,1408.51 2232.76,1280.18 2256.76,1280.18 2232.76,1280.18 2232.76,1151.85 2256.76,1151.85 2232.76,1151.85 2232.76,1023.51 2256.76,1023.51 2232.76,1023.51 \n",
" 2232.76,895.179 2256.76,895.179 2232.76,895.179 2232.76,766.846 2256.76,766.846 2232.76,766.846 2232.76,638.513 2256.76,638.513 2232.76,638.513 2232.76,510.179 \n",
" 2256.76,510.179 2232.76,510.179 2232.76,381.846 2256.76,381.846 2232.76,381.846 2232.76,253.513 2256.76,253.513 2232.76,253.513 2232.76,125.179 2256.76,125.179 \n",
" 2232.76,125.179 \n",
" \"/>\n",
"</svg>\n"
]
},
"metadata": {},
"output_type": "display_data"
},
{
"name": "stdout",
"output_type": "stream",
"text": [
" 13.476947 seconds (59.89 M allocations: 6.344 GiB, 10.45% gc time)\n"
]
}
],
"source": [
"totalVolFactor=0.5\n",
"maxEval=200\n",
"SIMP=true\n",
"p=3\n",
"nelx=90\n",
"nely=30\n",
"sensitivity=true\n",
"rmin=1.5\n",
"X=densityOptimization(MBB,nelx,nely,totalVolFactor,maxEval,SIMP,sensitivity,p,rmin);"
]
},
{
"cell_type": "code",
"execution_count": 4,
"metadata": {},
"outputs": [
{
"data": {
"text/plain": [
"topologyOptimizationMMA (generic function with 1 method)"
]
},
"execution_count": 4,
"metadata": {},
"output_type": "execute_result"
}
],
"source": [
"function topologyOptimizationMMA(nelx,nely,volfrac,rmin,penal,maxEval)\n",
" \n",
" display(\"Minimum compliance problem with MMA\")\n",
" display(\"ndes: $nelx x $nely\")\n",
" display(\"volfrac: $volfrac rmin: $rmin penal: $penal\")\n",
" # Max and min stiffness\n",
" Emin=1e-9\n",
" Emax=1.0\n",
" # dofs:\n",
" ndof = 2*(nelx+1)*(nely+1)\n",
" # Allocate design variables (as array), initialize and allocate sens.\n",
" x=volfrac * ones(Float64,nely,nelx)\n",
" xold=copy(x)\n",
" xPhys=copy(x)\n",
" g=0 # must be initialized to use the NGuyen/Paulino OC approach\n",
" dc=zeros(Float64,(nely,nelx))\n",
"\n",
" # FE: Build the index vectors for the for coo matrix format.\n",
" KE=lk()\n",
" nodenrs = reshape(1:(1+nelx)*(1+nely),1+nely,1+nelx)\n",
" edofVec = reshape(2*nodenrs[1:end-1,1:end-1].+1,nelx*nely,1)\n",
" edofMat = repeat(edofVec,1,8).+repeat([0 1 2*nely.+[2 3 0 1] -2 -1],nelx*nely,1)\n",
" iK = convert(Array{Int},reshape(kron(edofMat,ones(8,1))',64*nelx*nely,1))\n",
" jK = convert(Array{Int},reshape(kron(edofMat,ones(1,8))',64*nelx*nely,1))\n",
" # DEFINE LOADS AND SUPPORTS (HALF MBB-BEAM)\n",
" F = sparse([2],[1],[-1.0],2*(nely+1)*(nelx+1),1)\n",
" U = zeros(2*(nely+1)*(nelx+1),1)\n",
" fixeddofs = union(1:2:2*(nely+1),2*(nelx+1)*(nely+1))\n",
" alldofs = 1:(2*(nely+1)*(nelx+1))\n",
" freedofs = setdiff(alldofs,fixeddofs)\n",
" # Prepare filter\n",
" iH = ones(convert(Int,nelx*nely*(2*(ceil(rmin)-1)+1)^2),1)\n",
" jH = ones(Int,size(iH))\n",
" sH = zeros(size(iH))\n",
" k = 0;\n",
" for i1 = 1:nelx\n",
" for j1 = 1:nely\n",
" e1 = (i1-1)*nely+j1\n",
" for i2 = max(i1-(ceil(rmin)-1),1):min(i1+(ceil(rmin)-1),nelx)\n",
" for j2 = max(j1-(ceil(rmin)-1),1):min(j1+(ceil(rmin)-1),nely)\n",
" e2 = (i2-1)*nely+j2\n",
" k = k+1\n",
" iH[k] = e1\n",
" jH[k] = e2\n",
" sH[k] = max(0,rmin-sqrt((i1-i2)^2+(j1-j2)^2))\n",
" end\n",
" end\n",
" end\n",
" end\n",
" H = sparse(vec(iH),vec(jH),vec(sH))\n",
" Hs = sum(H,dims=2); \n",
" \n",
" nel=nely*nelx\n",
" \n",
"\n",
" function FA(x::Vector, grad::Vector)\n",
"\n",
" xPhys=reshape(x,nely,nelx)\n",
"\n",
" sK = reshape(KE[:]*(Emin.+xPhys[:]'.^penal*(Emax-Emin)),64*nelx*nely,1)\n",
" K = sparse(vec(iK),vec(jK),vec(sK)); K = (K+K')/2\n",
" @timed U[freedofs] = K[freedofs,freedofs] \\ Array(F[freedofs])\n",
" # Objective function and sensitivity analysis\n",
" ce = reshape(sum((U[edofMat]*KE).*U[edofMat],dims=2),nely,nelx)\n",
" c = sum(sum((Emin.+xPhys.^penal*(Emax-Emin)).*ce))\n",
"\n",
" dc = -penal*(Emax-Emin)*xPhys.^(penal-1).*ce\n",
" dc[:] = H*(dc[:]./Hs)\n",
"\n",
" grad[:] .= dc[:]\n",
"\n",
" return c\n",
" end\n",
"\n",
" function G(x::Vector, grad::Vector)\n",
" dv = ones(nely,nelx)\n",
" dv[:] = H*(dv[:]./Hs)\n",
"\n",
" grad[:] .= dv[:]\n",
"\n",
" return (sum(x) - volfrac*nel)\n",
" end\n",
"\n",
" FA(ones(nel)*volfrac, fill(volfrac,nel))\n",
" G(ones(nel)*volfrac, fill(volfrac,nel))\n",
"\n",
" opt = Opt(:LD_MMA, nel)\n",
" opt.lower_bounds = fill(1e-9,nel)\n",
" opt.upper_bounds = fill(1,nel)\n",
" opt.xtol_rel = 1e-4\n",
" opt.maxeval = maxEval\n",
"\n",
" opt.min_objective = FA\n",
" inequality_constraint!(opt, (x,gg) -> G(x,gg), 1e-4)\n",
"\n",
" display(@time (minf,minx,ret) = optimize(opt, ones(nel).*volfrac))\n",
" numevals = opt.numevals # the number of function evaluations\n",
" display(\"got $minf after $numevals iterations (returned $ret)\")\n",
" \n",
" xPhys=reshape(minx,nely,nelx)\n",
" display(heatmap(xPhys, aspect_ratio=:equal, legend=false, axis=nothing, foreground_color_subplot=colorant\"white\",fc=:grays))\n",
"\n",
"\n",
" return xPhys\n",
"end"
]
},
{
"cell_type": "code",
"execution_count": 5,
"metadata": {},
"outputs": [
{
"data": {
"text/plain": [
"\"Minimum compliance problem with MMA\""
]
},
"metadata": {},
"output_type": "display_data"
},
{
"data": {
"text/plain": [
"\"ndes: 60 x 30\""
]
},
"metadata": {},
"output_type": "display_data"
},
{
"data": {
"text/plain": [
"\"volfrac: 0.5 rmin: 1.5 penal: 3\""
]
},
"metadata": {},
"output_type": "display_data"
},
{
"data": {
"text/plain": [
"(76.04177521349403, [1.0, 1.0, 1.0, 1.0, 1.0, 1.0e-9, 1.0e-9, 1.0e-9, 1.0e-9, 1.0e-9 … 1.0e-9, 1.0e-9, 1.0, 1.0, 1.0, 1.0, 1.0, 1.0, 1.0, 1.0], :XTOL_REACHED)"
]
},
"metadata": {},
"output_type": "display_data"
},
{
"data": {
"text/plain": [
"\"got 76.04177521349403 after 65 iterations (returned XTOL_REACHED)\""
]
},
"metadata": {},
"output_type": "display_data"
},
{
"data": {
"image/svg+xml": [
"<?xml version=\"1.0\" encoding=\"utf-8\"?>\n",
"<svg xmlns=\"http://www.w3.org/2000/svg\" xmlns:xlink=\"http://www.w3.org/1999/xlink\" width=\"600\" height=\"400\" viewBox=\"0 0 2400 1600\">\n",
"<defs>\n",
" <clipPath id=\"clip9500\">\n",
" <rect x=\"0\" y=\"0\" width=\"2400\" height=\"1600\"/>\n",
" </clipPath>\n",
"</defs>\n",
"<path clip-path=\"url(#clip9500)\" d=\"\n",
"M0 1600 L2400 1600 L2400 0 L0 0 Z\n",
" \" fill=\"#ffffff\" fill-rule=\"evenodd\" fill-opacity=\"1\"/>\n",
"<defs>\n",
" <clipPath id=\"clip9501\">\n",
" <rect x=\"480\" y=\"0\" width=\"1681\" height=\"1600\"/>\n",
" </clipPath>\n",
"</defs>\n",
"<path clip-path=\"url(#clip9500)\" d=\"\n",
"M86.9921 1521.01 L2352.76 1521.01 L2352.76 47.2441 L86.9921 47.2441 Z\n",
" \" fill=\"#ffffff\" fill-rule=\"evenodd\" fill-opacity=\"1\"/>\n",
"<defs>\n",
" <clipPath id=\"clip9502\">\n",
" <rect x=\"86\" y=\"47\" width=\"2267\" height=\"1475\"/>\n",
" </clipPath>\n",
"</defs>\n",
"<polyline clip-path=\"url(#clip9500)\" style=\"stroke:#ffffff; stroke-width:4; stroke-opacity:1; fill:none\" points=\"\n",
" 86.9921,1521.01 2352.76,1521.01 \n",
" \"/>\n",
"<polyline clip-path=\"url(#clip9500)\" style=\"stroke:#ffffff; stroke-width:4; stroke-opacity:1; fill:none\" points=\"\n",
" 86.9921,1521.01 86.9921,47.2441 \n",
" \"/>\n",
"<g clip-path=\"url(#clip9502)\">\n",
"<image width=\"2266\" height=\"1133\" xlink:href=\"data:image/png;base64,\n",
"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\n",
"AAAAAIBAaAMAAAAAAAAAAIHQBgAAAAAAAAAAAqENAAAAAAAAAAAEQhsAAAAAAAAAAAiENgAAAAAA\n",
"AAAAEAhtAAAAAAAAAAAgENoAAAAAAAAAAEAgtAEAAAAAAAAAgEBoAwAAAAAAAAAAgdAGAAAAAAAA\n",
"AAACoQ0AAAAAAAAAAARCGwAAAAAAAAAACIQ2AAAAAAAAAAAQCG0AAAAAAAAAACAQ2gAAAAAAAAAA\n",
"QCC0AQAAAAAAAACAQGgDAAAAAAAAAACB0AYAAAAAAAAAAAKhDQAAAAAAAAAABEIbAAAAAAAAAAAI\n",
"hDYAAAAAAAAAABAIbQAAAAAAAAAAIBDaAAAAAAAAAABAILQBAAAAAAAAAIBAaAMAAAAAAAAAAIHQ\n",
"BgAAAAAAAAAAAqENAAAAAAAAAAAEQhsAAAAAAAAAAAiENgAAAAAAAAAAEAhtAAAAAAAAAAAgENoA\n",
"AAAAAAAAAEAgtAEAAAAAAAAAgEBoAwAAAAAAAAAAgdAGAAAAAAAAAACC9Waz2Y0eAcDxmed59ISD\n",
"MU3T6AnAHrt27droCYu+fv06egL8Nb9+/Ro9YdGNGzdGT1jkeyDshx8/foyecM7p6enoCQAA8D/O\n",
"r7Af9vF/MjfaAAAAAAAAAABAILQBAAAAAAAAAIBAaAMAAAAAAAAAAIHQBgAAAAAAAAAAAqENAAAA\n",
"AAAAAAAEQhsAAAAAAAAAAAiENgAAAAAAAAAAEAhtAAAAAAAAAAAgENoAAAAAAAAAAEAgtAEAAAAA\n",
"AAAAgEBoAwAAAAAAAAAAgdAGAAAAAAAAAAACoQ0AAAAAAAAAAARCGwAAAAAAAAAACIQ2AAAAAAAA\n",
"AAAQCG0AAAAAAAAAACAQ2gAAAAAAAAAAQCC0AQAAAAAAAACAQGgDAAAAAAAAAACB0AYAAAAAAAAA\n",
"AAKhDQAAAAAAAAAABEIbAAAAAAAAAAAIhDYAAAAAAAAAABAIbQAAAAAAAAAAIBDaAAAAAAAAAABA\n",
"ILQBAAAAAAAAAIBAaAMAAAAAAAAAAIHQBgAAAAAAAAAAAqENAAAAAAAAAAAEQhsAAAAAAAAAAAiE\n",
"NgAAAAAAAAAAEAhtAAAAAAAAAAAgENoAAAAAAAAAAEAgtAEAAAAAAAAAgEBoAwAAAAAAAAAAgdAG\n",
"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\n",
"AAAAABAIbQAAAAAAAAAAIBDaAAAAAAAAAABAILQBAAAAAAAAAIBAaAMAAAAAAAAAAIHQBgAAAAAA\n",
"AAAAAqENAAAAAAAAAAAEQhsAAAAAAAAAAAiENgAAAAAAAAAAEAhtAAAAAAAAAAAgENoAAAAAAAAA\n",
"AEAgtAEAAAAAAAAAgGA/PQAAAACAf8daa3oCAAAAwBgfbQAAAAAAAAAAIBDaAAAAAAAAAABAILQB\n",
"AAAAAAAAAIBAaAMAAAAAAAAAAIHQBgAAAAAAAAAAAqENAAAAAAAAAAAEQhsAAAAAAAAAAAiENgAA\n",
"AAAAAAAAEAhtAAAAAAAAAAAgENoAAAAAAAAAAEAgtAEAAAAAAAAAgEBoAwAAAAAAAAAAgdAGAAAA\n",
"AAAAAAACoQ0AAAAAAAAAAARCGwAAAAAAAAAACIQ2AAAAAAAAAAAQCG0AAAAAAAAAACAQ2gAAAAAA\n",
"AAAAQCC0AQAAAAAAAACAQGgDAAAAAAAAAACB0AYAAAAAAAAAAAKhDQAAAAAAAAAABEIbAAAAAAAA\n",
"AAAIhDYAAAAAAAAAABAIbQAAAAAAAAAAIBDaAAAAAAAAAABAILQBAAAAAAAAAIBAaAMAAAAAAAAA\n",
"AIHQBgAAAAAAAAAAAqENAAAAAAAAAAAEQhsAAAAAAAAAAAiENgAAAAAAAAAAEAhtAAAAAAAAAAAg\n",
"ENoAAAAAAAAAAEAgtAEAAAAAAAAAgEBoAwAAAAAAAAAAwQ//2HfwV48KCgAAAABJRU5ErkJggg==\n",
"\" transform=\"translate(87, 218)\"/>\n",
"</g>\n",
"</svg>\n"
]
},
"metadata": {},
"output_type": "display_data"
},
{
"name": "stdout",
"output_type": "stream",
"text": [
" 1.154387 seconds (21.71 k allocations: 999.462 MiB, 6.92% gc time)\n"
]
}
],
"source": [
"topologyOptimizationMMA(60,30,0.5,1.5,3,200);"
]
},
{
"cell_type": "markdown",
"metadata": {},
"source": [
"## Microstructure"
]
},
{
"cell_type": "code",
"execution_count": 5,
"metadata": {},
"outputs": [
{
"data": {
"text/plain": [
"\" It:1 Obj:-0.003350423679074097 Vol:0.5000200511835843 ch:0.2 \""
]
},
"metadata": {},
"output_type": "display_data"
},
{
"data": {
"text/plain": [
"\" It:2 Obj:-0.018306412036262917 Vol:0.4999965165183521 ch:0.2 \""
]
},
"metadata": {},
"output_type": "display_data"
},
{
"data": {
"text/plain": [
"\" It:3 Obj:-0.04227041232681954 Vol:0.5000003382107933 ch:0.20000000000000007 \""
]
},
"metadata": {},
"output_type": "display_data"
},
{
"data": {
"text/plain": [
"\" It:4 Obj:-0.08266736881088461 Vol:0.4999998322687492 ch:0.20000000000000007 \""
]
},
"metadata": {},
"output_type": "display_data"
},
{
"data": {
"text/plain": [
"\" It:5 Obj:-0.10302562484447073 Vol:0.49999960385099296 ch:0.20000000000000007 \""
]
},
"metadata": {},
"output_type": "display_data"
},
{
"data": {
"text/plain": [
"\" It:6 Obj:-0.11590155690677476 Vol:0.4999995837445038 ch:0.19999999999999996 \""
]
},
"metadata": {},
"output_type": "display_data"
},
{
"data": {
"text/plain": [
"\" It:7 Obj:-0.12404593557172822 Vol:0.5000002362423399 ch:0.06492669857662392 \""
]
},
"metadata": {},
"output_type": "display_data"
},
{
"data": {
"text/plain": [
"\" It:8 Obj:-0.12369144190701359 Vol:0.5000002884525467 ch:0.026541112089337293 \""
]
},
"metadata": {},
"output_type": "display_data"
},
{
"data": {
"text/plain": [
"\" It:9 Obj:-0.12345691151425534 Vol:0.5000001622386268 ch:0.016338124593460818 \""
]
},
"metadata": {},
"output_type": "display_data"
},
{
"data": {
"text/plain": [
"\" It:10 Obj:-0.12334771897996677 Vol:0.5000002398618072 ch:0.00982718802507987 \""
]
},
"metadata": {},
"output_type": "display_data"
}
],
"source": [