Numerical framework for fatigue lifetime prediction of complex welded structures

A BSTRACT . Ageing infrastructure has been a significant concern for different industrial sectors across Europe. Fatigue cracking is one of the most important damage mechanisms that affect structural health of welded steel structures. Fatigue assessment of welded details in large, complex structures is a difficult and time consuming task. In this paper a numerical framework for fatigue assessment of welded details is presented. In view of industrial applications, automated hot spot stress algorithms for plate and tubular joints were developed and integrated in the framework. The framework provides practicing engineers with an effective tool for fatigue assessment of different components in conformity with leading design codes. Furthermore, apart from Miner’s rule the framework allows easy implementation of different non-linear damage accumulation models in order to account for load interaction and load sequence effects.


INTRODUCTION
geing infrastructure has been a significant concern for different industrial sectors across Europe. A report of the EU funded 'Sustainable Bridges' project mentions that 40% of metallic (mostly steel) railway bridges are between 50 and 100 years old and 28% are over 100 years old [1]. The EU funded BRIME project [2] reported that in four A European countries, namely France, Germany, UK and Norway respectively, 39%, 37%, 30% and 26% of the road bridges have defects. The 'Long Life Bridges' project [3] was an EU-funded projects that introduced solutions to more reliably determine the safety of bridges motivated by the ageing network of large-span railway bridges. Similar concerns of ageing infrastructures are emerging in the energy sector. The designed lifetime of a wind farm is generally reported to be 20 -25 years [4]. This means that between 2020 and 2030, 19 European offshore wind farms reach their design life [5,6]. The answer to the ageing infrastructure is either lifetime extension (e.g. repairing, partially replacing or repowering in the case of wind turbines) or decommissioning. Lifetime extension is necessary from an economical viewpoint, but requires reassessment of structural health and updated, more accurate estimations of the structural lifetime under present operating conditions in order to optimize maintenance. The reassessment of structural health is in most cases not a straightforward task as the loads to which the structures were subjected are unknown. Installation of structural health monitoring systems (SHM), which implies the implementation and use of damage detection strategies and systems [7], can be used to gain knowledge about current structural health. In order to make a reliable prediction of the lifetime of a structure, an accurate knowledge of (degraded) material characteristics and (past, current and future) operating conditions (structural loads, environmental conditions, …) is required. To tackle these problems, the Flemish research project SafeLife [8] was started. It aims to develop new and robust structural health monitoring procedures and numerical tools based on load and condition monitoring that enable more accurate lifetime predictions. Within the SafeLife project, the focus is on welded steel structures, such as offshore jackets, railway bridges and crane runway girders. A key concern about these structures is fatigue crack development at the welds due to repeated cyclic loading. Welds (especially fillet welds) are locations where high stress concentrations occur, making them prone to fatigue. Fig. 1 shows the number of cracks, categorized based on their reported cause, in offshore structures that are situated on the Norwegian Continental Shelf (NCS). A recent literature review on steel bridges highlights that the ageing network is subjected to loads and speeds which are much more damaging than those of the design spectra. This makes structural fatigue one of the leading failure causes for steel bridges [9]. Weld details similar to those in steel bridges can be found in crane runway girders. The very high loads and large number of welded details needed to ensure the structure's stiffness makes them very susceptible to fatigue cracking [10]. Figure 1: Cracks reported in offshore structures located on the Norwegian Continental Shelf (NCS). The graph is based on data from the CODAM database made by the governing regulator on the NCS, the Petroleum Safety Authority (PSA) [11]. The majority of the reported cracks were located at the nodes of the jacket structure.
In the scope of the SafeLife project, a numerical framework for an endurance based fatigue assessment of welded structures has been developed. In this paper, the framework that is based on Python programming language will be elucidated. In the next section, an overview of the framework is presented. The sections thereafter provide a detailed explanation of all aspects of the framework. These sections are ordered chronologically with respect to the sequence of calculations that are performed within the framework.

NUMERICAL FRAMEWORK FOR FATIGUE LIFETIME ASSESSMENT: AN INTRODUCTION
atigue assessment of welded details in large industrial structures is a major challenge. Due to a combination of structural complexity and its operating environment, direct measurements at the weld are often not feasible or even F impossible. An example is offshore structures where the most critical details might be located below sea level or in the seabed. To complicate it even further, the information on the most critical joints is often not known in advance [11]. A combination of load monitoring and finite element modeling can be used to obtain accurate hot spot stresses for fatigue analysis [12]. Using global monitoring techniques (e.g. FBG, accelerometers, interferometric radar [13]) it is possible to capture the overall structural behavior in different loading conditions [14]. A global finite element model can be used to determine where the most critical locations will be located [15]. From the joints that are most prone to fatigue failure, local submodels can be developed. The boundary conditions of the submodel will be driven by results of the global model to obtain accurate stresses. Details such as weld geometry, holes, etc. which are not included in the global model have to be included in the submodel. Including these features is necessary to obtain results that are representative for the accurate joint. As mentioned in the introduction, welds are typical fatigue critical details. When using finite element analysis to assess welds, stress results will be non-converging due to the geometric discontinuity. In other words, the stresses tend to go to infinity as the mesh is further refined. Consequently, the stress values calculated by the finite element software exactly at the weld toe cannot be used for fatigue calculations directly. Generally, fatigue assessment of structural details requires determination of a nominal stress that can be used together with an S-N curve of a certain detail category (e.g. Eurocode3 [16]). For complex parts, determination of the nominal stress is difficult or even impossible. Therefore, the hot spot stress approach was developed [17]. The hot spot stress approach is well established at this point and has been adopted by design codes for both onshore and offshore applications (e.g. Eurocode3, DNV-GL-RP203 [18]). In summary, the hot spot stress approach specifies that the stress at two (or three) read-out points in front of the weld (i.e. the hot spot) have to be determined. The stresses at those read-out points can then be extrapolated (linear or quadratic depending on the method) towards the hot spot as illustrated in Fig. 2. The distance of those read-out points from the hot spot depends on the type of hot spot for which the reader is referred to the appropriate design code or standard. A more detailed explanation and background of the hot spot stress approach can be found in [19][20][21]. Figure 2: Evaluation of the hot spot stress (σHS) at weld toe by surface stress extrapolation [22] The hot spot stress resulting from the extrapolation of the stress components in the read-out points is a fictional value that can be used with an associated S-N curve (e.g. FAT90 or FAT100 classes defined by the IIW [20]) to determine the failure life of a welded detail. Using the hot spot stress approach, the measured load histories can be converted to local stress histories by performing simulations for the relevant load cases. The obtained stress histories can be further processed using a counting algorithm (e.g. rainflow counting) in order to obtain a fatigue spectrum. Fig. 3 illustrates the fatigue spectrum obtained from an arbitrary load history after a rainflow analysis. The fatigue spectrum can be used to calculate the lifetime of the structure by applying a damage accumulation law. The most common damage accumulation law is Miner's rule [23], which is expressed as: (1) where D is the damage, ni is the number of cycles that the structure is loaded with a stress amplitude σi and Ni is the number of cycles to failure if a stress amplitude σ i is applied. When the damage equals a critical value, failure is assumed to occur. In other words, Eqn. 1 is a way to quantify the consumed lifetime and thus the remaining lifetime of a structure. It is important to mention that Miner's rule is known to produce extremely non-conservative lifetime estimations [24]. Due to its inherent linearity, it is unable to account for load interaction and load sequence effects which have been shown to drastically affect the lifetime [23,24]. Numerous non-linear damage models which claim to overcome these shortcomings have been published in literature (see [25,26]), but so far none have been adopted in standard industry practice. This can mainly be attributed to the fact that they are in general either too complex to make their way to industry or that they have been inadequately reviewed and compared to other models. Nonetheless, the intention of all cumulative damage models is the same, that is estimation of the fatigue lifetime based on the fatigue spectra. Performing the relevant damage calculations provides the practicing engineer with results that can be used as input for a predictive maintenance plan. Application of the fatigue assessment approach described in this section for a large number of structural details is a very time consuming and thus costly process. To make this approach feasible for fatigue assessment of a large number of structures and structural details, a numerical framework was developed. The complete workflow, showing the input, the framework and the output is illustrated in Fig. 4. The inputs of the framework are the fatigue spectrum (e.g. Fig. 3), the relevant S-N curve and the output of a linear elastic finite element analysis of a structural detail for the considered load case. Based on this the framework calculates the fatigue lifetime of the structural component. For fatigue assessment of a welded detail, a hot spot stress algorithm was developed which is capable of determining the hot spot stresses along the desired welds. The output of the hot spot stress algorithm can be used in the damage calculation given that the correct S-N curve is used. In order to research the effectiveness of different non-linear cumulative damage models, several have been implemented in the framework and compared (see [29]).

STRUCTURAL ANALYSIS
he first step towards obtaining accurate fatigue lifetime predictions for large scale industrial structures is an accurate input of local stresses. To achieve this, a two-stage modeling process is adopted. The first stage is the development of a finite element model of the (near) complete structure with realistic boundary conditions and loads. The second stage is the development of a submodel that will be used as an input for the fatigue assessment. The use of a submodeling approach allows for an accurate evaluation of complex structural (welded) joints with a relatively low computational cost. The accuracy of a detailed finite element model is strongly dependent on the accuracy of the boundary conditions, which in complex structures are difficult to compute. Submodeling is an effective method to obtain accurate boundary conditions for detailed structural joints and different loading scenarios.

Global model
First a global finite element model from the structure of interest has to be developed. The global model can be composed of beam elements or shell elements or a combination thereof. It allows to simulate the overall deformations of the structure and the corresponding nominal stresses for different load cases. This means that the structural details do not need to be modeled explicitly, but the main structural elements and boundary conditions should be included. Fig. 5 shows the global finite element model of a crane runway girder. The most important section is the main supporting girder (a). The rail (b) on which the crane operates sits on top of a neoprene support pad (not modelled) and is secured to the top flange. To account for the stiffness of the rail, a beam element that has a comparable stiffness was added to the top flange. The truss (c) supporting the main girder was modelled using beam elements as its main function is to divert the loads away from the main girder. On top of the supporting truss lies a walkway (d) that was welded to it. This walkway was also included in the model as it increases the transverse stiffness of the structure considerably. The transversal stiffeners (e) in the web which reduce out-of-plane deformations were modelled using shell elements. These elements were chosen because the welds connecting the stiffeners to the web are known to be fatigue critical details [30]. The complete structure is made out of S355 steel. The actual material properties of the construction steel and weld materials are unknown, documentation on material properties and welding procedures was not preserved. Furthermore, the crane girder entered service in 1964, meaning nominal values of material properties are likely an overestimation of the actual (degraded) properties due to aging of the structure. Since the structure is still in operation it is not possible to extract sufficient material for destructive evaluation of material properties. In the scope of the Safelife project, a mini-sampling technique allowing limited material extraction from infrastructure will be developed, this is however outside of scope of this paper. For the current model an elastic modulus of 210 GPa and a poisson coefficient of 0.3 were used. For application of the hot spot stress approach the FAT 90 S-N curves of the IIW guidelines [31] are used. All shell elements that were used to mesh the model shown in Fig. 5 are 8-node doubly curved, thick shell elements with reduced integration. Quadratic quadrilateral elements are chosen to avoid shear-locking which is an important consideration when modeling a structure subjected to bending loads. The importance of avoiding shear-locking is shown in Fig. 6. The model which uses linear shell elements is too stiff and unable to capture the bending behavior. The result is a severe underestimation of the stresses, which can be clearly observed at the end of the stiffeners. The beam elements of the truss were modelled using quadratic beam elements to achieve the most accurate solution for the global behavior of the model. Based on the stress patterns resulting from the analysis of the global model, potential fatigue critical locations can be identified. The structural details that are identified as fatigue critical can then be modelled in detail by means of a submodel to obtain an accurate stress solution near these critical locations. Fig. 7 shows an example of a detail that was correctly identified (based on observations made of the actual structure) as fatigue critical for the studied crane girder based on the global model.

Submodel
The submodel is a three-dimensional model of a structural detail of the global model. The detailed representation of the submodel implies that solid elements are used. The boundary conditions of the submodel are driven by results from the analysis of the global model . Two different techniques exist for defining the boundary conditions of the submodel, nodebased submodeling where nodal output results (e.g. displacement) of the global model are interpolated to the nodes of the submodel boundary and force-based submodeling where the reaction forces at the cut-boundary are transferred to the submodel. The latter is useful when a stiffness mismatch exists between the submodel and the global model [32]. Stiffness mismatch can be caused by, for example, including fillets (i.e. increasing the stiffness) or holes (i.e. decreasing the stiffness) in the submodel which are not explicitly modeled in the global model. Depending on the finite element software that is used, certain submodeling approaches may not available. For example, Abaqus v2019 only allows nodal-based submodeling for shell-to-solid submodeling and is not capable of performing beam-to-solid submodeling. The finite element software Ansys is more advanced in this regard, allowing both nodal-based and force based submodeling for beam-to-solid and shellto-solid submodeling. Fig. 8 shows the submodel that was developed for the weld detail that was identified as potentially fatigue critical in Fig. 7. An overlay plot of the submodel in the global model is also shown in Fig. 8 (right-hand side) to illustrate the increased accuracy that is obtained by using a submodel. The weld geometry was included in the submodel based on the original design of the crane girder with the goal of including the effect of the added stiffness introduced by the weld. The choice to model the weld as such is also motivated by the fact that experimental evidence showed that fatigue failure of the weld occurred at the weld toe. When the finite element analysis of the submodel is completed, the stress components resulting from the analysis and the nodal coordinates corresponding to the mesh of the submodel are written to an ASCII file. This ASCII file serves as the input for the fatigue assessment. The use of a standardized input format ensures compatibility with different (commercial) finite element softwares.

HOT SPOT STRESS ALGORITHM
lthough the numerical framework is sufficiently flexible to assess the fatigue life of different types of structures or components, the focus lies on lifetime assessment of welded structures. Therefore two hot-spot stress algorithms have been developed that allow the framework to deal with most structural weld details. In this section an algorithm for automatic hot spot stress determination in welded plate joints is described. The second hot spot stress algorithm specifically deals with tubular joints. It is capable of calculating the hot spot stress around the complete circumference of the weld and will be reported in a future paper. The first step towards calculating the hot spot stresses at the nodes of a weld toe is determination of the coordinates of the read-out points. In the finite element model three node sets have to be defined for each weld. When the analysis is completed, the coordinates and nodal stress components of the nodes associated with these node sets are written to ASCII file(s) which are used as input for the framework. This means that the framework uses a 3D point cloud of the surface nodes as input. The advantage of this approach is that it can be used with virtually any finite element software. Furthermore, the A framework was developed to be completely independent of the orientation of the submodel in the global coordinate system of the finite element software for the sake of robustness. The node sets that have to be defined are: one node set for each of the surfaces of the plates that are joined by the weld and a node set for each weld section. Fig. 9 shows the node sets that have been defined and extracted from the mesh of the submodel of the crane girder's bottom flange; the different colors indicate the different node sets. The green node set is used for each considered weld section in the case of the studied submodel because each surface which has a unique normal vector has to be treated separately. The figure also serves as a visualization of the data that is extracted from the finite element model and used as input for the framework, i.e. a 3D point cloud with an associated stress tensor in each point. Figure 9: Node sets that are defined and used as input for the fatigue assessment framework. Each color on the right image defines a single node set.
In order to determine the coordinates of the read-out points associated with each weld toe node, the extrapolation direction for each weld toe node has to be defined first. To achieve this, a local coordinate system has to be established in each of these nodes. Each local coordinate system is formed by its associated weld toe node being the origin and a basis consisting of three mutually orthogonal unit vectors n, t and s. These vectors are referred to as the normal vector, the tangent vector and the surface vector respectively. Fig. 10 shows an illustration of the local coordinate systems defined for one of the welds during the hot spot stress analysis. In the next subsection the determination of these vectors is explained in detail for a single weld toe. The process is identical for each weld toe.

Determination of the extrapolation directions
As mentioned above, the input of the hot spot stress algorithm are ASCII files that contain the node sets of the surfaces that are joined by the weld as well as a node set containing the nodes of the weld surface. Consider the matrices A and B which hold the nodal coordinates of the weld face and of a single plate surface respectively (e.g. the red and teal node sets in Fig. 9 respectively).
All nodes in the matrix B originate from the surface of a plate which means that they all lie in a single plane. In each node of the weld toe corresponding to the considered plate, the orientation of the normal vector n is parallel to the vector perpendicular to that plane. To determine this perpendicular vector the centroid C B of the nodes in B is first calculated: Next using singular value decomposition (SVD) the normal of the plane defined by the nodes in B can be found.
Eqn. 3 is the SVD of the matrix resulting from the subtraction of the centroid from all elements in B . In other words, the matrix that is decomposed can be described by all vectors that have singular values larger than zero. By definition the left-singular vectors are a set of orthonormal eigenvectors. This means that the vector associated with the singular value equal to zero is normal to the plane since the vectors associated with non-zero singulars span the plane. This can be expressed as: where the vector {u 1 , u 2 } spans the collection of the points in B. The vector u 3 that is associated with σ 3, which is equal to zero, is not included in the plane and must thus be a normal vector n to the plane since all the left-singular vectors are orthonormal.
The second vector that has to be determined is the tangent vector t in each weld node. Whilst the normal vectors in each weld toe node have the same orientation, this is not necessarily true for the tangent vector (i.e. if the weld line is curved).
The weld toe nodes can be identified as the intersection between the matrices A and B. Consider the matrix P that contains all coordinates of the weld toe, then P can be expressed as: The unit tangent vector t in a node can be approximated based on the location of the nodes at either side of the considered node. Consider a node Pj that lies on the considered weld toe. If the two closest neighboring nodes Pi and Pk on the same weld toe are determined, they must lie on either side of P j . The unit vector tangent to the weld line in P j can be approximated by Once the normal and tangent vectors are known, the surface vector s in a weld toe node can be calculated as the cross product of its normal and tangent vector. As a consequence, the surface vector lies on the surface of the considered welded plate. Finally, the extrapolation directions are determined. The extrapolation direction at any weld toe node is parallel to the surface vector and oriented away from the weld root. Based on the above described methods used to determine the normal and tangent vectors, the orientation of the surface vector is not guaranteed to coincide with the desired extrapolation direction. The only certainty is that the surface vector is parallel to the extrapolation direction. To ensure that the orientation of the surface vector coincides with the extrapolation direction, an additional step is introduced. First the centroid CA of node set A (i.e. the nodal coordinates of the weld face) is determined in the same way as for B (Eqn. 2). Next, for each weld toe node a 'test vector' a is defined as: The correctly oriented surface vector in each weld toe node can then be determined as: If the dot product is positive, the angle φ between the surface vector s and the test vector a measures less than 90° which means that the orientation of the surface vector has to be reversed. The outcome of this step is that the surface vector in each node is oriented in the same way as the extrapolation direction. This additional step is illustrated in Fig. 11, which is subdivided in three images to show the process of determining the extrapolation direction. The first image shows how the surface vectors might be positioned after determining them from the normal and tangent vectors and the centroid C A of node set A. The second image illustrates how the test vector a and the angle φ are defined. Finally the result of applying Eqn. 8 is illustrated.

Determination of the hot spot stress
When the extrapolation direction has been determined, the coordinates of the read-out points at an arbitrary distance x along the (now correctly oriented) surface vector s can be determined as: Here the matrix S contains the surface unit vectors of the considered weld toe and R contains the coordinates of the readout points, Eqn. 9 is illustrated in Fig. 12. The arbitrary distance x depends on the design code that is representative for the considered application. The next step is the determination of the stress components at the read out points. If the read-out point coincides with a node in B the stress components can simply be extracted from the corresponding node. If a read-out point does not coincide with a node in B, then first the two nodes in B that are closest to the read-out point are determined. Next, the stress components in the read-out point are calculated as the weighted average (based on the distance between the node and the read out point) of the stress components associated with the two closest nodes. Once the stress components in the read-out points are determined, they are extrapolated towards the associated weld toe node (i.e. hot spot). At the weld toe, the hot spot stress can then be calculated in compliance with the chosen design code or standard. It is well known that the stresses calculated using finite element simulations near stress concentrations are dependent on the mesh density and the element properties. In order to obtain consistent results, it is necessary to follow some guidelines on the choice of element type and size [20,22,33]. Several leading design codes include such recommendations. For example, DNV-RP-C203 [18] recommends that a 20-node solid elements with a size of t/2 × t/2 (where t is the plate thickness as indicated in Fig. 12) or 8-node shell elements with a size of t × t are used. The stress components in two read-out points located at x = t/2 and x = 3t/2 have to be linearly extrapolated and the principal stresses are calculated at the hot spot. The IIW recommendations contain a number of different surface extrapolation options, depending on the type of hot spot, the type of elements (solid or shells) and the preferred mesh density (coarse or fine).
Reference is made to [31] for a detailed description.
3 m x with     R A S R  Figure 11: Illustration of how the correct orientation of the surface vector can be guaranteed by using a test vector a Figure 12: Determination of the read-out points R 1 and R 2 according to Eqn. 9.

FATIGUE LIFETIME PREDICTION
n view of industrial application of the framework, the load history input would be, for example, obtained from a rainflow counting of measured/predicted stresses. To this end, the structural analysis is performed for a load case with normalized loads. This means that the stresses that are determined from the hot spot stress algorithm, can be multiplied with the load history to obtain the stress values that are to be used with the appropriate S-N curve. Thus the load history is actually used as scale factor for the stress components calculated in the finite element analysis. This method is valid as long as it is used to assess high cycle fatigue where the material response remains linearly elastic at all times and thus the load is proportional to the stress [34]. In order to clarify the applied approach it is exemplified using the crane girder case. Consider two load cases, one where the crane moves over the crane runway girder with a maximal allowed load and a second one without a load. In both cases the stresses in the structure are proportional to the total load acting on the crane girder. If both load cases are considered identical with the only exception being the load carried by the crane, then the stresses in both cases can be determined as follows. First a finite element analysis for a unit load (e.g. 1.0 kN) is carried out. The stresses calculated for the actual load cases are calculated by multiplying the stresses of the unit load case with the ratio of the actual load over the unit load. The reason for this approach is that it is an intuitive way of composing a fatigue spectrum. For illustrative purposes, an arbitrary fatigue spectrum is shown in Fig. 13. As briefly discussed in the second section, the fatigue life under variable amplitude loading can be determined using a cumulative damage model. Cumulative damage models are typically a function of the cycle ratio n i /N fi . The fatigue life N fi corresponds to a constant stress range or stress amplitude in an S-N curve. The framework includes two different calculation methods to determine the estimated fatigue life. In the first method, the fatigue spectrum (e.g. Fig. 13) is repeated until failure occurs (i.e. D = 1). The purpose of this method is to estimate the fatigue life based on a fatigue spectrum that is based on a certain reference time frame. If the fatigue spectrum that is used as input corresponds to, for example, a year, the number of spectrum repetitions readily provides the number of expected years to failure. In the second method the last load block (identified by the dashed line in Fig. 13) is repeated until failure is expected to occur. This method was included to simulate typical two-level and multi-level load block experiments which provides a convenient way of comparing different I damage models to experimental results. It is important to mention that the fatigue spectrum obtained from a rainflow counting analysis is typically arranged from high to low stress levels. The consequence is that any load sequence or load interaction effects that possibly influence the fatigue life are not accounted for. If Miner's rule is used to assess the fatigue life this is not important. However, when using a non-linear damage model, with the intent of accounting for sequence or interaction effects, a different counting algorithm could be advisable. The final output of the framework is the fatigue lifetime of in each (weld toe) node. To demonstrate the results of a fatigue assessment using the presented framework, a virtual fatigue spectrum based on realistic lifting loads was composed for the crane girder discussed in previous sections. This virtual fatigue spectrum composed of four loading blocks is detailed Tab. 1. Using the framework with the integrated automated hot spot stress approach, the fatigue life of the structural detail shown in Fig. 8 can be calculated. The hot spot stress analysis is performed according to IIW guidelines; the read-out points are positioned at 0.4t and 1.0t and a FAT90 S-N curve is used. Fig. 14 shows the calculated hot spot stress distribution along the weld toe for load block 1 in Tab. 1. The largest stress concentration is found at the left corner of the chamfer where the weld changes direction, which is also the location where cracks have been found to initiate in the real structure. Using the Miner rule, fatigue failure of the weld (D = 1) is expected to occur after 4798394 cycles. This corresponds to 141.2 repetitions of the fatigue spectrum.

CONCLUSIONS
n this paper a numerical framework for fatigue assessment of structural components and specifically welded joints has been presented. The goal of this framework is to address the following identified shortcomings. First of all, applying the hot spot stress approach to a large number of weld details is a time consuming calculation. Therefore an easily implementable hot spot stress algorithm for plate joints was introduced. Second, damage calculation of structures are I generally based on Miner's linear damage accumulation rule. It is, however, well established that Miner's rule can lead to extremely non-conservative design calculations. Although a large collection of non-linear damage models have been published, no general agreement has been made on which model is best. The framework presented in this paper allows for easy implementation and thus comparison of different damage models, which is the aim of a future study. The framework presented in this paper has been developed based on the Python programming language. Its capabilities have been presented through application of the different methods on an actual operational crane girder. Although the framework has a seemingly similar purpose as available commercial software, it sets itself apart by the ease of implementation of different types of damage models (both linear and non-linear), mean stress correction models and hot spot stress algorithms. An example of a fatigue assessment for a structural detail of the crane girder based on virtual fatigue spectrum was performed using the framework to show how it can be used. The finite element model of the crane girder could not yet be validated by means of experimental data; it has only been compared to analytical calculations of a simplified structure. To further validate the finite element model, fiber Bragg grating (FBG) sensors will be installed along the length of the main girder to measure its global bending behavior for different load cases.