# Code Compliance Framework

## Introduction

The purpose of this Code Compliance Framework is to assist both users and suppliers in evaluation of Pole Line Design software tools. The Professional Engineer approving the use of the software must be comfortable with the abilities of the software **and** must know what the software will not do, or do well. It is unlikely that any software will, by itself, satisfy all code requirements. The Designer will always have the role of filling the gaps between what the software does and what it does not, or do well. If the Designer is unaware of these gaps that need to be filled, they could be unknowingly approving non-compliant designs. __This possibility is far more serious than a software tool not addressing certain code requirements.__

Considerable discussion is spent amongst current users, potential users and suppliers about what a software tool can do and how it might compare to another. Although this discussion is valuable, it is often not structured sufficiently to address all aspects that Designers and approving Professional Engineers require. This framework seeks to cover all aspects important for code compliancy in a structured manner. The hope is that suppliers will take it upon themselves to use this framework to articulate their compliancy and to have a Professional Engineer certify the correctness of the result. This takes all doubt away from approvers and users of the software.

Suppliers should document their tools and their results but it is up to the user to verify and understand the results. The use of software is not the same as purchasing consulting engineering services.

## Organization

This framework is organized into two main components:

- Statement of Code Compliancy – A line by line review of the clauses in each of the applicable codes
- Accuracy of Calculations – A comparison of calculation results for very specific test cases for which benchmark results have been provided.

In both categories, suppliers are asked to provide proof of compliancy and/or provide instructions on how compliancy can be validated by the user.

## Statement of Code Compliancy

In this section, every clause in the applicable code is reviewed by the supplier; who will document their compliance to the clause as "Yes", "No" or "Partial". "Partial" compliance must provide a detailed explanation. Other responses can optionally provide additional comments to explain the response.

A spreadsheet is available to assist the supplier which covers all clauses of the current CSA Standard and summarizes the results by section in a separate table. It also identifies clauses which do not require a response because they have no specific requirements.

Suppliers are asked to provide the means for users to validate what they report, if it is not obvious. This could be instructions on how to use their software to show the compliance. They may even provide example project files to assist.

The following is an example of how the summary table may look like for CSA compliancy (*does not represent any real software*):

It is recognized upfront that many clauses are written that prevent any tool from generating all "Yes" responses. The main reason is that the Designer still has a role to play; even if the tool assists. The Summary Table can however be a useful benchmark. Users are strongly encouraged to review each clause's text with the Supplier's response to better understand exactly what the software tool will address.

## Accuracy of Calculations

Getting the code compliancy matrix completed is absolutely necessary, but not sufficient on its own. While there is some room for providing proof of calculation accuracy in the matrix, it would never be enough for a complete assessment. Some answers could be provided, but the required variations for a complete assessment of some clauses are numerous.

In this section a structured set of tests will be suggested, along with established baseline responses that can be compared. If a software tool does not perform some of these tests or calculations, they should indicate so in the compliancy matrix.

### Calculation Review

Pole lines consist of two major components: Wire Attachments and the Structures that support them. The most significant calculations can be complicated to compute and should be evaluated under several conditions and situations; which will be described in this section. These can be organized into the following main categories:

**Sags & Tensions**: What loads will the wire attachments exert on the structures that support them and what sags will they have?**Unguyed Structure Response**: Does the structure respond appropriately to the loads WITHOUT guying? This is a Linear Analysis.**Guyed Structure Response**: Does the structure respond appropriately to the loads WITH guying? This is a Linear Analysis.**Non-Linear**: How well are the Non-linear Analysis methodologies applied:- Non-linearity of member reactions due to structure deflection (Geometric Non-linearity)
- Material Non-linearity of Wire attachments (Non-linear Sags & Tensions)
- Material Non-linearity of Guy attachments (Stretching of guy wires under load)
- Non-linearity of loads due to structure deflection (Load Non-linearity).
- Non-linearity/flexibility of attachment supports.
**Foundation**: Can the structure's foundation withstand the necessary loads to support the structure?

The category order has been set in this way for a very important reason. The tension of wire attachments is the primary, and sometimes only, load applied to structures. The propagation of error due to errors in the input loads from wire attachments (tensions) will propagate through all the following categories. For instance, if a tension is calculated that is 10% off from the baseline results, you can expect that the other results could be off by some amount as well; even if the later categories do a perfect calculation. In some cases the error propagates in a linear fashion to the output of the next stage and in other cases it can cause a smaller or larger effect. Regardless of the error transfer function, positive error differences by themselves will always propagate to positive errors in the final Analysis.

The Unguyed Structure Response category creates a result based on the input load of the Sags & Tensions category. In this category, if the structure does not respond correctly (deflections and stresses) without guying, the results of guyed structures will not be able to be accurate as the combined deflection of the pole and guying working together is required. If the first is not accurate, it is not possible for the next. Errors will propagate..

Both the Unguyed and Guyed Structure Responses together make up a full Linear Analysis. If this level has inaccuracies, they will be propagated into the Non-Linear Analysis results. To perform a Non-Linear Analysis, several Linear Analysis iterations are required. Therefore the accuracy of the Linear Analysis results is a pre-requisite for the Non-Linear results.

Last but not least is the Foundation Analysis. The foundation of the structure is required to support the resulting loads that the pole requires at the end of all the analyses performed in the other categories. Inaccuracies can exist here as well, but it will be fed the output of the previous categories which may already have inaccuracies built-in. While the diagram may suggest that inaccuracies create higher values in the results, they can also be negative. At any stage of the analysis, the net result is the accumulation of values including the inaccuracies of the previous layers. Since the propagation of errors is not necessarily a Linear Function, the calculation of the final result can be thought of to include Generic (possibly not linear) Functions at each stage or category.:

### Error Proclamation

There are several calculations or sub-components of them that can be determined exactly through empirical means. There are others that are so difficult or impossible to calculate definitively that lead many suppliers to utilize approximation methods. There is nothing wrong with this as long as the final answer is determined to be within a small error of the real value. Several approximation techniques are taught in Engineering Schools and are considered as "Best Practice" for several common problems.

One such common problem is the analysis of structures in general. Bridges, Buildings and yes, Poles are commonly modeled using Finite Element Analysis, which itself is an approximation methodology. Each element of a structure is modeled as how it would deflect in response to applied loads. The elements are then combined into a holistic structure model for the final solution. The approximation itself is the use of approximate element models and the quantity of elements used to model the whole structure. The more elements that are used for each component, the more accurate will be the final result. Especially with tapered poles, as the physical dimensions change along the pole's length. It is not possible to solve the holistic structure model with an infinite number of elements for each structural component. Fortunately a much more reasonable number of elements has been found to provide good accuracy.

Another common engineering problem involves the solution of very complicated equations that involve linear and non-linear components. A very common solution can be arrived at using an iterative process of incrementing a value and adjusting it until the final value solves the equations within a certain specific range of error. This process can generate very good answers quickly, within a certain error of the exact answer. A good example of this is Sags and Tensions of wire attachments that have non-linear stress/strain characteristics.

While it is possible for suppliers to proclaim their error predictions for these approximation steps, they may not wish to do this for competitive reasons. It would seem fair though to compare their results to others that may also have needed to use suitable approximation means to derive their answers. Quick Pole provides the user with an estimate of inaccuracy for the structural analysis and provides options for further improving this accuracy.

### Calculation Validation

Each area of Calculation Verification is discussed in the following: