I am trying to write a teddy code in ase that would iteratively remove walls and store the resulting load in the remaining walls in separate load cases. how can I do that?
Put each wall in a separate group when creating the structure (consecutive numbering to make the next step easier)
Then in ase you can do something like this (assuming walls are numbered from 100-149):
+Prog Ase
Loop#1 50
Grp - yes $ turn on all groups
Grp 100+#1 off $ turn off one wall
Lc 100+#1 facd 1.0 $ runs deadload for the walls (example)
Endloop
End
Thanks for the response.
I tried doing this but I end up with an error message like this.
does it run for you?
Sorry, just did it off the top of my head.
Apparently you need to do it in separate ase runs, e.g.:
+Prog Ase
Grp - yes $ turn on all groups
Grp 100 off $ turn off one wall
Lc 100
End
If you want to loop through it instead of lots of copy/paste you need to iterate over modules:
+Prog Template
Sto#target 100 $ first lc
End
+Prog Ase iter
Grp - yes $ turn on all groups
Grp #target off $ turn off one wall
Lc #target
End
+Prog Template iter
If #target<150
Sto#target #target+1
Else
Exit_Iteration
EndIf
End
Also this should solve it:
+Prog Ase
Loop#1 50
Grp - yes $ turn on all groups
Grp 100+#1 off $ turn off one wall
Lc 100+#1 facd 1.0 $ runs deadload for the walls (example)
end
Endloop
End
Regards,
Jost