Hide last authors
Isak Björhag 10.1 1 (% class="box floatinginfobox" %)
2 (((
Iwona Budny Bjergø 39.1 3 Contents
IwonaBudny 2.1 4
Iwona Budny Bjergø 24.1 5 {{toc depth="3"/}}
Isak Björhag 10.1 6 )))
Isak Björhag 11.1 7
Isak Björhag 64.1 8 (% style="text-align: justify;" %)
9 The StruXML file is used to store object data such as geometry and loads of the model. StruXML is also the format used to exchange models with Revit and Tekla. Any FEM-Design 3D Structure model can be saved as StruXML and any StruXML file can easily be opened in a text editor where it can be inspected and modified.
IwonaBudny 2.1 10
Fredrik Lagerström 83.1 11 = Open/import a StruXML-file =
IwonaBudny 2.1 12
Fredrik Lagerström 83.1 13 To open or import a StruXML-file use the File > Open-command
14
15 [[image:1584369822516-194.png]]
16
Isak Björhag 65.1 17 = Save existing model as StruXML =
18
Isak Björhag 67.1 19 An existing FEM-Design model can easily be saved as a StruXML file by going to File>Save as... and selecting StruSoft common structure XML file (*.struxml) in the Save as type dialog.
Isak Björhag 65.1 20
21
Isak Björhag 69.1 22 [[image:image-20200210154817-1.png]]
23
24
Isak Björhag 65.1 25 (% style="text-align: justify;" %)
Isak Björhag 72.1 26 = Model as StruXML =
IwonaBudny 2.1 27
Isak Björhag 77.2 28 As we save a model as StruXML we can start to disect the model by reading the code.
Isak Björhag 64.1 29
Isak Björhag 72.1 30 == Model ==
Isak Björhag 5.2 31
Isak Björhag 77.2 32 The StruXML code below describes a simply supported beam with a length of 5 meters, a rectangular cross-section 200x500, and a concrete C30/37 material:
33
Isak Björhag 82.1 34 {{code language="xml"}}
Isak Björhag 50.1 35 <database struxml_version="01.00.000" source_software="FEM-Design 19.00.001" start_time="1970-01-01T00:00:00.000" end_time="2020-02-10T14:16:29.000" guid="e211356e-5f99-4a37-a005-d6c326834e45" convertid="00000000-0000-0000-0000-000000000000" standard="EC" country="S" xmlns="urn:strusoft">
36 <entities>
37 <bar name="B.1" type="beam" guid="72f97ae8-dae3-4106-a86d-c6e9485c0354" last_change="2020-02-10T14:16:29.000" action="added">
38 <bar_part guid="3641e177-f9b7-41ec-8eea-62d274c21f64" last_change="2020-02-10T14:16:29.000" action="added" name="B.1.1" complex_material="6e4dcf1d-5801-45cc-99ae-c661ec27ce72" complex_section="2dc61ff1-429f-43c2-ba23-90968f8e933e" ecc_calc="true">
39 <curve type="line">
40 <point x="0" y="0" z="0"></point>
41 <point x="5" y="0" z="0"></point>
42 </curve>
43 <local-y x="0" y="1" z="0"></local-y>
44 <connectivity m_x="true" m_y="true" m_z="true" r_x="true" r_y="true" r_z="true"></connectivity>
45 <connectivity m_x="true" m_y="true" m_z="true" r_x="true" r_y="true" r_z="true"></connectivity>
46 <eccentricity use_default_physical_alignment="true">
47 <analytical x="0" y="0" z="0"></analytical>
48 <analytical x="0" y="0" z="0"></analytical>
49 <physical x="0" y="0" z="-0.25"></physical>
50 <physical x="0" y="0" z="-0.25"></physical>
51 </eccentricity>
52 <end></end>
53 </bar_part>
54 <end></end>
55 </bar>
56 <supports>
57 <point_support guid="fba5197e-6d85-4b07-8a6e-053bb0f4f6f0" last_change="2020-02-10T14:08:41.000" action="added" name="S.1">
58 <group>
59 <local_x x="1" y="0" z="0"></local_x>
60 <local_y x="0" y="1" z="0"></local_y>
61 <rigidity>
62 <motions x_neg="10000000000" x_pos="10000000000" y_neg="10000000000" y_pos="10000000000" z_neg="10000000000" z_pos="10000000000"></motions>
63 <rotations x_neg="0" x_pos="0" y_neg="0" y_pos="0" z_neg="0" z_pos="0"></rotations>
64 </rigidity>
65 </group>
66 <position x="0" y="0" z="0"></position>
67 </point_support>
68 <point_support guid="4adba974-d671-4d2f-94db-b4305e76b830" last_change="2020-02-10T14:08:48.000" action="added" name="S.2">
69 <group>
70 <local_x x="1" y="0" z="0"></local_x>
71 <local_y x="0" y="1" z="0"></local_y>
72 <rigidity>
73 <motions x_neg="0" x_pos="0" y_neg="10000000000" y_pos="10000000000" z_neg="10000000000" z_pos="10000000000"></motions>
74 <rotations x_neg="0" x_pos="0" y_neg="0" y_pos="0" z_neg="0" z_pos="0"></rotations>
75 </rigidity>
76 </group>
77 <position x="5" y="0" z="0"></position>
78 </point_support>
79 </supports>
80 </entities>
81 <sections>
82 <section guid="90bb4365-64f2-4293-bcef-d389d5b0ff96" last_change="1970-01-01T00:00:00.000" action="added" name="Concrete sections, Rectangle, 200x500" type="custom" fd-mat="3" fd_name_code="Concrete sections" fd_name_type="Rectangle" fd_name_size="200x500">
83 <region_group>
84 <region>
85 <contour>
86 <edge type="line">
87 <point x="-0.1" y="-0.25" z="0"></point>
88 <point x="0.1" y="-0.25" z="0"></point>
89 <normal x="0" y="1" z="0"></normal>
90 </edge>
91 <edge type="line">
92 <point x="0.1" y="-0.25" z="0"></point>
93 <point x="0.1" y="0.25" z="0"></point>
94 <normal x="-1" y="0" z="0"></normal>
95 </edge>
96 <edge type="line">
97 <point x="0.1" y="0.25" z="0"></point>
98 <point x="-0.1" y="0.25" z="0"></point>
99 <normal x="0" y="-1" z="0"></normal>
100 </edge>
101 <edge type="line">
102 <point x="-0.1" y="0.25" z="0"></point>
103 <point x="-0.1" y="-0.25" z="0"></point>
104 <normal x="1" y="0" z="0"></normal>
105 </edge>
106 </contour>
107 </region>
108 </region_group>
109 <end></end>
110 </section>
111 <complex_section guid="2dc61ff1-429f-43c2-ba23-90968f8e933e" last_change="1970-01-01T00:00:00.000" action="added">
112 <section pos="0" guid="90bb4365-64f2-4293-bcef-d389d5b0ff96">
113 <ecc x="0" y="0" z="0"></ecc>
114 <end></end>
115 </section>
116 <section pos="1" guid="90bb4365-64f2-4293-bcef-d389d5b0ff96">
117 <ecc x="0" y="0" z="0"></ecc>
118 <end></end>
119 </section>
120 </complex_section>
121 </sections>
122 <materials>
123 <material guid="6e4dcf1d-5801-45cc-99ae-c661ec27ce72" last_change="2013-07-19T10:00:42.000" action="added" standard="EC" country="S" name="C30/37">
124 <concrete mass="2.54842" E_0="33000000" E_1="33000000" E_2="33000000" nu_0="0.2" nu_1="0.2" nu_2="0.2" alfa_0="0.00001" alfa_1="0.00001" alfa_2="0.00001" G_0="13750000" G_1="13750000" G_2="13750000" Fck="30" Fck_cube="37" Fctk="2" Fctm="2.9" Ecm="33000" gammaC_0="1.5" gammaC_1="1.2" gammaCE="1.2" gammaS_0="1.15" gammaS_1="1" alfaCc="1" alfaCt="1" Fcd_0="20" Fcd_1="25" Fctd_0="1.33333333333333" Fctd_1="1.66666666666667" Ecd_0="22000" Ecd_1="27500" Epsc2="0.002" Epscu2="0.0035" Epsc3="0.00175" Epscu3="0.0035" environment="0" creep="0" shrinkage="0" nu="0.2" alfa="0.00001"></concrete>
125 </material>
126 </materials>
127 <end></end>
128 </database>
129 {{/code}}
130
Iwona Budny Bjergø 24.1 131 (% style="text-align: justify;" %)
Isak Björhag 79.1 132 == Database ==
Iwona Budny Bjergø 24.1 133
Isak Björhag 70.1 134 (% style="text-align: justify;" %)
Isak Björhag 78.1 135 The StruXML model contains a document element (root element) called database. This element contains all other elements that define the model. Elements that are contained within another element are usually called child elements or children.
Isak Björhag 70.1 136
Isak Björhag 46.1 137 {{code language="xml"}}
Isak Björhag 47.1 138 <database struxml_version="01.00.000" source_software="FEM-Design 19.00.001" start_time="1970-01-01T00:00:00.000" end_time="2020-02-10T14:16:29.000" guid="e211356e-5f99-4a37-a005-d6c326834e45" convertid="00000000-0000-0000-0000-000000000000" standard="EC" country="S" xmlns="urn:strusoft">
Isak Björhag 50.1 139 <entities>
Isak Björhag 70.1 140 <!-- This child element contains the bar and the two supports -->
Isak Björhag 50.1 141 </entities>
142 <sections>
Isak Björhag 70.1 143 <!-- This child element contains the section of the bar -->
Isak Björhag 50.1 144 </sections>
145 <materials>
Isak Björhag 70.1 146 <!-- This child element contains the material of the bar -->
Isak Björhag 50.1 147 </materials>
Isak Björhag 46.1 148 </database>
149 {{/code}}
150
Isak Björhag 59.1 151 == Bar ==
152
Isak Björhag 78.1 153 The first element in the StruXML model is a bar named B.1. This element is contained within the entities element and is therefore a child of the parent element entities. This bar element contains a another element called bar_part which contains most of the information about the bar such as material, section, geometry (curve) and much more. The material and section are just references to other elements within the StruXML code. These references are guid references. A guid is what is called a globally unique identifier.
Isak Björhag 46.1 154
Isak Björhag 53.1 155 {{code language="xml"}}
156 <bar name="B.1" type="beam" guid="72f97ae8-dae3-4106-a86d-c6e9485c0354" last_change="2020-02-10T14:16:29.000" action="added">
Isak Björhag 54.1 157 <bar_part guid="3641e177-f9b7-41ec-8eea-62d274c21f64" last_change="2020-02-10T14:16:29.000" action="added" name="B.1.1" complex_material="6e4dcf1d-5801-45cc-99ae-c661ec27ce72" complex_section="2dc61ff1-429f-43c2-ba23-90968f8e933e" ecc_calc="true">
158 <curve type="line">
159 <point x="0" y="0" z="0"></point>
160 <point x="5" y="0" z="0"></point>
161 </curve>
162 <local-y x="0" y="1" z="0"></local-y>
163 <connectivity m_x="true" m_y="true" m_z="true" r_x="true" r_y="true" r_z="true"></connectivity>
164 <connectivity m_x="true" m_y="true" m_z="true" r_x="true" r_y="true" r_z="true"></connectivity>
165 <eccentricity use_default_physical_alignment="true">
166 <analytical x="0" y="0" z="0"></analytical>
167 <analytical x="0" y="0" z="0"></analytical>
168 <physical x="0" y="0" z="-0.25"></physical>
169 <physical x="0" y="0" z="-0.25"></physical>
170 </eccentricity>
171 <end></end>
172 </bar_part>
173 <end></end>
174 </bar>
Isak Björhag 53.1 175 {{/code}}
Isak Björhag 50.1 176
Isak Björhag 73.1 177 == Point supports ==
178
Isak Björhag 78.1 179 After the bar element we can find an element called supports that contain the point supports of the model. These point supports are named S.1 and S.2. We can read out where they are placed by looking at the position element. Moreover, we can inspect the motion and rotation springs of the point supports. It is possible to identify that S.2 has the motion spring in positive and negative x-direction set to 0.
Isak Björhag 75.1 180
Isak Björhag 73.1 181 {{code language="xml"}}
Isak Björhag 74.1 182 <supports>
183 <point_support guid="fba5197e-6d85-4b07-8a6e-053bb0f4f6f0" last_change="2020-02-10T14:08:41.000" action="added" name="S.1">
184 <group>
185 <local_x x="1" y="0" z="0"></local_x>
186 <local_y x="0" y="1" z="0"></local_y>
187 <rigidity>
188 <motions x_neg="10000000000" x_pos="10000000000" y_neg="10000000000" y_pos="10000000000" z_neg="10000000000" z_pos="10000000000"></motions>
189 <rotations x_neg="0" x_pos="0" y_neg="0" y_pos="0" z_neg="0" z_pos="0"></rotations>
190 </rigidity>
191 </group>
192 <position x="0" y="0" z="0"></position>
193 </point_support>
194 <point_support guid="4adba974-d671-4d2f-94db-b4305e76b830" last_change="2020-02-10T14:08:48.000" action="added" name="S.2">
195 <group>
196 <local_x x="1" y="0" z="0"></local_x>
197 <local_y x="0" y="1" z="0"></local_y>
198 <rigidity>
199 <motions x_neg="0" x_pos="0" y_neg="10000000000" y_pos="10000000000" z_neg="10000000000" z_pos="10000000000"></motions>
200 <rotations x_neg="0" x_pos="0" y_neg="0" y_pos="0" z_neg="0" z_pos="0"></rotations>
201 </rigidity>
202 </group>
203 <position x="5" y="0" z="0"></position>
204 </point_support>
205 </supports>
Isak Björhag 73.1 206 {{/code}}
207
Isak Björhag 77.1 208 == Sections ==
Isak Björhag 73.1 209
Isak Björhag 78.1 210 The sections element contains all referenced sections of a model. In the StruXML model we can find the complex_section that is referenced by the bar_part as well as the base section which is referenced by this complex_section. A complex_section is simply a definition of the start and end section of a bar. In this specific case the complex_section references the base section two times as the bar star and end section is the same. The base section referenced is named  Concrete sections, Rectangle, 200x500.
Isak Björhag 77.3 211
Isak Björhag 77.1 212 {{code language="xml"}}
213 <sections>
214 <section guid="90bb4365-64f2-4293-bcef-d389d5b0ff96" last_change="1970-01-01T00:00:00.000" action="added" name="Concrete sections, Rectangle, 200x500" type="custom" fd-mat="3" fd_name_code="Concrete sections" fd_name_type="Rectangle" fd_name_size="200x500">
215 <region_group>
216 <region>
217 <contour>
218 <edge type="line">
219 <point x="-0.1" y="-0.25" z="0"></point>
220 <point x="0.1" y="-0.25" z="0"></point>
221 <normal x="0" y="1" z="0"></normal>
222 </edge>
223 <edge type="line">
224 <point x="0.1" y="-0.25" z="0"></point>
225 <point x="0.1" y="0.25" z="0"></point>
226 <normal x="-1" y="0" z="0"></normal>
227 </edge>
228 <edge type="line">
229 <point x="0.1" y="0.25" z="0"></point>
230 <point x="-0.1" y="0.25" z="0"></point>
231 <normal x="0" y="-1" z="0"></normal>
232 </edge>
233 <edge type="line">
234 <point x="-0.1" y="0.25" z="0"></point>
235 <point x="-0.1" y="-0.25" z="0"></point>
236 <normal x="1" y="0" z="0"></normal>
237 </edge>
238 </contour>
239 </region>
240 </region_group>
241 <end></end>
242 </section>
243 <complex_section guid="2dc61ff1-429f-43c2-ba23-90968f8e933e" last_change="1970-01-01T00:00:00.000" action="added">
244 <section pos="0" guid="90bb4365-64f2-4293-bcef-d389d5b0ff96">
245 <ecc x="0" y="0" z="0"></ecc>
246 <end></end>
247 </section>
248 <section pos="1" guid="90bb4365-64f2-4293-bcef-d389d5b0ff96">
249 <ecc x="0" y="0" z="0"></ecc>
250 <end></end>
251 </section>
252 </complex_section>
253 </sections>
254 {{/code}}
Isak Björhag 59.1 255
Isak Björhag 77.1 256
257 == Materials ==
258
Isak Björhag 77.4 259 The materials element contains all referenced materials of a model. In the StruXML code we can find one material named C30/37 with according material properties.
Isak Björhag 53.1 260
Isak Björhag 55.1 261 {{code language="xml"}}
Isak Björhag 56.1 262 <materials>
263 <material guid="6e4dcf1d-5801-45cc-99ae-c661ec27ce72" last_change="2013-07-19T10:00:42.000" action="added" standard="EC" country="S" name="C30/37">
264 <concrete mass="2.54842" E_0="33000000" E_1="33000000" E_2="33000000" nu_0="0.2" nu_1="0.2" nu_2="0.2" alfa_0="0.00001" alfa_1="0.00001" alfa_2="0.00001" G_0="13750000" G_1="13750000" G_2="13750000" Fck="30" Fck_cube="37" Fctk="2" Fctm="2.9" Ecm="33000" gammaC_0="1.5" gammaC_1="1.2" gammaCE="1.2" gammaS_0="1.15" gammaS_1="1" alfaCc="1" alfaCt="1" Fcd_0="20" Fcd_1="25" Fctd_0="1.33333333333333" Fctd_1="1.66666666666667" Ecd_0="22000" Ecd_1="27500" Epsc2="0.002" Epscu2="0.0035" Epsc3="0.00175" Epscu3="0.0035" environment="0" creep="0" shrinkage="0" nu="0.2" alfa="0.00001"></concrete>
265 </material>
266 </materials>
Isak Björhag 55.1 267 {{/code}}
Isak Björhag 53.1 268
Fredrik Lagerström 83.1 269 (% style="text-align: justify;" %)
Iwona Budny Bjergø 86.1 270 = =
Isak Björhag 54.1 271
Iwona Budny Bjergø 86.1 272
273
Iwona Budny Bjergø 87.1 274
Iwona Budny Bjergø 24.1 275 (% style="text-align: justify;" %)
Isak Björhag 62.1 276 = XML Schema =
Isak Björhag 7.1 277
Isak Björhag 61.1 278 The StruXML format comes with a XML Schema that describes this specific XML type.
Iwona Budny Bjergø 30.1 279
Isak Björhag 61.1 280
Iwona Budny Bjergø 31.1 281 |=(% style="background-color: rgb(29, 89, 152); width: 261px;" %)(((
282 (% style="color:#ffffff" %)Latest version
283 )))|=(% style="background-color: rgb(29, 89, 152); width: 1216px;" %)(((
Iwona Budny Bjergø 89.1 284 (% style="color:#ffffff" %)FEM-Design 19.00.004
Iwona Budny Bjergø 31.1 285 )))
Iwona Budny Bjergø 88.1 286 |(% style="width:261px" %)StruXML Schema|(% style="width:1216px" %)[[⭳ **Download **>>http://download.strusoft.com/FEM-Design/struxml/struxml_schema_19.00.004.xsd]]
Iwona Budny Bjergø 30.1 287
288 ----
289
Iwona Budny Bjergø 24.1 290 (% style="text-align: justify;" %)
Iwona Budny Bjergø 42.1 291 (% class="small" %)Disclaimer: All example files, wrappers and documentation are for illustrative and educational purposes and may not interact with FEM-Design in a reliable way depending on your version, installation and content of the files. Furthermore, StruSoft won´t guarantee full support of the API functions since they are customizable by the customer.
Copyright 2020 StruSoft AB
FEM-Design Wiki