I was thinking about writing on the approximations and simplifications employed in the timber framing code and the hassles it creates when dealing with situations beyond the scope of the timber framing code (AS1684). If not aware of the simplifications and carry out calculations to the timber structures code (AS1720) then have a good chance of demonstrating that a structural element is inadequate for its original function in a house, before even consider the additional loadings. If aware of the simplifications and take them into consideration, the next question is: do these simplifications apply to the extended functionally?

### Structural Analysis Software and Modelling Canopies

However,today I was checking a simple so called flat canopy, and I thought I would just throw a model together in Multiframe structural analysis software as a check. Initially I used Multiframes automatic wind loading capability, as a default it applies drag loads to the framing which causes biaxial bending of rafters and other members. The wind loading is also for buildings not open canopies. Typically the default wind loads are higher than I expect, however as a first pass, not a major concern, especially if everything works out ok, and the proposal is found acceptable. If and when the structural analysis suggests the proposal is no good then start to refine the model.

In this situation the proposal failed so I started to refine the model by removing the drag loads and getting rid of the biaxial bending: as such is seldom actually checked for purlins as the load capacity tables for girts and purlins do not provide the necessary load capacities. Whilst wind loading is normal to the surface and only imposes single axes bending on purlins, gravitational live loading generates biaxial bending. Similarly wind loading of girts produces bending about strong axis, in combination with weak axis bending due to the weight of the cladding. Since the situations are not covered by the tables the conditions are seldom checked.

Whilst I got rid of the frame drag loads the biaxial bending remained. I also attempted to adjust the pressure coefficients, but not certain how the module calculates the wind loads: I therefore abandoned the built in wind loading and created some additional load cases and manually input the pressures to the load panels. And still got biaxial bending. I switched the display to show the calculated loads at the panel supports and this showed up both vertical and horizontal loads to the beams.

At first I thought this had something to do with numerical errors, as Multiframe often calculates values for situations where the value should be zero; for example miniscule base moments for pinned based structure which should be unstable and not solvable. Then I thought the file was corrupted and there were left over results from the frame drag loads. I was considering creating a new model from scratch in case the file was corrupted. Then it clicked, whilst considered a flat canopy, the canopy was actually pitched.

So I created a simple flat canopy, and placed load panels on it, with 1 kPa load, and then displayed the support loads. No horizontal load was generated, as expected. So no hidden properties of the load panel which made it behave like a membrane or something.

I then copied the model and then elevated one end, giving the roof a pitch. I then displayed the support loads, and there was the horizontal component of the surface loads. I changed the orientation of the purlin, but that didn’t seem to help. I believe the support loads are horizontal and vertical components, and not relative to the axis of the structural section: but that’s something that I need to look at more closely. At that point another issue arrived, and that being division by zero in the member check reports. For some reason for the combined bending and axial checks it had zero for the compressive resistance. I ran the checks several times, simplifying the output trying to home in on why the value was zero. I checked compression on its own, and the compressive resistance had a value. When I rechecked the combined actions, the division by zero error disappeared. So I’d guess there is a failure to calculate the compressive resistance as part of the combined action check. Both the steel design modules in Multiframe, that for AS4100 and AS4600 are cumbersome to use: the user has to determine the checks to carry out, the software is not smart enough to determine appropriate checks based on magnitude of action-effects and member types. Microstran member checking is easier and also produces more compact report. For example multiframe will either decide a tension-only member fails due to say combined actions or simply crash the program.

It is therefore necessary for the user to decide the type of checks to carry out for an individual member or group of members. The problem with that approach is that combined actions can be conveniently ignored. One of the first changes I introduced to standard shed designs, when I revised them, was to check all members of the frame for combined bending and compression, and also check for combined bending and tension. The original calculations held by manufacturers only had checks for combined bending and compression of the column.

So whilst I like the user interface, and the COM automation potential of Multiframe, I consider its reporting is too cumbersome, and it suffers from instabilities and numerical error problems. Of the few structural analysis packages I have used, MicroStran is the only one with a preprocessor to check the model before analysis, and part of that check is concerns with whether or not the matrix is likely poorly scaled resulting in numerical errors.

Anycase, for a flat canopy, typically with roof pitch less than or equal to 5 degrees is to use the load capacity tables to design the members: and that means the design is only based on the strong axis bending of the c-sections. The 3D analysis and the resultant biaxial bending may be more strictly correct, however the bridging requirements of the simplified approach are likely to accommodate the effects of biaxial bending allowing it to be ignored.

So we have a situation of the 3D software creating a situation which otherwise would not be considered.

The other week another situation arose with the 3D model. In this case the canopy structure comprised of beams attached to a wall, and a back channel attached to a fascia. In the first instant I didn’t allow for the eaves overhang, I just attached a channel between the beams and placed supports along the back channel, and used Multiframe panel loads to load the structure.

The next phase of the modelling was to allow for the eaves overhang and move the back channel forward, and thus unload a portion of the beams sheltered under the house eaves. The problem in this case was that the software does not allow the back channel to be independent of the main frame, it had to have its ends connected to the beams of the canopy: which doesn’t reflect reality of the assembly. So whilst the 3D model provided some comparative numbers, the actual member sizing was done using spreadsheet calculations.

As for drag loads. As indicated above, I removed the drag loads applied by Multiframe, and just wanted the panel or surface loads. Drag load calculations on the frame and cladding I carry out in spreadsheets, to size the cantilevered columns: I carry out such calculations with the loads distributed to a single bay. Whilst I apply drag loads to the rafters to get lateral load on the overall structure, I don’t check the rafters for the weak axis bending which would result.

Design calculations, engineering calculations, technical calculations are not about numerically exact calculations. Whilst 1.5 plus 1.6 may have a value of 3.1, the calculation can be simplified to 2 plus 2, with a result of 4, giving us information that the correct value is less than 4. If the value of 4 is not compatible with the decisions and actions we wish to take, then we can refine the calculation process: for example we can round 1.5 down to 1, and round 1.6 upto 2, and get a result of 3, which gets us closer to the value of 3.1. Its a simplistic illustration, but it highlights the general process, start with something quick and simple and progressively refine the the model. Another example is using g=10 m/s^{2} for the acceleration due to gravity, rather than a value of 9.81 m/s^{2} , which is still an approximation.

Now using a value of g=10 m/s^{2} is conservative for assessing the weight of a structure which will collapse the structure, but it is unconservative for situations where the weight of the structure is holding the structure down and resisting wind uplift.

### Attached Canopies

So whilst approximations and simplifications can be a benefit and convenience, in other situations they can be a hindrance, hassle and frustration. The simplifications in the timber framing code AS1684 I find frustrating when it comes to assessing attachment of a canopy to a house. Most especially when I first started designing timber canopies attached to timber framed houses. It raises the need to explain the difference between the rafter in the house and the rafter in the canopy. Then there is the extra wind uplift forces from the canopy applied to the house roof and wall structure. Where exactly do they get the weights from in the timber framing code? What is the weight of a timber framed wall: comprising of studs (say 90×45), noggins, and one layer of plasterboard lining? To my calculations it’s not very heavy, go with 70×35 and lighter still.

Here is an interesting article calculating the weight of a timber framed wall, its for the UK not Australia. They use larger studs, most likely for the snow loads, they also use OSB external cladding: seem to be like the Americans and fully sheath the frame with bracing. In Australia bracing is either steel cross bracing, or panel bracing (OSB, Plywood, Hardboard) only located at discrete locations: so whilst it contributes to the weight of the wall locally, it doesn’t contribute much to the overall weight of the wall. At windows and doors there are extra lintels, trimmers and the weight of glass for windows. Not sure weight of door contributes to weight of wall, when considering tie-down requirements: it would depend on whether the hinges and catches can transfer the weight into the wall, so that the weight can be considered as providing resistance.

Anycase the numbers behind some of the connections indicated as nominal ‘N’ suggest that a 10% overstress has been allowed in the code. Attaching a canopy to a house on a wind class N1 site, should not be considered of little concern because its a low wind speed area, whilst panic generated when attach to sites classified as N2 or N3. It is the wind class N1 sites where the house structure has little reserve in its connections for additional loading, and most likely over stressed in the first place.

And the problem for installing a canopy is that the bottom plate and connection at the bottom of the wall stud are not accessible to be strengthened. Now if we estimate a large unrealistic weight for the wall then the connections will unlikely need strengthening. But if use more realistic load, then will need to be strengthened or by-passed.

Which all seems very wasteful given the tensile capacity of a F7 70×35 stud, and the relatively worthless capacity of the traditional nailed stud to plate connection. Which is where steel framing as a slight advantage in that the typical screwed connection has significantly more resistance than the nailed timber connection. The disadvantage is steel framing is proprietary and have difficulty getting information to check the house structure, whilst the suppliers are typically unwilling to design a canopy and permit attachment to the house.

So the attachment of canopies to houses is something which requires further consideration.

Revision:

- [18/04/2017]: Original