<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE article PUBLIC "-//NLM//DTD Journal Archiving and Interchange DTD v2.3 20070202//EN" "archivearticle.dtd">
<article article-type="methods-article" dtd-version="2.3" xml:lang="EN" xmlns:mml="http://www.w3.org/1998/Math/MathML" xmlns:xlink="http://www.w3.org/1999/xlink">
<front>
<journal-meta>
<journal-id journal-id-type="publisher-id">Front. Built Environ.</journal-id>
<journal-title>Frontiers in Built Environment</journal-title>
<abbrev-journal-title abbrev-type="pubmed">Front. Built Environ.</abbrev-journal-title>
<issn pub-type="epub">2297-3362</issn>
<publisher>
<publisher-name>Frontiers Media S.A.</publisher-name>
</publisher>
</journal-meta>
<article-meta>
<article-id pub-id-type="publisher-id">1270996</article-id>
<article-id pub-id-type="doi">10.3389/fbuil.2023.1270996</article-id>
<article-categories>
<subj-group subj-group-type="heading">
<subject>Built Environment</subject>
<subj-group>
<subject>Methods</subject>
</subj-group>
</subj-group>
</article-categories>
<title-group>
<article-title>Experimental benchmark control problem for multi-axial real-time hybrid simulation</article-title>
<alt-title alt-title-type="left-running-head">Condori Uribe et al.</alt-title>
<alt-title alt-title-type="right-running-head">
<ext-link ext-link-type="uri" xlink:href="https://doi.org/10.3389/fbuil.2023.1270996">10.3389/fbuil.2023.1270996</ext-link>
</alt-title>
</title-group>
<contrib-group>
<contrib contrib-type="author" corresp="yes">
<name>
<surname>Condori Uribe</surname>
<given-names>Johnny W.</given-names>
</name>
<xref ref-type="aff" rid="aff1">
<sup>1</sup>
</xref>
<xref ref-type="corresp" rid="c001">&#x2a;</xref>
<uri xlink:href="https://loop.frontiersin.org/people/2392178/overview"/>
<role content-type="https://credit.niso.org/contributor-roles/data-curation/"/>
<role content-type="https://credit.niso.org/contributor-roles/formal-analysis/"/>
<role content-type="https://credit.niso.org/contributor-roles/investigation/"/>
<role content-type="https://credit.niso.org/contributor-roles/methodology/"/>
<role content-type="https://credit.niso.org/contributor-roles/resources/"/>
<role content-type="https://credit.niso.org/contributor-roles/software/"/>
<role content-type="https://credit.niso.org/contributor-roles/supervision/"/>
<role content-type="https://credit.niso.org/contributor-roles/validation/"/>
<role content-type="https://credit.niso.org/contributor-roles/visualization/"/>
<role content-type="https://credit.niso.org/contributor-roles/writing-original-draft/"/>
<role content-type="https://credit.niso.org/contributor-roles/Writing - review &#x26; editing/"/>
<role content-type="https://credit.niso.org/contributor-roles/project-administration/"/>
<role content-type="https://credit.niso.org/contributor-roles/conceptualization/"/>
</contrib>
<contrib contrib-type="author">
<name>
<surname>Salmeron</surname>
<given-names>Manuel</given-names>
</name>
<xref ref-type="aff" rid="aff1">
<sup>1</sup>
</xref>
<role content-type="https://credit.niso.org/contributor-roles/investigation/"/>
<role content-type="https://credit.niso.org/contributor-roles/methodology/"/>
<role content-type="https://credit.niso.org/contributor-roles/resources/"/>
<role content-type="https://credit.niso.org/contributor-roles/software/"/>
<role content-type="https://credit.niso.org/contributor-roles/validation/"/>
<role content-type="https://credit.niso.org/contributor-roles/Writing - review &#x26; editing/"/>
<role content-type="https://credit.niso.org/contributor-roles/data-curation/"/>
<role content-type="https://credit.niso.org/contributor-roles/formal-analysis/"/>
<role content-type="https://credit.niso.org/contributor-roles/visualization/"/>
<role content-type="https://credit.niso.org/contributor-roles/writing-original-draft/"/>
</contrib>
<contrib contrib-type="author">
<name>
<surname>Patino</surname>
<given-names>Edwin</given-names>
</name>
<xref ref-type="aff" rid="aff1">
<sup>1</sup>
</xref>
<uri xlink:href="https://loop.frontiersin.org/people/2396423/overview"/>
<role content-type="https://credit.niso.org/contributor-roles/data-curation/"/>
<role content-type="https://credit.niso.org/contributor-roles/investigation/"/>
<role content-type="https://credit.niso.org/contributor-roles/methodology/"/>
<role content-type="https://credit.niso.org/contributor-roles/software/"/>
<role content-type="https://credit.niso.org/contributor-roles/Writing - review &#x26; editing/"/>
<role content-type="https://credit.niso.org/contributor-roles/formal-analysis/"/>
<role content-type="https://credit.niso.org/contributor-roles/resources/"/>
<role content-type="https://credit.niso.org/contributor-roles/validation/"/>
<role content-type="https://credit.niso.org/contributor-roles/writing-original-draft/"/>
</contrib>
<contrib contrib-type="author">
<name>
<surname>Montoya</surname>
<given-names>Herta</given-names>
</name>
<xref ref-type="aff" rid="aff1">
<sup>1</sup>
</xref>
<role content-type="https://credit.niso.org/contributor-roles/investigation/"/>
<role content-type="https://credit.niso.org/contributor-roles/validation/"/>
<role content-type="https://credit.niso.org/contributor-roles/Writing - review &#x26; editing/"/>
<role content-type="https://credit.niso.org/contributor-roles/conceptualization/"/>
<role content-type="https://credit.niso.org/contributor-roles/methodology/"/>
<role content-type="https://credit.niso.org/contributor-roles/resources/"/>
<role content-type="https://credit.niso.org/contributor-roles/formal-analysis/"/>
</contrib>
<contrib contrib-type="author">
<name>
<surname>Dyke</surname>
<given-names>Shirley J.</given-names>
</name>
<xref ref-type="aff" rid="aff1">
<sup>1</sup>
</xref>
<xref ref-type="aff" rid="aff2">
<sup>2</sup>
</xref>
<uri xlink:href="https://loop.frontiersin.org/people/1036259/overview"/>
<role content-type="https://credit.niso.org/contributor-roles/conceptualization/"/>
<role content-type="https://credit.niso.org/contributor-roles/methodology/"/>
<role content-type="https://credit.niso.org/contributor-roles/Writing - review &#x26; editing/"/>
<role content-type="https://credit.niso.org/contributor-roles/funding-acquisition/"/>
<role content-type="https://credit.niso.org/contributor-roles/project-administration/"/>
<role content-type="https://credit.niso.org/contributor-roles/resources/"/>
<role content-type="https://credit.niso.org/contributor-roles/supervision/"/>
<role content-type="https://credit.niso.org/contributor-roles/validation/"/>
</contrib>
<contrib contrib-type="author">
<name>
<surname>Silva</surname>
<given-names>Christian E.</given-names>
</name>
<xref ref-type="aff" rid="aff2">
<sup>2</sup>
</xref>
<xref ref-type="aff" rid="aff3">
<sup>3</sup>
</xref>
<uri xlink:href="https://loop.frontiersin.org/people/1954105/overview"/>
<role content-type="https://credit.niso.org/contributor-roles/Writing - review &#x26; editing/"/>
<role content-type="https://credit.niso.org/contributor-roles/formal-analysis/"/>
<role content-type="https://credit.niso.org/contributor-roles/methodology/"/>
<role content-type="https://credit.niso.org/contributor-roles/resources/"/>
<role content-type="https://credit.niso.org/contributor-roles/software/"/>
<role content-type="https://credit.niso.org/contributor-roles/validation/"/>
<role content-type="https://credit.niso.org/contributor-roles/visualization/"/>
</contrib>
<contrib contrib-type="author">
<name>
<surname>Maghareh</surname>
<given-names>Amin</given-names>
</name>
<xref ref-type="aff" rid="aff4">
<sup>4</sup>
</xref>
<role content-type="https://credit.niso.org/contributor-roles/conceptualization/"/>
<role content-type="https://credit.niso.org/contributor-roles/formal-analysis/"/>
<role content-type="https://credit.niso.org/contributor-roles/methodology/"/>
<role content-type="https://credit.niso.org/contributor-roles/resources/"/>
<role content-type="https://credit.niso.org/contributor-roles/supervision/"/>
<role content-type="https://credit.niso.org/contributor-roles/writing-original-draft/"/>
<role content-type="https://credit.niso.org/contributor-roles/software/"/>
</contrib>
<contrib contrib-type="author">
<name>
<surname>Najarian</surname>
<given-names>Mehdi</given-names>
</name>
<xref ref-type="aff" rid="aff5">
<sup>5</sup>
</xref>
<role content-type="https://credit.niso.org/contributor-roles/formal-analysis/"/>
<role content-type="https://credit.niso.org/contributor-roles/methodology/"/>
<role content-type="https://credit.niso.org/contributor-roles/resources/"/>
<role content-type="https://credit.niso.org/contributor-roles/software/"/>
<role content-type="https://credit.niso.org/contributor-roles/visualization/"/>
<role content-type="https://credit.niso.org/contributor-roles/Writing - review &#x26; editing/"/>
<role content-type="https://credit.niso.org/contributor-roles/conceptualization/"/>
</contrib>
<contrib contrib-type="author">
<name>
<surname>Montoya</surname>
<given-names>Arturo</given-names>
</name>
<xref ref-type="aff" rid="aff5">
<sup>5</sup>
</xref>
<uri xlink:href="https://loop.frontiersin.org/people/1087365/overview"/>
<role content-type="https://credit.niso.org/contributor-roles/methodology/"/>
<role content-type="https://credit.niso.org/contributor-roles/resources/"/>
<role content-type="https://credit.niso.org/contributor-roles/software/"/>
<role content-type="https://credit.niso.org/contributor-roles/supervision/"/>
<role content-type="https://credit.niso.org/contributor-roles/validation/"/>
<role content-type="https://credit.niso.org/contributor-roles/Writing - review &#x26; editing/"/>
<role content-type="https://credit.niso.org/contributor-roles/conceptualization/"/>
</contrib>
</contrib-group>
<aff id="aff1">
<sup>1</sup>
<institution>Lyles School of Civil Engineering</institution>, <institution>Purdue University</institution>, <addr-line>West Lafayette</addr-line>, <addr-line>IN</addr-line>, <country>United States</country>
</aff>
<aff id="aff2">
<sup>2</sup>
<institution>School of Mechanical Engineering</institution>, <institution>Purdue University</institution>, <addr-line>West Lafayette</addr-line>, <addr-line>IN</addr-line>, <country>United States</country>
</aff>
<aff id="aff3">
<sup>3</sup>
<institution>Escuela Superior Polit&#xe9;cnica del Litoral ESPOL</institution>, <addr-line>Guayaquil</addr-line>, <country>Ecuador</country>
</aff>
<aff id="aff4">
<sup>4</sup>
<institution>Verus Research</institution>, <addr-line>Albuquerque</addr-line>, <addr-line>NM</addr-line>, <country>United States</country>
</aff>
<aff id="aff5">
<sup>5</sup>
<institution>School of Civil &#x26; Environmental Engineering, and Construction Management</institution>, <institution>The University of Texas at San Antonio</institution>, <addr-line>San Antonio</addr-line>, <addr-line>TX</addr-line>, <country>United States</country>
</aff>
<author-notes>
<fn fn-type="edited-by">
<p>
<bold>Edited by:</bold> <ext-link ext-link-type="uri" xlink:href="https://loop.frontiersin.org/people/287835/overview">Arturo Tena-Colunga</ext-link>, Autonomous Metropolitan University, Mexico</p>
</fn>
<fn fn-type="edited-by">
<p>
<bold>Reviewed by:</bold> <ext-link ext-link-type="uri" xlink:href="https://loop.frontiersin.org/people/288183/overview">Manuel Euripides Ruiz Sandoval</ext-link>, Autonomous Metropolitan University, Mexico</p>
<p>
<ext-link ext-link-type="uri" xlink:href="https://loop.frontiersin.org/people/601693/overview">Kohju Ikago</ext-link>, Tohoku University, Japan</p>
</fn>
<corresp id="c001">&#x2a;Correspondence: Johnny W. Condori Uribe, <email>jcondori@purdue.edu</email>
</corresp>
</author-notes>
<pub-date pub-type="epub">
<day>28</day>
<month>11</month>
<year>2023</year>
</pub-date>
<pub-date pub-type="collection">
<year>2023</year>
</pub-date>
<volume>9</volume>
<elocation-id>1270996</elocation-id>
<history>
<date date-type="received">
<day>01</day>
<month>08</month>
<year>2023</year>
</date>
<date date-type="accepted">
<day>25</day>
<month>09</month>
<year>2023</year>
</date>
</history>
<permissions>
<copyright-statement>Copyright &#xa9; 2023 Condori Uribe, Salmeron, Patino, Montoya, Dyke, Silva, Maghareh, Najarian and Montoya.</copyright-statement>
<copyright-year>2023</copyright-year>
<copyright-holder>Condori Uribe, Salmeron, Patino, Montoya, Dyke, Silva, Maghareh, Najarian and Montoya</copyright-holder>
<license xlink:href="http://creativecommons.org/licenses/by/4.0/">
<p>This is an open-access article distributed under the terms of the Creative Commons Attribution License (CC BY). The use, distribution or reproduction in other forums is permitted, provided the original author(s) and the copyright owner(s) are credited and that the original publication in this journal is cited, in accordance with accepted academic practice. No use, distribution or reproduction is permitted which does not comply with these terms.</p>
</license>
</permissions>
<abstract>
<p>Advancing RTHS methods to readily handle multi-dimensional problems has great potential for enabling more advanced testing and synergistically using existing laboratory facilities that have the capacity for such experimentation. However, the high internal coupling between hydraulics actuators and the nonlinear kinematics escalates the complexity of actuator control and boundary condition tracking. To enable researchers in the RTHS community to develop and compare advanced control algorithms, this paper proposes a benchmark control problem for a multi-axial real-time hybrid simulation (maRTHS) and presents its definition and implementation on a steel frame excited by seismic loads at the base. The benchmark problem enables the development and validation of control techniques for tracking both translation and rotation degrees of freedom of a plant that consists of a steel frame, two hydraulic actuators, and a steel coupler with high stiffness that couples the axial displacements of the hydraulic actuators resulting in the required motion of the frame node. In this investigation, the different components of this benchmark were developed, tested, and a set of maRTHS were conducted to demonstrate its feasibility in order to provide a realistic virtual platform. To offer flexibility in the control design process, experimental data for identification purposes, finite element models for the reference structure, numerical, and physical substructure, and plant models with model uncertainties are provided. Also, a sample example of an RTHS design based on a linear quadratic Gaussian controller is included as part of a computational code package, which facilitates the exploration of the tradeoff between robustness and performance of tracking control designs. The goals of this benchmark are to: extend existing control or develop new control techniques; provide a computational tool for investigation of the challenging aspects of maRTHS; encourage a transition to multiple actuator RTHS scenarios; and make available a challenging problem for new researchers to investigate maRTHS approaches. We believe that this benchmark problem will encourage the advancing of the next-generation of controllers for more realistic RTHS methods.</p>
</abstract>
<kwd-group>
<kwd>RTHS</kwd>
<kwd>maRTHS</kwd>
<kwd>MIMO control</kwd>
<kwd>estimation</kwd>
<kwd>uncertainty</kwd>
<kwd>coupling</kwd>
<kwd>hydraulic actuator</kwd>
<kwd>transfer system</kwd>
</kwd-group>
<custom-meta-wrap>
<custom-meta>
<meta-name>section-at-acceptance</meta-name>
<meta-value>Computational Methods in Structural Engineering</meta-value>
</custom-meta>
</custom-meta-wrap>
</article-meta>
</front>
<body>
<sec id="s1">
<title>1 Introduction</title>
<p>The need to validate new technologies and increasingly study more complex structural engineering designs demands new experimental techniques for realistic large-scale structural experimentation. Real-time hybrid simulation (RTHS) is a disruptive technology that has evolved over the past 20&#xa0;years to enable the examination of dynamic systems, especially when traditional testing approaches cannot be employed. However, despite the fact that RTHS has matured considerably in recent years, there are still important gaps in knowledge that prevent its standardization and broad utilization in research and industry (<xref ref-type="bibr" rid="B62">Tian et al., 2020</xref>; <xref ref-type="bibr" rid="B52">Palacio-Betancur and Gutierrez Soto, 2022</xref>; <xref ref-type="bibr" rid="B23">Home, 2023</xref>; <xref ref-type="bibr" rid="B39">Najafi et al., 2023</xref>).</p>
<p>A research agenda for this class of techniques (<xref ref-type="bibr" rid="B24">Hybrid Si mulation for Multi-hazard Engineering A Research Agenda Year 1, 2018</xref>; <xref ref-type="bibr" rid="B25">Hybrid Simulation for Multi-hazard Engineering A Research Agenda Year 2, 2019</xref>) has been established to capture the challenges and priorities for the research community that are necessary to advance the theory and science in this field. Among these challenges, advancing RTHS methods to readily handle multi-dimensional problems have great potential for enabling more advanced testing and synergistically using existing laboratory facilities that have the capacity for such experimentation (<xref ref-type="bibr" rid="B15">Elnashai et al., 2006</xref>; <xref ref-type="bibr" rid="B2">Abbiati et al., 2017</xref>; <xref ref-type="bibr" rid="B9">Cao et al., 2020</xref>; <xref ref-type="bibr" rid="B33">MAST Laboratory, 2023</xref>). To develop multi-dimensional RTHS techniques, it is especially important to investigate new control methodologies, enforcement of complex boundary conditions, and real-time computational platforms capable of performing large amounts of computation as the problem escalates. Overcoming these challenges will facilitate a more realistic examination of the dynamic behavior of structural systems.</p>
<p>Multi-dimensional RTHS pursues the preservation of the multiple-degree-of-freedom (MDOF) response of the numerical and experimental substructures. This approach requires that more than one hydraulic actuator exerts the required motion to the experimental substructure demanding the implementation of multiple-input multiple-output (MIMO) control strategies. For instance, the use of multiple actuators in RTHS has enabled the experimental testing of multi-story building specimens where each actuator is connected directly at each story level (<xref ref-type="bibr" rid="B55">Phillips et al., 2013</xref>; <xref ref-type="bibr" rid="B18">Friedman et al., 2014</xref>; <xref ref-type="bibr" rid="B19">Gao et al., 2014</xref>). Considering the influence of the stiffness of the experimental substructure on the coupling of dynamics in the hydraulic actuators, the RTHS performance might be decreased leading to loss of accuracy and instabilities when this coupling is strong (<xref ref-type="bibr" rid="B64">Wallace et al., 2005</xref>; <xref ref-type="bibr" rid="B26">Jung et al., 2007</xref>; <xref ref-type="bibr" rid="B11">Chae et al., 2014</xref>). When the complexity of the problem demands to increase the number of degrees of freedom (DOF) to be enforced at a given interface boundary condition, it is necessary to include supplementary physical components or multi-axial loading systems such as high stiff links or couplers creating a challenging class of RTHS called multi-axial RTHS (maRTHS) (<xref ref-type="bibr" rid="B5">Blakeborough et al., 2001</xref>; <xref ref-type="bibr" rid="B12">Darby et al., 2002</xref>; <xref ref-type="bibr" rid="B6">Bonnet et al., 2007</xref>; <xref ref-type="bibr" rid="B55">Phillips et al., 2013</xref>; <xref ref-type="bibr" rid="B18">Friedman et al., 2014</xref>; <xref ref-type="bibr" rid="B19">Gao et al., 2014</xref>; <xref ref-type="bibr" rid="B42">Najafi and Spencer, 2021</xref>; <xref ref-type="bibr" rid="B7">Botelho and Christenson, 2015</xref>; <xref ref-type="bibr" rid="B13">Dong et al., 2015</xref>; <xref ref-type="bibr" rid="B35">Na et al., 2016</xref>; <xref ref-type="bibr" rid="B17">Fermandois and Spencer, 2017</xref>; <xref ref-type="bibr" rid="B40">Najafi et al., 2020</xref>; <xref ref-type="bibr" rid="B8">Botelho et al., 2022</xref>; <xref ref-type="bibr" rid="B29">Liqiao et al., 2022</xref>; <xref ref-type="bibr" rid="B53">Park et al., 2022</xref>). This type of multi-axial hydraulic actuator assemblages requires nonlinear coordinate transformations that adds additional complexity to nonlinearities, uncertainties, internal coupling, etc. (<xref ref-type="bibr" rid="B44">Nakata et al., 2007</xref>; <xref ref-type="bibr" rid="B45">Nakata et al., 2010</xref>), which need further investigation. Therefore, there is a clear need to study the complex aspects of maRTHS and, equally important, to disseminate this knowledge and engage the RTHS community by creating opportunities to contribute to understanding the different characteristics of maRTHS.</p>
<p>Benchmark problems have been an effective instrument over the past 30&#xa0;years to explore how to address specific technical challenges such as structural control and structural health monitoring methods, while also advancing understanding and promoting capacity building (<xref ref-type="bibr" rid="B57">Spencer et al., 1998a</xref>; <xref ref-type="bibr" rid="B58">Spencer et al., 1998b</xref>; <xref ref-type="bibr" rid="B49">Ohtori et al., 2004</xref>; <xref ref-type="bibr" rid="B68">Yang et al., 2004</xref>; <xref ref-type="bibr" rid="B38">Nagarajaiah and Narasimhan, 2006</xref>; <xref ref-type="bibr" rid="B46">Narasimhan et al., 2006</xref>; <xref ref-type="bibr" rid="B37">Nagarajaiah et al., 2008</xref>; <xref ref-type="bibr" rid="B47">Narasimhan et al., 2008</xref>; <xref ref-type="bibr" rid="B3">Agrawal et al., 2009</xref>; <xref ref-type="bibr" rid="B36">Nagarajaiah et al., 2009</xref>; <xref ref-type="bibr" rid="B60">Tan et al., 2009</xref>; <xref ref-type="bibr" rid="B59">Sun et al., 2016</xref>).</p>
<p>In the RTHS community much of the past work has focused on one-dimensional motion using a single hydraulic actuator. A benchmark problem that was developed for the RTHS community has been useful to systematically identify the limitations and capabilities of methodologies and procedures involved in conducting RTHS. A benchmark problem should include: representative models of the components involved, realistic constraints on the hardware and software employed, and meaningful and objective metrics for assessing the success of a particular design strategy. Generally, this is coupled with a code package that provides the participant with a framework for testing out proposed approaches through virtual RTHS (vRTHS). Overall, the impact of these efforts indicates that these benchmark problems have helped to develop and validate different single-input single-output (SISO) control and to define the scientific and technical needs for developing the next-generation of RTHS methods (<xref ref-type="bibr" rid="B39">Najafi et al., 2023</xref>).</p>
<p>The earlier RTHS benchmark control problem based on a single actuator and interface point is described in (<xref ref-type="bibr" rid="B56">Silva et al., 2020</xref>). The problem statement is focused on developing tracking controllers where the axial displacement of the hydraulic actuator coincides with the lateral displacement of a steel frame specimen. Several partitioning configurations and plant uncertainties are considered to encourage participants to establish robust control designs while also advancing the understanding of the relationship between controller performance and test objectives (<xref ref-type="bibr" rid="B30">Maghareh et al., 2014</xref>; <xref ref-type="bibr" rid="B31">Maghareh et al., 2017</xref>). To date, at least fifteen participants have taken part in addressing that benchmark problem, and many lessons were extracted. For instance, it has been demonstrated that robust methodologies based on linear-quadratic-gaussian controllers and model-based compensation techniques handle uncertainties effectively while maintaining low (&#x223c;3%) tracking errors (<xref ref-type="bibr" rid="B16">Fermandois, 2019</xref>; <xref ref-type="bibr" rid="B69">Zhou et al., 2019</xref>). Participants have also implemented and assessed adaptive control techniques and state estimators to enhance the tracking control performance reducing errors due to modeling uncertainties, time delays, and time lags (<xref ref-type="bibr" rid="B66">Xu et al., 2019</xref>; <xref ref-type="bibr" rid="B67">Xu et al., 2019</xref>; <xref ref-type="bibr" rid="B41">Najafi and Spencer, 2019</xref>; <xref ref-type="bibr" rid="B48">Ning et al., 2019</xref>; <xref ref-type="bibr" rid="B50">Ouyang et al., 2019</xref>; <xref ref-type="bibr" rid="B51">Palacio-Betancur and Gutierrez Soto, 2019</xref>; <xref ref-type="bibr" rid="B61">Tao and Mercan, 2019</xref>; <xref ref-type="bibr" rid="B65">Wang et al., 2019</xref>) to &#x223c;1%&#x2013;6%. Explicit nonlinear approaches such as sliding mode control have also been applied to manage the uncertainties successfully resulting in tracking errors of &#x223c;0.6%&#x2013;2% (<xref ref-type="bibr" rid="B66">Xu et al., 2019</xref>; <xref ref-type="bibr" rid="B27">Li et al., 2021</xref>). Other approaches have been proposed such as impedance matching (<xref ref-type="bibr" rid="B63">Verma and Sivaselvan, 2019</xref>) and reinforcement learning (<xref ref-type="bibr" rid="B28">Li et al., 2022</xref>), which exhibit promising results for increasing RTHS performance. Furthermore, innovative methodologies for conducting RTHS have also been reported. (<xref ref-type="bibr" rid="B22">Gao and You, 2019</xref>). developed a methodology for quantifying predictive measures to analyze the stability limits of an RTHS partition at the early stage of its implementation, which is useful to assess the feasibility of such implementation. The broad engagement in this benchmark problem reveals the importance of having a ready-to-use and standardized virtual RTHS environment. Participants can concentrate their efforts on developing controller methodologies, examining performance, and comparing tracking and RTHS performance. As a result, it accelerates the evolution of the next-generation of controllers for RTHS and confronts specific challenges to overcome such as nonlinear and multidimensional RTHS.</p>
<p>Now, for the same relatively stiff steel frame specimen, a new maRTHS benchmark problem focused on a frame subjected to seismic loading at the base is proposed. This problem aims to elevate the discussion by considering both translation and rotation for tracking control. This seemingly simple, yet fundamental change in the control objectives, considerably transforms the problem and escalates its complexity. This more challenging maRTHS benchmark problem statement presents the experimental setup, problem objectives, evaluation metrics, and realistic control constraints. Experimental data is provided that can be used for system identification, finite element models, and identified state-space models. A code package is provided that can be used to virtually explore the control of a maRTHS experiment conducted in the Intelligent Infrastructure Systems Laboratory (IISL) at Purdue University. To demonstrate the use of this suite of resources, an integral example of a maRTHS design based on a linear quadratic Gaussian (LQG) controller is included as part of the computational code package. The goals of developing this benchmark problem are to: 1) develop, extend, assess, and validate existing control or new MIMO control strategies; 2) provide a computational tool for comparing and contrasting methods for conducting maRTHS; 3) encourage a transition from typical single-actuator RTHS scenarios to maRTHS experiments; and 4) provide a challenging problem for new researchers to gain experience with maRTHS.</p>
<p>Participants are invited to design realizable MIMO controllers using the framework supplied in the code package and described in this paper. Participants are encouraged to address a variety of aspects of maRTHS, including, but not limited to, the effectiveness and influence of limited enforcement of boundary conditions, internal coupling in the plant, tradeoffs between performance and robustness, and scalability of proposed techniques. We anticipate that the availability of this benchmark problem will encourage and inspire a new generation of RTHS techniques and tests in the future.</p>
</sec>
<sec id="s2">
<title>2 Reference model</title>
<p>This section presents the structural system and its mathematical description denoted as the reference model for evaluating the performance of this RTHS control problem.</p>
<sec id="s2-1">
<title>2.1 Reference structure description</title>
<p>The reference structure used in this study is shown in <xref ref-type="fig" rid="F1">Figure 1</xref>. It consists of a steel moment-resisting frame with 3 bays and 3 stories. The beams and columns are made from A36 and A992Fy50 steel, respectively. The beams are built-up sections while the columns are hot-rolled commercially available sections. A scaled El Centro historic record is used as the input ground motion to the system to generate the different responses. A scaling factor of 0.40 is selected to ensure that the lateral displacement of the frame is limited to maintain linear elastic behavior of all structural components.</p>
<fig id="F1" position="float">
<label>FIGURE 1</label>
<caption>
<p>Reference structure.</p>
</caption>
<graphic xlink:href="fbuil-09-1270996-g001.tif"/>
</fig>
</sec>
<sec id="s2-2">
<title>2.2 Description of the finite element model</title>
<p>To evaluate the performance of the RTHS algorithms, this benchmark uses a finite element (FE) model to capture the behavior and response of the reference structure. <xref ref-type="fig" rid="F2">Figure 2</xref> presents the schematic definition of the geometry and connectivity of the reference system. Each node has three DOFs: two translational DOF along the global <italic>x</italic> and <italic>y</italic>-axes; and one rotational DOF, <italic>&#x3b8;</italic> around the <italic>z</italic>-axis, perpendicular to the <italic>xy</italic>-plane. The numbers in circles near the joints represent the node numeration and the numbers in rectangles close to the middle of beams and columns denote the element numeration. In <xref ref-type="fig" rid="F2">Figure 2</xref>, each set of DOFs for any <italic>i</italic>-th node is represented by the triplet <inline-formula id="inf1">
<mml:math id="m1">
<mml:mrow>
<mml:mfenced open="[" close="]" separators="|">
<mml:mrow>
<mml:msub>
<mml:mi>x</mml:mi>
<mml:mi>i</mml:mi>
</mml:msub>
<mml:mtext>&#x2009;</mml:mtext>
<mml:msub>
<mml:mi>y</mml:mi>
<mml:mi>i</mml:mi>
</mml:msub>
<mml:mtext>&#x2009;</mml:mtext>
<mml:msub>
<mml:mi>&#x3b8;</mml:mi>
<mml:mi>i</mml:mi>
</mml:msub>
</mml:mrow>
</mml:mfenced>
</mml:mrow>
</mml:math>
</inline-formula>.</p>
<fig id="F2" position="float">
<label>FIGURE 2</label>
<caption>
<p>FE model description.</p>
</caption>
<graphic xlink:href="fbuil-09-1270996-g002.tif"/>
</fig>
<p>The equation of motion for this reference system is given by:<disp-formula id="e1">
<mml:math id="m2">
<mml:mrow>
<mml:mi mathvariant="bold">M</mml:mi>
<mml:mover accent="true">
<mml:mi mathvariant="bold">&#x3c8;</mml:mi>
<mml:mo>&#xa8;</mml:mo>
</mml:mover>
<mml:mo>&#x2b;</mml:mo>
<mml:mi mathvariant="bold">C</mml:mi>
<mml:mover accent="true">
<mml:mi mathvariant="bold">&#x3c8;</mml:mi>
<mml:mo>&#x2d9;</mml:mo>
</mml:mover>
<mml:mo>&#x2b;</mml:mo>
<mml:mi mathvariant="bold">K</mml:mi>
<mml:mi mathvariant="bold">&#x3c8;</mml:mi>
<mml:mo>&#x3d;</mml:mo>
<mml:mo>&#x2212;</mml:mo>
<mml:mi mathvariant="bold">M</mml:mi>
<mml:mi mathvariant="bold">&#x393;</mml:mi>
<mml:mo>&#x22c5;</mml:mo>
<mml:msub>
<mml:mover accent="true">
<mml:mi>x</mml:mi>
<mml:mo>&#xa8;</mml:mo>
</mml:mover>
<mml:mrow>
<mml:mi>g</mml:mi>
<mml:mo>,</mml:mo>
</mml:mrow>
</mml:msub>
</mml:mrow>
</mml:math>
<label>(1)</label>
</disp-formula>where <bold>M</bold>, <bold>C</bold>, and <bold>K</bold> are the mass, damping and stiffness matrices of the reference structure. <inline-formula id="inf2">
<mml:math id="m3">
<mml:mrow>
<mml:mi mathvariant="bold">&#x393;</mml:mi>
</mml:mrow>
</mml:math>
</inline-formula> is an influence vector that describes the inertial effects of the excitation on the masses on the system. In our case this is a column vector that contains a value of one for each mass that develops an inertial effect due to ground acceleration. The one-dimensional variable <inline-formula id="inf3">
<mml:math id="m4">
<mml:mrow>
<mml:msub>
<mml:mover accent="true">
<mml:mi>x</mml:mi>
<mml:mo>&#xa8;</mml:mo>
</mml:mover>
<mml:mi>g</mml:mi>
</mml:msub>
</mml:mrow>
</mml:math>
</inline-formula> is the ground absolute acceleration and the vectors <inline-formula id="inf4">
<mml:math id="m5">
<mml:mrow>
<mml:mover accent="true">
<mml:mi mathvariant="bold">&#x3c8;</mml:mi>
<mml:mo>&#xa8;</mml:mo>
</mml:mover>
</mml:mrow>
</mml:math>
</inline-formula>, <inline-formula id="inf5">
<mml:math id="m6">
<mml:mrow>
<mml:mover accent="true">
<mml:mi mathvariant="bold">&#x3c8;</mml:mi>
<mml:mo>&#x2d9;</mml:mo>
</mml:mover>
</mml:mrow>
</mml:math>
</inline-formula>, and <inline-formula id="inf6">
<mml:math id="m7">
<mml:mrow>
<mml:mi mathvariant="bold">&#x3c8;</mml:mi>
</mml:mrow>
</mml:math>
</inline-formula> represent the absolute acceleration, relative velocity and relative displacement with respect to the ground for each degree of freedom considered in our analysis, respectively. Therefore, the number of DOFs in this FE model is 38 and they will be arranged in the displacement vector <inline-formula id="inf7">
<mml:math id="m8">
<mml:mrow>
<mml:mi mathvariant="bold">&#x3c8;</mml:mi>
</mml:mrow>
</mml:math>
</inline-formula> according to Eq. <xref ref-type="disp-formula" rid="e2">(2)</xref>. Any <italic>i</italic>-th element of the vector <inline-formula id="inf8">
<mml:math id="m9">
<mml:mrow>
<mml:mi mathvariant="bold">&#x3c8;</mml:mi>
</mml:mrow>
</mml:math>
</inline-formula> will be represented by <inline-formula id="inf9">
<mml:math id="m10">
<mml:mrow>
<mml:msub>
<mml:mi mathvariant="bold-italic">&#x3c8;</mml:mi>
<mml:mi>i</mml:mi>
</mml:msub>
</mml:mrow>
</mml:math>
</inline-formula>, where <inline-formula id="inf10">
<mml:math id="m11">
<mml:mrow>
<mml:mi>i</mml:mi>
<mml:mo>&#x3d;</mml:mo>
<mml:mn>1</mml:mn>
<mml:mo>.</mml:mo>
<mml:mo>.</mml:mo>
<mml:mo>.</mml:mo>
<mml:mn>38</mml:mn>
</mml:mrow>
</mml:math>
</inline-formula>, see <xref ref-type="fig" rid="F3">Figure 3</xref>.<disp-formula id="e2">
<mml:math id="m12">
<mml:mrow>
<mml:mi mathvariant="bold">&#x3c8;</mml:mi>
<mml:mo>&#x3d;</mml:mo>
<mml:msup>
<mml:mrow>
<mml:mfenced open="[" close="]" separators="|">
<mml:mrow>
<mml:mtable columnalign="center">
<mml:mtr>
<mml:mtd>
<mml:mrow>
<mml:msub>
<mml:mi>x</mml:mi>
<mml:mn>1</mml:mn>
</mml:msub>
<mml:mo>&#x2026;</mml:mo>
<mml:msub>
<mml:mi>x</mml:mi>
<mml:mn>12</mml:mn>
</mml:msub>
</mml:mrow>
</mml:mtd>
<mml:mtd>
<mml:mrow>
<mml:msub>
<mml:mi>y</mml:mi>
<mml:mn>1</mml:mn>
</mml:msub>
<mml:mo>&#x2026;</mml:mo>
<mml:msub>
<mml:mi>y</mml:mi>
<mml:mn>12</mml:mn>
</mml:msub>
</mml:mrow>
</mml:mtd>
<mml:mtd>
<mml:mtable columnalign="center">
<mml:mtr>
<mml:mtd>
<mml:mtable columnalign="center">
<mml:mtr>
<mml:mtd>
<mml:mrow>
<mml:msub>
<mml:mi>&#x3b8;</mml:mi>
<mml:mn>1</mml:mn>
</mml:msub>
<mml:mo>&#x2026;</mml:mo>
<mml:msub>
<mml:mi>&#x3b8;</mml:mi>
<mml:mn>12</mml:mn>
</mml:msub>
</mml:mrow>
</mml:mtd>
<mml:mtd>
<mml:msub>
<mml:mi>&#x3b8;</mml:mi>
<mml:mn>14</mml:mn>
</mml:msub>
</mml:mtd>
</mml:mtr>
</mml:mtable>
</mml:mtd>
<mml:mtd>
<mml:msub>
<mml:mi>&#x3b8;</mml:mi>
<mml:mn>15</mml:mn>
</mml:msub>
</mml:mtd>
</mml:mtr>
</mml:mtable>
</mml:mtd>
</mml:mtr>
</mml:mtable>
</mml:mrow>
</mml:mfenced>
</mml:mrow>
<mml:mi>T</mml:mi>
</mml:msup>
<mml:mo>.</mml:mo>
</mml:mrow>
</mml:math>
<label>(2)</label>
</disp-formula>
</p>
<fig id="F3" position="float">
<label>FIGURE 3</label>
<caption>
<p>Definition of the DOF vector in Eq. <xref ref-type="disp-formula" rid="e2">2</xref>.</p>
</caption>
<graphic xlink:href="fbuil-09-1270996-g003.tif"/>
</fig>
<p>For instance, the DOFs of nodes 4 and 7 are represented by the vectors <inline-formula id="inf11">
<mml:math id="m13">
<mml:mrow>
<mml:msub>
<mml:mi mathvariant="bold">&#x3c8;</mml:mi>
<mml:mn>4</mml:mn>
</mml:msub>
<mml:mrow>
<mml:mfenced open="[" close="]" separators="|">
<mml:mrow>
<mml:mn>4,16,28</mml:mn>
</mml:mrow>
</mml:mfenced>
</mml:mrow>
<mml:mo>&#x3d;</mml:mo>
<mml:msup>
<mml:mrow>
<mml:mfenced open="[" close="]" separators="|">
<mml:mrow>
<mml:msub>
<mml:mi>x</mml:mi>
<mml:mn>4</mml:mn>
</mml:msub>
<mml:mtext>&#x2009;</mml:mtext>
<mml:msub>
<mml:mi>y</mml:mi>
<mml:mn>4</mml:mn>
</mml:msub>
<mml:mtext>&#x2009;</mml:mtext>
<mml:msub>
<mml:mi>&#x3b8;</mml:mi>
<mml:mn>4</mml:mn>
</mml:msub>
</mml:mrow>
</mml:mfenced>
</mml:mrow>
<mml:mi>T</mml:mi>
</mml:msup>
</mml:mrow>
</mml:math>
</inline-formula> and <inline-formula id="inf12">
<mml:math id="m14">
<mml:mrow>
<mml:msub>
<mml:mi mathvariant="bold">&#x3c8;</mml:mi>
<mml:mn>7</mml:mn>
</mml:msub>
<mml:mrow>
<mml:mfenced open="[" close="]" separators="|">
<mml:mrow>
<mml:mn>7,19,31</mml:mn>
</mml:mrow>
</mml:mfenced>
</mml:mrow>
<mml:mo>&#x3d;</mml:mo>
<mml:msup>
<mml:mrow>
<mml:mfenced open="[" close="]" separators="|">
<mml:mrow>
<mml:msub>
<mml:mi>x</mml:mi>
<mml:mn>7</mml:mn>
</mml:msub>
<mml:mtext>&#x2009;</mml:mtext>
<mml:msub>
<mml:mi>y</mml:mi>
<mml:mn>7</mml:mn>
</mml:msub>
<mml:mtext>&#x2009;</mml:mtext>
<mml:msub>
<mml:mi>&#x3b8;</mml:mi>
<mml:mn>7</mml:mn>
</mml:msub>
</mml:mrow>
</mml:mfenced>
</mml:mrow>
<mml:mi>T</mml:mi>
</mml:msup>
</mml:mrow>
</mml:math>
</inline-formula>, where the elements in brackets specify particular elements in an array and the subscript designates specific attributes of the array. In these examples, they refer to specific DOFs (element in brackets) of the vector <inline-formula id="inf13">
<mml:math id="m15">
<mml:mrow>
<mml:mi mathvariant="bold">&#x3c8;</mml:mi>
</mml:mrow>
</mml:math>
</inline-formula> and their corresponding nodes (subscripts). The first 5 natural frequencies are 2.29&#xa0;Hz, 12.74&#xa0;Hz, 26.28&#xa0;Hz, 26.53&#xa0;Hz, and 29.91&#xa0;Hz, with mass participation factors of up to 95%. The damping matrix is calculated here using the Rayleigh damping method with a damping ratio of 5% anchored to first and third modes. The damping matrix is assumed to be proportional to the sum of the mass and stiffness matrices of the reference system:<disp-formula id="e3">
<mml:math id="m16">
<mml:mrow>
<mml:mi mathvariant="bold">C</mml:mi>
<mml:mo>&#x3d;</mml:mo>
<mml:msub>
<mml:mi>&#x3b1;</mml:mi>
<mml:mn>1</mml:mn>
</mml:msub>
<mml:mi mathvariant="bold">M</mml:mi>
<mml:mo>&#x2b;</mml:mo>
<mml:msub>
<mml:mi>&#x3b1;</mml:mi>
<mml:mn>2</mml:mn>
</mml:msub>
<mml:mi mathvariant="bold">K</mml:mi>
<mml:mo>,</mml:mo>
</mml:mrow>
</mml:math>
<label>(3)</label>
</disp-formula>where <inline-formula id="inf14">
<mml:math id="m17">
<mml:mrow>
<mml:msub>
<mml:mi>&#x3b1;</mml:mi>
<mml:mn>1</mml:mn>
</mml:msub>
</mml:mrow>
</mml:math>
</inline-formula> and <inline-formula id="inf15">
<mml:math id="m18">
<mml:mrow>
<mml:msub>
<mml:mi>&#x3b1;</mml:mi>
<mml:mn>2</mml:mn>
</mml:msub>
</mml:mrow>
</mml:math>
</inline-formula> are constants used to generate the desired modal damping ratios for two chosen modes.</p>
</sec>
</sec>
<sec id="s3">
<title>3 Benchmark problem definition</title>
<p>This section establishes the structure of the benchmark problem, defines its components, and provides insight to understand the objectives of this MIMO control benchmark problem for maRTHS.</p>
<sec id="s3-1">
<title>3.1 Reference structure partitioning</title>
<p>To conduct the RTHS, the reference model described in <xref ref-type="sec" rid="s2">Section 2</xref> must be partitioned into two subdomains: numerical and experimental. The partition chosen is shown in <xref ref-type="fig" rid="F4">Figure 4</xref>. The portion in black (outermost structural elements) represents the numerical substructure, and the portion in red (central frame, simply supported) indicates the physical substructure, which is a steel moment resisting frame available in the IISL and it is assumed to be the less understood part of the entire structure.</p>
<fig id="F4" position="float">
<label>FIGURE 4</label>
<caption>
<p>Partitioning: Numerical substructure (black), Experimental substructure (red).</p>
</caption>
<graphic xlink:href="fbuil-09-1270996-g004.tif"/>
</fig>
<p>In a partitioned system, these two substructures are separate, but connected to each other and synchronized through a feedback loop so that they share information at common interface nodes at every time step during execution. <xref ref-type="fig" rid="F5">Figure 5</xref> illustrates the main degrees of freedom of the interface nodes and the signals that transfer information between the numerical and physical substructures. Ideally, during every time interval, the numerical substructure is excited first, then the response of the interface nodes <inline-formula id="inf16">
<mml:math id="m19">
<mml:mrow>
<mml:msub>
<mml:mi mathvariant="bold">&#x3c8;</mml:mi>
<mml:mrow>
<mml:mtext>ns</mml:mtext>
<mml:mn>4</mml:mn>
</mml:mrow>
</mml:msub>
<mml:mrow>
<mml:mfenced open="[" close="]" separators="|">
<mml:mrow>
<mml:mn>4,16,28</mml:mn>
</mml:mrow>
</mml:mfenced>
</mml:mrow>
<mml:mo>&#x3d;</mml:mo>
<mml:msup>
<mml:mrow>
<mml:mfenced open="[" close="]" separators="|">
<mml:mrow>
<mml:msub>
<mml:mi>x</mml:mi>
<mml:mrow>
<mml:mtext>ns</mml:mtext>
<mml:mn>4</mml:mn>
</mml:mrow>
</mml:msub>
<mml:mtext>&#x2009;</mml:mtext>
<mml:msub>
<mml:mi>y</mml:mi>
<mml:mrow>
<mml:mtext>ns</mml:mtext>
<mml:mn>4</mml:mn>
</mml:mrow>
</mml:msub>
<mml:mtext>&#x2009;</mml:mtext>
<mml:msub>
<mml:mi>&#x3b8;</mml:mi>
<mml:mrow>
<mml:mtext>ns</mml:mtext>
<mml:mn>4</mml:mn>
</mml:mrow>
</mml:msub>
</mml:mrow>
</mml:mfenced>
</mml:mrow>
<mml:mi>T</mml:mi>
</mml:msup>
</mml:mrow>
</mml:math>
</inline-formula> and <inline-formula id="inf17">
<mml:math id="m20">
<mml:mrow>
<mml:msub>
<mml:mi mathvariant="bold">&#x3c8;</mml:mi>
<mml:mrow>
<mml:mtext>ns</mml:mtext>
<mml:mn>7</mml:mn>
</mml:mrow>
</mml:msub>
<mml:mrow>
<mml:mfenced open="[" close="]" separators="|">
<mml:mrow>
<mml:mn>7,19,31</mml:mn>
</mml:mrow>
</mml:mfenced>
</mml:mrow>
<mml:mo>&#x3d;</mml:mo>
<mml:msup>
<mml:mrow>
<mml:mfenced open="[" close="]" separators="|">
<mml:mrow>
<mml:msub>
<mml:mi>x</mml:mi>
<mml:mrow>
<mml:mtext>ns</mml:mtext>
<mml:mn>7</mml:mn>
</mml:mrow>
</mml:msub>
<mml:mtext>&#x2009;</mml:mtext>
<mml:msub>
<mml:mi>y</mml:mi>
<mml:mrow>
<mml:mtext>ns</mml:mtext>
<mml:mn>7</mml:mn>
</mml:mrow>
</mml:msub>
<mml:mtext>&#x2009;</mml:mtext>
<mml:msub>
<mml:mi>&#x3b8;</mml:mi>
<mml:mrow>
<mml:mtext>ns</mml:mtext>
<mml:mn>7</mml:mn>
</mml:mrow>
</mml:msub>
</mml:mrow>
</mml:mfenced>
</mml:mrow>
<mml:mi>T</mml:mi>
</mml:msup>
</mml:mrow>
</mml:math>
</inline-formula>, and their derivatives (velocity and acceleration) are imposed to the experimental substructure. Afterwards, the generated physical restoring forces, <inline-formula id="inf18">
<mml:math id="m21">
<mml:mrow>
<mml:msub>
<mml:mi mathvariant="bold">f</mml:mi>
<mml:mrow>
<mml:mtext>es</mml:mtext>
<mml:mn>4</mml:mn>
</mml:mrow>
</mml:msub>
<mml:mo>&#x3d;</mml:mo>
<mml:msup>
<mml:mrow>
<mml:mfenced open="[" close="]" separators="|">
<mml:mrow>
<mml:msub>
<mml:mi>F</mml:mi>
<mml:mrow>
<mml:mtext>es</mml:mtext>
<mml:mn>4</mml:mn>
<mml:mi>x</mml:mi>
</mml:mrow>
</mml:msub>
<mml:mtext>&#x2009;</mml:mtext>
<mml:msub>
<mml:mi>F</mml:mi>
<mml:mrow>
<mml:mtext>es</mml:mtext>
<mml:mn>4</mml:mn>
<mml:mi>y</mml:mi>
</mml:mrow>
</mml:msub>
<mml:mtext>&#x2009;</mml:mtext>
<mml:msub>
<mml:mi>M</mml:mi>
<mml:mrow>
<mml:mtext>es</mml:mtext>
<mml:mn>4</mml:mn>
</mml:mrow>
</mml:msub>
</mml:mrow>
</mml:mfenced>
</mml:mrow>
<mml:mi>T</mml:mi>
</mml:msup>
</mml:mrow>
</mml:math>
</inline-formula> and <inline-formula id="inf19">
<mml:math id="m22">
<mml:mrow>
<mml:msub>
<mml:mi mathvariant="bold">f</mml:mi>
<mml:mrow>
<mml:mtext>es</mml:mtext>
<mml:mn>7</mml:mn>
</mml:mrow>
</mml:msub>
<mml:mo>&#x3d;</mml:mo>
<mml:msup>
<mml:mrow>
<mml:mfenced open="[" close="]" separators="|">
<mml:mrow>
<mml:msub>
<mml:mi>F</mml:mi>
<mml:mrow>
<mml:mtext>es</mml:mtext>
<mml:mn>7</mml:mn>
<mml:mi>x</mml:mi>
</mml:mrow>
</mml:msub>
<mml:mtext>&#x2009;</mml:mtext>
<mml:msub>
<mml:mi>F</mml:mi>
<mml:mrow>
<mml:mtext>es</mml:mtext>
<mml:mn>7</mml:mn>
<mml:mi>y</mml:mi>
</mml:mrow>
</mml:msub>
<mml:mtext>&#x2009;</mml:mtext>
<mml:msub>
<mml:mi>M</mml:mi>
<mml:mrow>
<mml:mtext>es</mml:mtext>
<mml:mn>7</mml:mn>
</mml:mrow>
</mml:msub>
</mml:mrow>
</mml:mfenced>
</mml:mrow>
<mml:mi>T</mml:mi>
</mml:msup>
</mml:mrow>
</mml:math>
</inline-formula>, are measured and fed back to the numerical substructure. This configuration is usually denoted as <italic>ideal RTHS</italic> since no additional components such as hydraulic actuators or measured signals contaminated with high frequency noise are considered. Therefore, pure numerical models for the numerical and experimental substructures are used. Herein, the subscript <italic>&#x2018;</italic>ns<italic>&#x2019;</italic> will be used for variables associated with the numerical substructure, and &#x2018;es<italic>&#x2019;</italic> will be reserved for the experimental substructure variables. This partitioned analysis provides the realization of the most basic hybrid simulation which is helpful when designing and RTHS experiment. It allows one to study the stability of the partitioning chosen, assess the required forces to enforce the boundary conditions in the physical substructure (hence, to evaluate the actuator capacity to be used), define the signals from the physical domain and their structure necessary to close the loop with the specific type of numerical model, etc. For instance, this analysis facilitates the identification of the interface conditions to be enforced in both substructures regardless of whether an ideal RTHS is being executed or a physically actuated RTHS is being conducted. In this benchmark, these key interface conditions are represented by the vectors <inline-formula id="inf20">
<mml:math id="m23">
<mml:mrow>
<mml:msub>
<mml:mi mathvariant="bold">&#x3c8;</mml:mi>
<mml:mrow>
<mml:mtext>ns</mml:mtext>
<mml:mn>4</mml:mn>
</mml:mrow>
</mml:msub>
<mml:mo>&#x3d;</mml:mo>
<mml:msup>
<mml:mrow>
<mml:mfenced open="[" close="]" separators="|">
<mml:mrow>
<mml:msub>
<mml:mi>x</mml:mi>
<mml:mrow>
<mml:mtext>ns</mml:mtext>
<mml:mn>4</mml:mn>
</mml:mrow>
</mml:msub>
<mml:mtext>&#x2009;</mml:mtext>
<mml:msub>
<mml:mi>y</mml:mi>
<mml:mrow>
<mml:mtext>ns</mml:mtext>
<mml:mn>4</mml:mn>
</mml:mrow>
</mml:msub>
<mml:mtext>&#x2009;</mml:mtext>
<mml:msub>
<mml:mi>&#x3b8;</mml:mi>
<mml:mrow>
<mml:mtext>ns</mml:mtext>
<mml:mn>4</mml:mn>
</mml:mrow>
</mml:msub>
</mml:mrow>
</mml:mfenced>
</mml:mrow>
<mml:mi>T</mml:mi>
</mml:msup>
</mml:mrow>
</mml:math>
</inline-formula>, <inline-formula id="inf21">
<mml:math id="m24">
<mml:mrow>
<mml:msub>
<mml:mi mathvariant="bold">&#x3c8;</mml:mi>
<mml:mrow>
<mml:mtext>ns</mml:mtext>
<mml:mn>7</mml:mn>
</mml:mrow>
</mml:msub>
<mml:mo>&#x3d;</mml:mo>
<mml:msup>
<mml:mrow>
<mml:mfenced open="[" close="]" separators="|">
<mml:mrow>
<mml:msub>
<mml:mi>x</mml:mi>
<mml:mrow>
<mml:mtext>ns</mml:mtext>
<mml:mn>7</mml:mn>
</mml:mrow>
</mml:msub>
<mml:mtext>&#x2009;</mml:mtext>
<mml:msub>
<mml:mi>y</mml:mi>
<mml:mrow>
<mml:mtext>ns</mml:mtext>
<mml:mn>7</mml:mn>
</mml:mrow>
</mml:msub>
<mml:mtext>&#x2009;</mml:mtext>
<mml:msub>
<mml:mi>&#x3b8;</mml:mi>
<mml:mrow>
<mml:mtext>ns</mml:mtext>
<mml:mn>7</mml:mn>
</mml:mrow>
</mml:msub>
</mml:mrow>
</mml:mfenced>
</mml:mrow>
<mml:mi>T</mml:mi>
</mml:msup>
</mml:mrow>
</mml:math>
</inline-formula>, <inline-formula id="inf22">
<mml:math id="m25">
<mml:mrow>
<mml:msub>
<mml:mi mathvariant="bold">&#x3c8;</mml:mi>
<mml:mrow>
<mml:mtext>es</mml:mtext>
<mml:mn>4</mml:mn>
</mml:mrow>
</mml:msub>
<mml:mo>&#x3d;</mml:mo>
<mml:msup>
<mml:mrow>
<mml:mfenced open="[" close="]" separators="|">
<mml:mrow>
<mml:msub>
<mml:mi>x</mml:mi>
<mml:mrow>
<mml:mtext>es</mml:mtext>
<mml:mn>4</mml:mn>
</mml:mrow>
</mml:msub>
<mml:mtext>&#x2009;</mml:mtext>
<mml:msub>
<mml:mi>y</mml:mi>
<mml:mrow>
<mml:mtext>es</mml:mtext>
<mml:mn>4</mml:mn>
</mml:mrow>
</mml:msub>
<mml:mtext>&#x2009;</mml:mtext>
<mml:msub>
<mml:mi>&#x3b8;</mml:mi>
<mml:mrow>
<mml:mtext>es</mml:mtext>
<mml:mn>4</mml:mn>
</mml:mrow>
</mml:msub>
</mml:mrow>
</mml:mfenced>
</mml:mrow>
<mml:mi>T</mml:mi>
</mml:msup>
</mml:mrow>
</mml:math>
</inline-formula>, and <inline-formula id="inf23">
<mml:math id="m26">
<mml:mrow>
<mml:msub>
<mml:mi mathvariant="bold">&#x3c8;</mml:mi>
<mml:mrow>
<mml:mtext>es</mml:mtext>
<mml:mn>7</mml:mn>
</mml:mrow>
</mml:msub>
<mml:mo>&#x3d;</mml:mo>
<mml:msup>
<mml:mrow>
<mml:mfenced open="[" close="]" separators="|">
<mml:mrow>
<mml:msub>
<mml:mi>x</mml:mi>
<mml:mrow>
<mml:mtext>es</mml:mtext>
<mml:mn>7</mml:mn>
</mml:mrow>
</mml:msub>
<mml:mtext>&#x2009;</mml:mtext>
<mml:msub>
<mml:mi>y</mml:mi>
<mml:mrow>
<mml:mtext>es</mml:mtext>
<mml:mn>7</mml:mn>
</mml:mrow>
</mml:msub>
<mml:mtext>&#x2009;</mml:mtext>
<mml:msub>
<mml:mi>&#x3b8;</mml:mi>
<mml:mrow>
<mml:mtext>es</mml:mtext>
<mml:mn>7</mml:mn>
</mml:mrow>
</mml:msub>
</mml:mrow>
</mml:mfenced>
</mml:mrow>
<mml:mi>T</mml:mi>
</mml:msup>
</mml:mrow>
</mml:math>
</inline-formula> in <xref ref-type="fig" rid="F5">Figure 5</xref>.</p>
<fig id="F5" position="float">
<label>FIGURE 5</label>
<caption>
<p>Partitioned system in closed loop.</p>
</caption>
<graphic xlink:href="fbuil-09-1270996-g005.tif"/>
</fig>
<p>In an actual RTHS implementation, the experimental substructure is physically built and connected to the numerical substructure through a <italic>transfer system</italic> to ensure dynamic continuity and synchronized motion at common interface nodes during the experiment execution in real time. The inclusion of the transfer system in the experimental domain changes the dynamics of the experimental substructure, and a control approach must be included to compensate for these added dynamics and other effects. This benchmark includes and simulates these components and other relevant effects with identified models based on experimental data. This realistic computational implementation or virtual simulation is called vRTHS, which is the closest realization of an actual RTHS.</p>
</sec>
<sec id="s3-2">
<title>3.2 Substructured equation of motion</title>
<p>For RTHS execution, the reference model described in <xref ref-type="sec" rid="s2-1">Section 2.1</xref> must be partitioned into numerical and experimental substructures as described in <xref ref-type="sec" rid="s3-1">Section 3.1</xref>. Assuming linear elastic behavior of the frame, the partitioned mass, damping and stiffness matrices can be written as the sum of numerical and experimental components:<disp-formula id="e4">
<mml:math id="m27">
<mml:mrow>
<mml:mrow>
<mml:mfenced open="(" close=")" separators="|">
<mml:mrow>
<mml:msub>
<mml:mi mathvariant="bold">M</mml:mi>
<mml:mtext>ns</mml:mtext>
</mml:msub>
<mml:mo>&#x2b;</mml:mo>
<mml:msub>
<mml:mi mathvariant="bold">M</mml:mi>
<mml:mtext>es</mml:mtext>
</mml:msub>
</mml:mrow>
</mml:mfenced>
</mml:mrow>
<mml:mover accent="true">
<mml:mi mathvariant="bold">&#x3c8;</mml:mi>
<mml:mo>&#xa8;</mml:mo>
</mml:mover>
<mml:mo>&#x2b;</mml:mo>
<mml:mrow>
<mml:mfenced open="(" close=")" separators="|">
<mml:mrow>
<mml:msub>
<mml:mi mathvariant="bold">C</mml:mi>
<mml:mtext>ns</mml:mtext>
</mml:msub>
<mml:mo>&#x2b;</mml:mo>
<mml:msub>
<mml:mi mathvariant="bold">C</mml:mi>
<mml:mtext>es</mml:mtext>
</mml:msub>
</mml:mrow>
</mml:mfenced>
</mml:mrow>
<mml:mover accent="true">
<mml:mi mathvariant="bold">&#x3c8;</mml:mi>
<mml:mo>&#x2d9;</mml:mo>
</mml:mover>
<mml:mo>&#x2b;</mml:mo>
<mml:mrow>
<mml:mfenced open="(" close=")" separators="|">
<mml:mrow>
<mml:msub>
<mml:mi mathvariant="bold">K</mml:mi>
<mml:mtext>ns</mml:mtext>
</mml:msub>
<mml:mo>&#x2b;</mml:mo>
<mml:msub>
<mml:mi mathvariant="bold">K</mml:mi>
<mml:mtext>es</mml:mtext>
</mml:msub>
</mml:mrow>
</mml:mfenced>
</mml:mrow>
<mml:mi mathvariant="bold">&#x3c8;</mml:mi>
<mml:mo>&#x3d;</mml:mo>
<mml:mo>&#x2212;</mml:mo>
<mml:mi mathvariant="bold">M</mml:mi>
<mml:mi mathvariant="bold">&#x393;</mml:mi>
<mml:mo>&#x22c5;</mml:mo>
<mml:msub>
<mml:mover accent="true">
<mml:mi>x</mml:mi>
<mml:mo>&#xa8;</mml:mo>
</mml:mover>
<mml:mi>g</mml:mi>
</mml:msub>
</mml:mrow>
</mml:math>
<label>(4)</label>
</disp-formula>where<disp-formula id="e5">
<mml:math id="m28">
<mml:mrow>
<mml:mtable columnalign="center">
<mml:mtr>
<mml:mtd>
<mml:mrow>
<mml:mi mathvariant="bold">M</mml:mi>
<mml:mo>&#x3d;</mml:mo>
<mml:msub>
<mml:mi mathvariant="bold">M</mml:mi>
<mml:mtext>ns</mml:mtext>
</mml:msub>
<mml:mo>&#x2b;</mml:mo>
<mml:msub>
<mml:mi mathvariant="bold">M</mml:mi>
<mml:mtext>es</mml:mtext>
</mml:msub>
</mml:mrow>
</mml:mtd>
</mml:mtr>
<mml:mtr>
<mml:mtd>
<mml:mrow>
<mml:mi mathvariant="bold">C</mml:mi>
<mml:mo>&#x3d;</mml:mo>
<mml:msub>
<mml:mi mathvariant="bold">C</mml:mi>
<mml:mtext>ns</mml:mtext>
</mml:msub>
<mml:mo>&#x2b;</mml:mo>
<mml:msub>
<mml:mi mathvariant="bold">C</mml:mi>
<mml:mtext>es</mml:mtext>
</mml:msub>
</mml:mrow>
</mml:mtd>
</mml:mtr>
<mml:mtr>
<mml:mtd>
<mml:mrow>
<mml:mi mathvariant="bold">K</mml:mi>
<mml:mo>&#x3d;</mml:mo>
<mml:msub>
<mml:mi mathvariant="bold">K</mml:mi>
<mml:mtext>ns</mml:mtext>
</mml:msub>
<mml:mo>&#x2b;</mml:mo>
<mml:msub>
<mml:mi mathvariant="bold">K</mml:mi>
<mml:mtext>es</mml:mtext>
</mml:msub>
</mml:mrow>
</mml:mtd>
</mml:mtr>
</mml:mtable>
<mml:mo>.</mml:mo>
</mml:mrow>
</mml:math>
<label>(5)</label>
</disp-formula>
</p>
<p>Herein, the subscript &#x2018;ns&#x2019; will be used for variables associated with the numerical substructure, and &#x2018;es&#x2019; will be reserved for the experimental substructure variables. The ideal hybrid system with its active DOFs is shown in <xref ref-type="fig" rid="F6">Figure 6</xref>. From this theoretical representation, a numerical substructure model for RTHS is obtained by defining an experimental substructure considering the DOFs <inline-formula id="inf24">
<mml:math id="m29">
<mml:mrow>
<mml:msub>
<mml:mi>&#x3c8;</mml:mi>
<mml:mtext>es</mml:mtext>
</mml:msub>
<mml:mrow>
<mml:mfenced open="[" close="]" separators="|">
<mml:mrow>
<mml:mi>i</mml:mi>
</mml:mrow>
</mml:mfenced>
</mml:mrow>
</mml:mrow>
</mml:math>
</inline-formula> for <italic>i</italic> &#x3d; 4, 7, 16, 19, 28, 31, 37, 38, that are shown in <xref ref-type="fig" rid="F6">Figure 6</xref>. The corresponding matrices <inline-formula id="inf25">
<mml:math id="m30">
<mml:mrow>
<mml:msub>
<mml:mi mathvariant="bold">M</mml:mi>
<mml:mtext>es</mml:mtext>
</mml:msub>
</mml:mrow>
</mml:math>
</inline-formula>
<bold>,</bold> <inline-formula id="inf26">
<mml:math id="m31">
<mml:mrow>
<mml:msub>
<mml:mi mathvariant="bold">C</mml:mi>
<mml:mtext>es</mml:mtext>
</mml:msub>
</mml:mrow>
</mml:math>
</inline-formula>
<bold>,</bold> and <inline-formula id="inf27">
<mml:math id="m32">
<mml:mrow>
<mml:msub>
<mml:mi mathvariant="bold">K</mml:mi>
<mml:mtext>es</mml:mtext>
</mml:msub>
</mml:mrow>
</mml:math>
</inline-formula> are identified from static loading and free vibration tests, and the numerical substructure matrices are obtained by subtracting the identified experimental substructure matrices from the reference model, which was defined in <xref ref-type="sec" rid="s2">Section 2</xref>. Then, from Eq. <xref ref-type="disp-formula" rid="e4">(4)</xref>, the terms associated with the experimental substructure can be arranged into the right-hand side of equation of motion, yielding Eq. <xref ref-type="disp-formula" rid="e6">(6)</xref>.<disp-formula id="e6">
<mml:math id="m33">
<mml:mrow>
<mml:msub>
<mml:mi mathvariant="bold">M</mml:mi>
<mml:mtext>ns</mml:mtext>
</mml:msub>
<mml:mover accent="true">
<mml:mi mathvariant="bold">&#x3c8;</mml:mi>
<mml:mo>&#xa8;</mml:mo>
</mml:mover>
<mml:mo>&#x2b;</mml:mo>
<mml:msub>
<mml:mi mathvariant="bold">C</mml:mi>
<mml:mtext>ns</mml:mtext>
</mml:msub>
<mml:mover accent="true">
<mml:mi mathvariant="bold">&#x3c8;</mml:mi>
<mml:mo>&#x2d9;</mml:mo>
</mml:mover>
<mml:mo>&#x2b;</mml:mo>
<mml:msub>
<mml:mi mathvariant="bold">K</mml:mi>
<mml:mtext>ns</mml:mtext>
</mml:msub>
<mml:mi mathvariant="bold">&#x3c8;</mml:mi>
<mml:mo>&#x3d;</mml:mo>
<mml:mo>&#x2212;</mml:mo>
<mml:mi mathvariant="bold">M</mml:mi>
<mml:mi mathvariant="bold">&#x393;</mml:mi>
<mml:mo>&#x22c5;</mml:mo>
<mml:msub>
<mml:mover accent="true">
<mml:mi>x</mml:mi>
<mml:mo>&#xa8;</mml:mo>
</mml:mover>
<mml:mi>g</mml:mi>
</mml:msub>
<mml:mo>&#x2212;</mml:mo>
<mml:mrow>
<mml:mfenced open="(" close=")" separators="|">
<mml:mrow>
<mml:msub>
<mml:mi mathvariant="bold">M</mml:mi>
<mml:mtext>es</mml:mtext>
</mml:msub>
<mml:mover accent="true">
<mml:mi mathvariant="bold">&#x3c8;</mml:mi>
<mml:mo>&#xa8;</mml:mo>
</mml:mover>
<mml:mo>&#x2b;</mml:mo>
<mml:msub>
<mml:mi mathvariant="bold">C</mml:mi>
<mml:mtext>es</mml:mtext>
</mml:msub>
<mml:mover accent="true">
<mml:mi mathvariant="bold">&#x3c8;</mml:mi>
<mml:mo>&#x2d9;</mml:mo>
</mml:mover>
<mml:mo>&#x2b;</mml:mo>
<mml:msub>
<mml:mi mathvariant="bold">K</mml:mi>
<mml:mtext>es</mml:mtext>
</mml:msub>
<mml:mi mathvariant="bold">&#x3c8;</mml:mi>
</mml:mrow>
</mml:mfenced>
</mml:mrow>
</mml:mrow>
</mml:math>
<label>(6)</label>
</disp-formula>
<disp-formula id="e7">
<mml:math id="m34">
<mml:mrow>
<mml:msub>
<mml:mi mathvariant="bold">f</mml:mi>
<mml:mtext>es</mml:mtext>
</mml:msub>
<mml:mo>&#x3d;</mml:mo>
<mml:msub>
<mml:mi mathvariant="bold">M</mml:mi>
<mml:mtext>es</mml:mtext>
</mml:msub>
<mml:mover accent="true">
<mml:mi mathvariant="bold">&#x3c8;</mml:mi>
<mml:mo>&#xa8;</mml:mo>
</mml:mover>
<mml:mo>&#x2b;</mml:mo>
<mml:msub>
<mml:mi mathvariant="bold">C</mml:mi>
<mml:mtext>es</mml:mtext>
</mml:msub>
<mml:mover accent="true">
<mml:mi mathvariant="bold">&#x3c8;</mml:mi>
<mml:mo>&#x2d9;</mml:mo>
</mml:mover>
<mml:mo>&#x2b;</mml:mo>
<mml:msub>
<mml:mi mathvariant="bold">K</mml:mi>
<mml:mtext>es</mml:mtext>
</mml:msub>
<mml:mi mathvariant="bold">&#x3c8;</mml:mi>
<mml:mo>.</mml:mo>
</mml:mrow>
</mml:math>
<label>(7)</label>
</disp-formula>
</p>
<fig id="F6" position="float">
<label>FIGURE 6</label>
<caption>
<p>Conceptual representation of the reference structure partition.</p>
</caption>
<graphic xlink:href="fbuil-09-1270996-g006.tif"/>
</fig>
<p>Here <inline-formula id="inf28">
<mml:math id="m35">
<mml:mrow>
<mml:msub>
<mml:mi mathvariant="bold">f</mml:mi>
<mml:mtext>es</mml:mtext>
</mml:msub>
</mml:mrow>
</mml:math>
</inline-formula> is the feedback force vector produced by the experimental substructure during the dynamic testing. In an ideal RTHS simulation, the feedback force may be obtained directly from Eq. <xref ref-type="disp-formula" rid="e7">(7)</xref>. However, in physically actuated RTHS, it must be measured or estimated using measured data from the experimental domain. Finally, dividing the equation of motion by <inline-formula id="inf29">
<mml:math id="m36">
<mml:mrow>
<mml:msub>
<mml:mi mathvariant="bold">M</mml:mi>
<mml:mtext>ns</mml:mtext>
</mml:msub>
</mml:mrow>
</mml:math>
</inline-formula>, a mass-normalized form is obtained, see Eq. <xref ref-type="disp-formula" rid="e8">(8)</xref>:<disp-formula id="e8">
<mml:math id="m37">
<mml:mrow>
<mml:mover accent="true">
<mml:mi mathvariant="bold">&#x3c8;</mml:mi>
<mml:mo>&#xa8;</mml:mo>
</mml:mover>
<mml:mo>&#x2b;</mml:mo>
<mml:msubsup>
<mml:mi mathvariant="bold">M</mml:mi>
<mml:mtext>ns</mml:mtext>
<mml:mrow>
<mml:mo>&#x2212;</mml:mo>
<mml:mn>1</mml:mn>
</mml:mrow>
</mml:msubsup>
<mml:msub>
<mml:mi mathvariant="bold">C</mml:mi>
<mml:mtext>ns</mml:mtext>
</mml:msub>
<mml:mover accent="true">
<mml:mi mathvariant="bold">&#x3c8;</mml:mi>
<mml:mo>&#x2d9;</mml:mo>
</mml:mover>
<mml:mo>&#x2b;</mml:mo>
<mml:msubsup>
<mml:mi mathvariant="bold">M</mml:mi>
<mml:mtext>ns</mml:mtext>
<mml:mrow>
<mml:mo>&#x2212;</mml:mo>
<mml:mn>1</mml:mn>
</mml:mrow>
</mml:msubsup>
<mml:msub>
<mml:mi mathvariant="bold">K</mml:mi>
<mml:mtext>ns</mml:mtext>
</mml:msub>
<mml:mi mathvariant="bold">&#x3c8;</mml:mi>
<mml:mo>&#x3d;</mml:mo>
<mml:mo>&#x2212;</mml:mo>
<mml:msubsup>
<mml:mi mathvariant="bold">M</mml:mi>
<mml:mtext>ns</mml:mtext>
<mml:mrow>
<mml:mo>&#x2212;</mml:mo>
<mml:mn>1</mml:mn>
</mml:mrow>
</mml:msubsup>
<mml:mi mathvariant="bold">M</mml:mi>
<mml:mi mathvariant="bold">&#x393;</mml:mi>
<mml:mo>&#x22c5;</mml:mo>
<mml:msub>
<mml:mover accent="true">
<mml:mi>x</mml:mi>
<mml:mo>&#xa8;</mml:mo>
</mml:mover>
<mml:mi>g</mml:mi>
</mml:msub>
<mml:mo>&#x2212;</mml:mo>
<mml:msubsup>
<mml:mi mathvariant="bold">M</mml:mi>
<mml:mtext>ns</mml:mtext>
<mml:mrow>
<mml:mo>&#x2212;</mml:mo>
<mml:mn>1</mml:mn>
</mml:mrow>
</mml:msubsup>
<mml:msub>
<mml:mi mathvariant="bold">f</mml:mi>
<mml:mtext>es</mml:mtext>
</mml:msub>
<mml:mo>,</mml:mo>
</mml:mrow>
</mml:math>
<label>(8)</label>
</disp-formula>which, in this benchmark, is numerically integrated using the unconditionally stable constant-average-acceleration Newmark&#x2019;s method with parameters <inline-formula id="inf30">
<mml:math id="m38">
<mml:mrow>
<mml:mi>&#x3b1;</mml:mi>
<mml:mo>&#x3d;</mml:mo>
<mml:mn>0.25</mml:mn>
</mml:mrow>
</mml:math>
</inline-formula> and <inline-formula id="inf31">
<mml:math id="m39">
<mml:mrow>
<mml:mi>&#x3b4;</mml:mi>
<mml:mo>&#x3d;</mml:mo>
<mml:mn>0.5</mml:mn>
</mml:mrow>
</mml:math>
</inline-formula> (<xref ref-type="bibr" rid="B4">Bathe and Bathe, 2014</xref>). The time step is 0.976&#xa0;ms since the goal is to run this RTHS Benchmark in real time with a sampling frequency of 1,024&#xa0;Hz.</p>
</sec>
<sec id="s3-3">
<title>3.3 Physical substructure geometry and material specifications</title>
<p>The physical specimen in the laboratory will be connected to the numerical substructure of the RTHS experiment. This frame was utilized in previous research (<xref ref-type="bibr" rid="B21">Gao, 2012</xref>; <xref ref-type="bibr" rid="B20">Gao et al., 2013</xref>) and as part of a past benchmark problem (<xref ref-type="bibr" rid="B56">Silva et al., 2020</xref>). Thus, the feasibility of the plant has already been demonstrated. <xref ref-type="fig" rid="F7">Figure 7</xref> shows the frame and its geometry, which is composed of a horizontal beam and two vertical columns made of structural steel A572 Grade 50. The boundary conditions at the base correspond to pinned connections and the column-beam joints are assumed rigid, transmitting axial, shear, and moment forces. The beam element is fabricated with a 50&#xa0;mm &#xd7; 6&#xa0;mm plate (web) and two 38&#xa0;mm &#xd7; 6&#xa0;mm plates (flanges), forming a custom-made I beam, and the columns are commercially available hot-rolled S3 x 5.7 sections.</p>
<fig id="F7" position="float">
<label>FIGURE 7</label>
<caption>
<p>Steel frame comprising the physical substructure: <bold>(A)</bold> Drawing (Units: mm), <bold>(B)</bold> Photograph.</p>
</caption>
<graphic xlink:href="fbuil-09-1270996-g007.tif"/>
</fig>
</sec>
<sec id="s3-4">
<title>3.4 Transfer system</title>
<p>In RTHS, additional hardware is needed to drive the experimental frame synchronously with the numerical substructure. The interface conditions discussed in <xref ref-type="sec" rid="s3-1">Section 3.1</xref> are enforced by the transfer system which in this case consists of two hydraulic actuators. Hereafter, the vertical DOFs along the global coordinate <italic>y</italic> will not be considered for convenience, and due to the negligible axial deformations in columns, vertical displacements in the nodes are small in comparison with the horizontal displacements. For instance, <xref ref-type="fig" rid="F8">Figure 8A</xref> shows that for node 4 of the frame, the two associated DOFs of the numerical substructure <inline-formula id="inf32">
<mml:math id="m40">
<mml:mrow>
<mml:msub>
<mml:mi mathvariant="bold">&#x3c8;</mml:mi>
<mml:mrow>
<mml:mtext>ns</mml:mtext>
<mml:mn>4</mml:mn>
</mml:mrow>
</mml:msub>
<mml:mrow>
<mml:mfenced open="[" close="]" separators="|">
<mml:mrow>
<mml:mn>4,28</mml:mn>
</mml:mrow>
</mml:mfenced>
</mml:mrow>
<mml:mo>&#x3d;</mml:mo>
<mml:msup>
<mml:mrow>
<mml:mfenced open="[" close="]" separators="|">
<mml:mrow>
<mml:msub>
<mml:mi>x</mml:mi>
<mml:mrow>
<mml:mtext>ns</mml:mtext>
<mml:mn>4</mml:mn>
</mml:mrow>
</mml:msub>
<mml:mtext>&#x2002;</mml:mtext>
<mml:msub>
<mml:mi>&#x3b8;</mml:mi>
<mml:mrow>
<mml:mtext>ns</mml:mtext>
<mml:mn>4</mml:mn>
</mml:mrow>
</mml:msub>
</mml:mrow>
</mml:mfenced>
</mml:mrow>
<mml:mi>T</mml:mi>
</mml:msup>
</mml:mrow>
</mml:math>
</inline-formula> are imposed to node 4 of the experimental substructure (i.e., <inline-formula id="inf33">
<mml:math id="m41">
<mml:mrow>
<mml:msub>
<mml:mi mathvariant="bold">&#x3c8;</mml:mi>
<mml:mrow>
<mml:mtext>es</mml:mtext>
<mml:mn>4</mml:mn>
</mml:mrow>
</mml:msub>
<mml:mrow>
<mml:mfenced open="[" close="]" separators="|">
<mml:mrow>
<mml:mn>4,28</mml:mn>
</mml:mrow>
</mml:mfenced>
</mml:mrow>
<mml:mo>&#x3d;</mml:mo>
<mml:msup>
<mml:mrow>
<mml:mfenced open="[" close="]" separators="|">
<mml:mrow>
<mml:msub>
<mml:mi>x</mml:mi>
<mml:mrow>
<mml:mtext>es</mml:mtext>
<mml:mn>4</mml:mn>
</mml:mrow>
</mml:msub>
<mml:mtext>&#x2002;</mml:mtext>
<mml:msub>
<mml:mi>&#x3b8;</mml:mi>
<mml:mrow>
<mml:mtext>es</mml:mtext>
<mml:mn>4</mml:mn>
</mml:mrow>
</mml:msub>
</mml:mrow>
</mml:mfenced>
</mml:mrow>
<mml:mi>T</mml:mi>
</mml:msup>
</mml:mrow>
</mml:math>
</inline-formula>). To represent this MDOF response in a more realistic fashion, these two interface boundary conditions are imposed by incorporating a multi-axial testing technique, which requires the use of multiple hydraulic actuators since each actuator provides translational motion only if used independently. <xref ref-type="fig" rid="F8">Figure 8B</xref> illustrates that a minimum of two hydraulic actuators provide equivalent translational and rotational motion to node 4.</p>
<fig id="F8" position="float">
<label>FIGURE 8</label>
<caption>
<p>Equivalent multi-actuator action to provide both translational and rotational motion. <bold>(A)</bold> Interface boundary conditions at node 1: rotation and linear displacement, <bold>(B)</bold> Equivalent MDOF motion performed by two hydraulic actuators.</p>
</caption>
<graphic xlink:href="fbuil-09-1270996-g008.tif"/>
</fig>
<p>However, to use these two hydraulic actuators, a supplementary component between the frame and the actuator is designed and fabricated. This element attached to the physical frame is referred to herein as the <italic>coupler</italic>. The coupling of the linear stroke of both actuators through the coupler results in the translational and rotational motion of the coupler and subsequently the physical frame, as depicted in <xref ref-type="fig" rid="F9">Figure 9</xref>.</p>
<fig id="F9" position="float">
<label>FIGURE 9</label>
<caption>
<p>Coupler attached at the interface joint enables the use of two hydraulic actuators.</p>
</caption>
<graphic xlink:href="fbuil-09-1270996-g009.tif"/>
</fig>
<p>The immediate effect of this setup is the complex internal coupling between the physical frame, coupler, and actuators. To understand these interactions, it is necessary to study each component individually.</p>
<sec id="s3-4-1">
<title>3.4.1 Servo-hydraulic actuators</title>
<p>Two fatigue-rated, double-ended, linear servo-hydraulic actuators (ShoreWestern, 910D series), with a nominal force capacity of 9.34&#xa0;kN (2.2 kip) and a stroke of &#xb1;63&#xa0;mm, are used (see <xref ref-type="fig" rid="F10">Figure 10</xref>). Each actuator has a built-in LVDT (linear variable differential transformer) transducer that collects measurements of linear displacements, and two load cells (Interface, 1,000 series) with a nominal force capacity of 11.2&#xa0;kN providing instantaneous force measurements. These hydraulic actuators operate with a hydraulic power supply (MTS pump) with a capacity of up to 680&#xa0;l/min at 206 Bar.</p>
<fig id="F10" position="float">
<label>FIGURE 10</label>
<caption>
<p>Both hydraulic actuators mounted on the strong wall at IISL <bold>(A)</bold> Drawing (Units: mm), <bold>(B)</bold> Photograph.</p>
</caption>
<graphic xlink:href="fbuil-09-1270996-g010.tif"/>
</fig>
</sec>
<sec id="s3-4-2">
<title>3.4.2 Coupler</title>
<p>The coupler weighs 17.9&#xa0;kg and is made from SAE 1018 low carbon steel plates. A finite element analysis of this component was performed in Abaqus (<xref ref-type="bibr" rid="B1">Abaqus Unified FEA, 2023</xref>) to verify that this coupler will remain below the linear elastic limit of 344.7&#xa0;N/mm<sup>2</sup> (50 ksi) for the range of forces and displacements the frame can experience. For example, the application of combination of forces corresponding to the maximum capacity of the hydraulic actuator provides maximum von Mises and principal stresses of 115.9&#xa0;N/mm<sup>2</sup> (16.8 ksi) and 135.4&#xa0;N/mm<sup>2</sup> (19.6 ksi), respectively. The maximum strain in this set of simulations is 0.0006&#xa0;mm/mm. <xref ref-type="fig" rid="F11">Figure 11</xref> illustrates some aspects of this component.</p>
<fig id="F11" position="float">
<label>FIGURE 11</label>
<caption>
<p>Coupler design and implementation. <bold>(A)</bold> Coupler, <bold>(B)</bold> Physical implementation of the coupler attached to the frame, <bold>(C)</bold> Coupler dimensions, <bold>(D)</bold> Finite element model in ABAQUS: Stress-strain analysis.</p>
</caption>
<graphic xlink:href="fbuil-09-1270996-g011.tif"/>
</fig>
<p>In summary, the two hydraulic actuators and coupler form the transfer system for the experimental setup. Due to experimental setup limitations, only the transfer system for node 4 of the experimental substructure is implemented. <xref ref-type="fig" rid="F12">Figure 12</xref> shows the experimental setup of this transfer system attached to the experimental substructure frame. An additional structure (black frame) prevents motion in the direction perpendicular to the experimental frame plane. This entire setup was assembled in the IISL.</p>
<fig id="F12" position="float">
<label>FIGURE 12</label>
<caption>
<p>Transfer system mounted on our concrete wall and attached to the experimental frame (in white).</p>
</caption>
<graphic xlink:href="fbuil-09-1270996-g012.tif"/>
</fig>
</sec>
</sec>
<sec id="s3-5">
<title>3.5 Control problem statement</title>
<p>Since RTHS requires a transfer system to drive the experimental substructure, the dynamics and response of the physical domain are affected by numerous well-known issues such as time delays, frequency-dependent time lags, measurement noise, control-structure interaction (CSI), servo-actuator dynamics, internal coupling in multi-actuator and multi-axial RTHS experiments, environmental and laboratory conditions at the time of the testing, etc. (<xref ref-type="bibr" rid="B14">Dyke et al., 1995</xref>; <xref ref-type="bibr" rid="B55">Phillips et al., 2013</xref>; <xref ref-type="bibr" rid="B17">Fermandois and Spencer, 2017</xref>; <xref ref-type="bibr" rid="B43">Nakata et al., 2023</xref>). These effects often play an important role in the accuracy and stability of RTHS, and if they are not considered, the quality of the RTHS can be substantially compromised.</p>
<p>In this regard, a properly designed and tuned control system is typically required to accommodate and compensate for these various issues if the goals of the test itself are to be achieved. The control system typically consists of three elements: 1) the plant to be controlled, which includes the dynamics of the system (structure) plus the transfer system (enforcer of the control action); 2) the sensing system, which comprises of all the required sensors to measure the responses of the plant; 3) a digitally implemented controller that takes the measured response(s) of the plant, estimate the necessary states if required, and generates a control action according to a specific control law. This element typically operates in closed loop, and includes one or more control layers for achieving the desired performance, and estimators for generating unmeasured or noisy states.</p>
<p>A block diagram of the key components described herein is presented in <xref ref-type="fig" rid="F13">Figure 13A</xref>, where the signals and closed loops describe the maRTHS configuration and establish the physical or computational implementation of each component of this maRTHS. <xref ref-type="fig" rid="F13">Figure 13B</xref> shows the experimental implementation of the control plant in the IISL.</p>
<fig id="F13" position="float">
<label>FIGURE 13</label>
<caption>
<p>maRTHS scheme and control plant implementation in the IISL laboratory. <bold>(A)</bold> Block diagram of the maRTHS, <bold>(B)</bold> The control plant.</p>
</caption>
<graphic xlink:href="fbuil-09-1270996-g013.tif"/>
</fig>
<p>Meeting the control objectives in this maRTHS scheme is a tracking problem. The main task of this benchmark is to design a control system (see <xref ref-type="fig" rid="F13">Figure 13</xref>) such that the output of the control plant <bold>&#x3b7;</bold>
<sub>
<italic>m</italic>
</sub> (measured actuator displacements) tracks the target displacement vector <bold>&#x3b7;</bold>
<sub>ns</sub> (the response of the numerical substructure in actuator coordinates) and assesses the tracking performance and the overall RTHS performance. The control problem in <xref ref-type="fig" rid="F13">Figure 13A</xref> is simplified in the closed-loop block diagram shown in <xref ref-type="fig" rid="F14">Figure 14</xref>. Participants in this benchmark study will develop and implement their own controllers, following the details to be explained in <xref ref-type="sec" rid="s4">Section 4</xref>. An example of designing and implementing a control scheme, based on a MIMO LQG approach is presented in <xref ref-type="sec" rid="s5">Section 5</xref>.</p>
<fig id="F14" position="float">
<label>FIGURE 14</label>
<caption>
<p>Tracking control block diagram.</p>
</caption>
<graphic xlink:href="fbuil-09-1270996-g014.tif"/>
</fig>
<p>An estimator is also necessary since the measured signals, <inline-formula id="inf34">
<mml:math id="m42">
<mml:mrow>
<mml:msub>
<mml:mi mathvariant="bold">&#x3b7;</mml:mi>
<mml:mi>m</mml:mi>
</mml:msub>
</mml:mrow>
</mml:math>
</inline-formula>, contain high frequency noise, and not all the states can be measured. Therefore, the state of the physical substructure must be estimated (the high frequency content is filtered out by the estimator). Then the estimated state <inline-formula id="inf35">
<mml:math id="m43">
<mml:mrow>
<mml:msub>
<mml:mover accent="true">
<mml:mi mathvariant="bold">&#x3b7;</mml:mi>
<mml:mo>&#x5e;</mml:mo>
</mml:mover>
<mml:mi>m</mml:mi>
</mml:msub>
</mml:mrow>
</mml:math>
</inline-formula> is used by the control law to realize a control input <bold>u</bold>, which is then sent to the control plant.</p>
<p>In <xref ref-type="sec" rid="s3-4">Section 3.4</xref>, it was established that a target displacement vector, <inline-formula id="inf36">
<mml:math id="m44">
<mml:mrow>
<mml:msub>
<mml:mi mathvariant="bold">&#x3c8;</mml:mi>
<mml:mrow>
<mml:mtext>ns</mml:mtext>
<mml:mn>4</mml:mn>
</mml:mrow>
</mml:msub>
<mml:mrow>
<mml:mfenced open="[" close="]" separators="|">
<mml:mrow>
<mml:mn>4,28</mml:mn>
</mml:mrow>
</mml:mfenced>
</mml:mrow>
<mml:mo>&#x3d;</mml:mo>
<mml:msup>
<mml:mrow>
<mml:mfenced open="[" close="]" separators="|">
<mml:mrow>
<mml:msub>
<mml:mi>x</mml:mi>
<mml:mrow>
<mml:mtext>ns</mml:mtext>
<mml:mn>4</mml:mn>
</mml:mrow>
</mml:msub>
<mml:mtext>&#x2002;</mml:mtext>
<mml:msub>
<mml:mi>&#x3b8;</mml:mi>
<mml:mrow>
<mml:mtext>ns</mml:mtext>
<mml:mn>4</mml:mn>
</mml:mrow>
</mml:msub>
</mml:mrow>
</mml:mfenced>
</mml:mrow>
<mml:mi>T</mml:mi>
</mml:msup>
</mml:mrow>
</mml:math>
</inline-formula>, must be imposed to the physical substructure using two hydraulic actuators. Since hydraulic actuators provide translational motion only, a coordinate transformation between &#x201c;<italic>frame coordinates</italic>&#x201d; and &#x201c;<italic>actuator coordinates</italic>&#x201d; is required. Given that the control system must send command signals to the actuators (in actuator coordinates, i.e., linear displacements), the coordinate transformation functions are located between the numerical substructure and the control system, as shown in <xref ref-type="fig" rid="F13">Figure 13A</xref>. Thus, <inline-formula id="inf37">
<mml:math id="m45">
<mml:mrow>
<mml:msub>
<mml:mi mathvariant="bold">&#x3b7;</mml:mi>
<mml:mi>m</mml:mi>
</mml:msub>
<mml:mo>&#x3d;</mml:mo>
<mml:msup>
<mml:mrow>
<mml:mfenced open="[" close="]" separators="|">
<mml:mrow>
<mml:msub>
<mml:mi>&#x3b7;</mml:mi>
<mml:mrow>
<mml:mi>m</mml:mi>
<mml:mn>1</mml:mn>
</mml:mrow>
</mml:msub>
<mml:mtext>&#x2009;</mml:mtext>
<mml:msub>
<mml:mi>&#x3b7;</mml:mi>
<mml:mrow>
<mml:mi>m</mml:mi>
<mml:mn>2</mml:mn>
</mml:mrow>
</mml:msub>
</mml:mrow>
</mml:mfenced>
</mml:mrow>
<mml:mi>T</mml:mi>
</mml:msup>
</mml:mrow>
</mml:math>
</inline-formula> is the multi-axial actuator displacement equivalent to the frame node target displacement vector <inline-formula id="inf38">
<mml:math id="m46">
<mml:mrow>
<mml:msub>
<mml:mi mathvariant="bold">&#x3c8;</mml:mi>
<mml:mrow>
<mml:mtext>ns</mml:mtext>
<mml:mn>4</mml:mn>
</mml:mrow>
</mml:msub>
<mml:mrow>
<mml:mfenced open="[" close="]" separators="|">
<mml:mrow>
<mml:mn>4,28</mml:mn>
</mml:mrow>
</mml:mfenced>
</mml:mrow>
</mml:mrow>
</mml:math>
</inline-formula>. Then, the control system realizes the control input vector <inline-formula id="inf39">
<mml:math id="m47">
<mml:mrow>
<mml:mi mathvariant="bold">u</mml:mi>
<mml:mo>&#x3d;</mml:mo>
<mml:msup>
<mml:mrow>
<mml:mfenced open="[" close="]" separators="|">
<mml:mrow>
<mml:msub>
<mml:mi>u</mml:mi>
<mml:mn>1</mml:mn>
</mml:msub>
<mml:mtext>&#x2009;</mml:mtext>
<mml:msub>
<mml:mi>u</mml:mi>
<mml:mn>2</mml:mn>
</mml:msub>
</mml:mrow>
</mml:mfenced>
</mml:mrow>
<mml:mi>T</mml:mi>
</mml:msup>
</mml:mrow>
</mml:math>
</inline-formula>, which are commanded to each hydraulic actuator to drive the physical substructure accordingly. Likewise, once the estimator computes the estimated actuator displacement vector <inline-formula id="inf40">
<mml:math id="m48">
<mml:mrow>
<mml:msub>
<mml:mover accent="true">
<mml:mi mathvariant="bold">&#x3b7;</mml:mi>
<mml:mo>&#x5e;</mml:mo>
</mml:mover>
<mml:mi>m</mml:mi>
</mml:msub>
<mml:mo>&#x3d;</mml:mo>
<mml:msup>
<mml:mrow>
<mml:mfenced open="[" close="]" separators="|">
<mml:mrow>
<mml:msub>
<mml:mover accent="true">
<mml:mi>&#x3b7;</mml:mi>
<mml:mo>&#x5e;</mml:mo>
</mml:mover>
<mml:mrow>
<mml:mi>m</mml:mi>
<mml:mn>1</mml:mn>
</mml:mrow>
</mml:msub>
<mml:mtext>&#x2009;</mml:mtext>
<mml:msub>
<mml:mover accent="true">
<mml:mi>&#x3b7;</mml:mi>
<mml:mo>&#x5e;</mml:mo>
</mml:mover>
<mml:mrow>
<mml:mi>m</mml:mi>
<mml:mn>2</mml:mn>
</mml:mrow>
</mml:msub>
</mml:mrow>
</mml:mfenced>
</mml:mrow>
<mml:mi>T</mml:mi>
</mml:msup>
</mml:mrow>
</mml:math>
</inline-formula>, these actuator coordinates are transformed back to frame coordinates <inline-formula id="inf41">
<mml:math id="m49">
<mml:mrow>
<mml:msub>
<mml:mi mathvariant="bold">&#x3c8;</mml:mi>
<mml:mrow>
<mml:mtext>ns</mml:mtext>
<mml:mn>4</mml:mn>
</mml:mrow>
</mml:msub>
<mml:mrow>
<mml:mfenced open="[" close="]" separators="|">
<mml:mrow>
<mml:mn>4,28</mml:mn>
</mml:mrow>
</mml:mfenced>
</mml:mrow>
</mml:mrow>
</mml:math>
</inline-formula>.</p>
<p>The feedback signal required to satisfy equilibrium conditions at the interface node in the numerical substructure is the experimental force vector <inline-formula id="inf42">
<mml:math id="m50">
<mml:mrow>
<mml:msub>
<mml:mi mathvariant="bold">f</mml:mi>
<mml:mrow>
<mml:mi>m</mml:mi>
<mml:mn>4</mml:mn>
</mml:mrow>
</mml:msub>
<mml:mo>&#x3d;</mml:mo>
<mml:msup>
<mml:mrow>
<mml:mfenced open="[" close="]" separators="|">
<mml:mrow>
<mml:msub>
<mml:mi>F</mml:mi>
<mml:mrow>
<mml:mi>m</mml:mi>
<mml:mn>4</mml:mn>
</mml:mrow>
</mml:msub>
<mml:mtext>&#x2009;</mml:mtext>
<mml:msub>
<mml:mi>M</mml:mi>
<mml:mrow>
<mml:mi>m</mml:mi>
<mml:mn>4</mml:mn>
</mml:mrow>
</mml:msub>
</mml:mrow>
</mml:mfenced>
</mml:mrow>
<mml:mi>T</mml:mi>
</mml:msup>
</mml:mrow>
</mml:math>
</inline-formula> , where <inline-formula id="inf43">
<mml:math id="m51">
<mml:mrow>
<mml:msub>
<mml:mi>F</mml:mi>
<mml:mrow>
<mml:mi>m</mml:mi>
<mml:mn>4</mml:mn>
</mml:mrow>
</mml:msub>
</mml:mrow>
</mml:math>
</inline-formula> and <inline-formula id="inf44">
<mml:math id="m52">
<mml:mrow>
<mml:msub>
<mml:mi>M</mml:mi>
<mml:mrow>
<mml:mi>m</mml:mi>
<mml:mn>4</mml:mn>
</mml:mrow>
</mml:msub>
</mml:mrow>
</mml:math>
</inline-formula> are the force and moment corresponding to the degree-of-freedom in the vector <inline-formula id="inf45">
<mml:math id="m53">
<mml:mrow>
<mml:msub>
<mml:mi mathvariant="bold">&#x3c8;</mml:mi>
<mml:mrow>
<mml:mtext>ns</mml:mtext>
<mml:mn>4</mml:mn>
</mml:mrow>
</mml:msub>
<mml:mrow>
<mml:mfenced open="[" close="]" separators="|">
<mml:mrow>
<mml:mn>4,28</mml:mn>
</mml:mrow>
</mml:mfenced>
</mml:mrow>
</mml:mrow>
</mml:math>
</inline-formula>.</p>
<p>Some essential assumptions have been made to define the structure of the control system illustrated in <xref ref-type="fig" rid="F13">Figure 13B</xref>. In principle, the target signal is <inline-formula id="inf46">
<mml:math id="m54">
<mml:mrow>
<mml:msub>
<mml:mi mathvariant="bold">&#x3c8;</mml:mi>
<mml:mrow>
<mml:mtext>ns</mml:mtext>
<mml:mn>4</mml:mn>
</mml:mrow>
</mml:msub>
<mml:mrow>
<mml:mfenced open="[" close="]" separators="|">
<mml:mrow>
<mml:mn>4,28</mml:mn>
</mml:mrow>
</mml:mfenced>
</mml:mrow>
</mml:mrow>
</mml:math>
</inline-formula>, therefore, the controller should take measured translation and rotation <inline-formula id="inf47">
<mml:math id="m55">
<mml:mrow>
<mml:msub>
<mml:mi mathvariant="bold">&#x3c8;</mml:mi>
<mml:mrow>
<mml:mtext>es</mml:mtext>
<mml:mn>4</mml:mn>
</mml:mrow>
</mml:msub>
<mml:mrow>
<mml:mfenced open="[" close="]" separators="|">
<mml:mrow>
<mml:mn>4,28</mml:mn>
</mml:mrow>
</mml:mfenced>
</mml:mrow>
</mml:mrow>
</mml:math>
</inline-formula> of the experimental frame joint so that a direct tracking error would be evaluated. Nonetheless, measuring these states directly at the joint is difficult. Therefore, considering the mechanical properties of the different components and their behavior, the following assumptions can be stated: first, the frame behavior is linear elastic, which guarantees small deformations and deflections. The coupler has a high stiffness and it can be assumed to be rigid. Likewise, the column-beam joint can be considered rigid (<xref ref-type="bibr" rid="B10">Castaneda, 2012</xref>). Finally, the coupler and joint are connected with four high-strength grade 5 bolts with a maximum tensile strength of 827.4&#xa0;MPa (120 ksi), which is adequate for the range of forces required in this benchmark. These bolts connecting these two components will experience small deformations. Therefore, the strains experienced by the coupler and the column-beam joint are considered negligible, and it can be concluded that by measuring the displacement of the hydraulic actuators through LVDTs, the derived translational and rotational motion at node 4 of the experimental frame can be accurately obtained. In <xref ref-type="sec" rid="s3-7">Section 3.7</xref>, performance indices <inline-formula id="inf48">
<mml:math id="m56">
<mml:mrow>
<mml:msub>
<mml:mi mathvariant="bold">J</mml:mi>
<mml:mn>2</mml:mn>
</mml:msub>
</mml:mrow>
</mml:math>
</inline-formula> and <inline-formula id="inf49">
<mml:math id="m57">
<mml:mrow>
<mml:msub>
<mml:mi mathvariant="bold">J</mml:mi>
<mml:mn>5</mml:mn>
</mml:msub>
</mml:mrow>
</mml:math>
</inline-formula> will be developed to quantify any errors produced by our set of assumptions.</p>
</sec>
<sec id="s3-6">
<title>3.6 Implementation and constraints</title>
<p>The realization of this maRTHS problem requires the discussion of specific characteristics of its implementation and the definition of certain constraints to reproduce as close as possible actual laboratory conditions.</p>
<sec id="s3-6-1">
<title>3.6.1 Physical implementation</title>
<p>An essential characteristic of the behavior of the frame/coupler that has a critical impact on the forces in the hydraulic actuators is due to the deflected shape of the frame when it is pushed or pulled laterally. <xref ref-type="fig" rid="F15">Figure 15</xref> shows the deflected shape of the frame with the coupler. Due to the rigidity of the column-beam joint, the coupler is forced to rotate as the frame moves laterally. Following this illustration, if each actuator is commanded such that it will move with the same displacement, each actuator would experience different and opposite forces as shown in <xref ref-type="fig" rid="F16">Figure 16A</xref>. Here, if each actuator is pushing the same amount (green arrows), the frame would move to the left causing the coupler to rotate counterclockwise, which would generate a compression effect at the bottom and a tension effect at the top (yellow arrows). Therefore, the net force in the bottom actuator (blue arrow) would be the addition of both effects, and the net force in the top actuator (red arrow) would be the difference of these effects. A similar behavior with inverted force directions occurs when the frame is being pulled.</p>
<fig id="F15" position="float">
<label>FIGURE 15</label>
<caption>
<p>Deflected shape of the frame and coupler due to lateral motion. <bold>(A)</bold> Frame being pushed, <bold>(B)</bold> Frame being pulled.</p>
</caption>
<graphic xlink:href="fbuil-09-1270996-g015.tif"/>
</fig>
<fig id="F16" position="float">
<label>FIGURE 16</label>
<caption>
<p>Experimental forces in actuators due to frame deformation. <bold>(A)</bold> Net forces in actuators due to command displacements to the left (pushing the frame) of equal amplitude, <bold>(B)</bold> Experimental forces in actuators when the frame is being pushed (positive values indicate compression), <bold>(C)</bold> Experimental forces in actuators when the frame is being pulled (positive values indicate compression).</p>
</caption>
<graphic xlink:href="fbuil-09-1270996-g016.tif"/>
</fig>
<p>To verify this behavior of the actuator-coupler-frame system, an experiment was conducted. A displacement ramp signal of 4&#xa0;mm is commanded to both actuators to push the frame in one direction. <xref ref-type="fig" rid="F16">Figure 16B</xref> shows the resulting measured forces in each actuator. The bottom actuator experiences the sum of the effect of the pushing actuators plus the compressive effect of the coupler on the actuator due to lateral frame deflection. On the other hand, the top actuator experiences the lateral deflected frame effect, which counteracts the pushing action. In fact, a tension force in the top actuator demonstrates that the deflected frame effect is greater than the pushing force due to the command displacement. <xref ref-type="fig" rid="F16">Figure 16C</xref> shows the case in which the frame is being pulled. From these observations, it can be concluded that the bottom actuator reaches its maximum capacity first under lateral motion regardless of the direction. These characteristics are considered in the experimental configuration to prevent saturation in the actuators, and in the computational domain to properly model the plant and for the design of the control system.</p>
</sec>
<sec id="s3-6-2">
<title>3.6.2 Computational implementation</title>
<p>The computational platform for implementing this benchmark problem is MATLAB/Simulink R2019b (<xref ref-type="bibr" rid="B34">MATLAB, 2023</xref>). To conduct the experiment, all models and computational components deployed onto a Speedgoat real-time machine (<xref ref-type="bibr" rid="B54">Performance Real-Time Target Machine, 2023</xref>). Thus, the numerical substructure, estimator, control law, and any further necessary modeled components and identified parameters are defined in MATLAB scripts and Simulink models. The structure utilized in this benchmark will be limited to linear elastic behavior, which is achieved because the maximum lateral displacement of the frame is limited to &#xb1;4&#xa0;mm. The mass, damping, and stiffness matrices are extracted to define the reference model, and to partition and numerical substructure according to <xref ref-type="sec" rid="s3">Section 3</xref>. The Newmark&#x2019;s method integration scheme described in <xref ref-type="sec" rid="s3-2">Section 3.2</xref> is implemented to integrate their responses. For designing the control system, an identified model (nominal model) is generated by processing experimental data and is described by a transfer function matrix with target displacements (<inline-formula id="inf50">
<mml:math id="m58">
<mml:mrow>
<mml:msub>
<mml:mi mathvariant="bold">&#x3b7;</mml:mi>
<mml:mtext>ns</mml:mtext>
</mml:msub>
</mml:mrow>
</mml:math>
</inline-formula>) as inputs, and measured displacements (<inline-formula id="inf51">
<mml:math id="m59">
<mml:mrow>
<mml:msub>
<mml:mi mathvariant="bold">&#x3b7;</mml:mi>
<mml:mi>m</mml:mi>
</mml:msub>
</mml:mrow>
</mml:math>
</inline-formula>) as outputs. This system is converted into state-space form to facilitate the design of the control system. The Runge-Kutta integration scheme available in Simulink is used for the numerical integration of these systems of first order differential equations. These files are included in the companion tool for executing vRTHS.</p>
</sec>
<sec id="s3-6-3">
<title>3.6.3 Benchmark problem constraints</title>
<p>
<list list-type="simple">
<list-item>
<p>1. Only displacements and forces of each actuator are available because those measurements may be acquired physically by sensors.</p>
</list-item>
<list-item>
<p>2. If any given proposed control strategy requires additional or higher order states, these must be estimated.</p>
</list-item>
<list-item>
<p>3. Participants may choose to derive their own plant model using the ID experimental data available in the companion package, see <xref ref-type="sec" rid="s4-6">Section 4.6</xref>. In vRTHS, a plant model replaces the actual experimental plant and a nominal plant model must be used to design the control system. To reproduce more realistic RTHS conditions, the control system must consider the uncertainties in the actual plant.</p>
</list-item>
<list-item>
<p>4. The system-level vRTHS simulation is executed in real-time at a sampling frequency of 1,024&#xa0;Hz.</p>
</list-item>
<list-item>
<p>5. Each hydraulic actuator has a force capacity of 9340&#xa0;N and maximum velocity of 25&#xa0;mm/s. The maximum axial displacements must remain within &#xb1;4&#xa0;mm to guarantee linear elastic behavior of the frame.</p>
</list-item>
<list-item>
<p>6. For acquiring data and outputting commands, an I/O board with 18 bit&#xa0;A/D converters is used. The command inputs must remain within &#xb1;4&#xa0;V. These bounds are implemented with saturation and quantizer blocks in the benchmark code companion package.</p>
</list-item>
<list-item>
<p>7. The conversion relations between the voltage signals and physical units are:</p>
</list-item>
<list-item>
<p>Actuator 1:</p>
</list-item>
</list>
</p>
<p>Voltage to displacement: 7.4921&#xa0;mm/V.</p>
<p>Voltage to force: 2074.74&#xa0;N/V.<list list-type="simple">
<list-item>
<p>Actuator 2:</p>
</list-item>
</list>
</p>
<p>Voltage to displacement: 7.3907&#xa0;mm/V.</p>
<p>Voltage to force: 2006.36&#xa0;N/V.<list list-type="simple">
<list-item>
<p>8. The measured responses contain noise. In the companion tool, these are implemented based on experimental data. The root-mean-square (RMS) values and standard deviation (STD) for these measured signals are:</p>
</list-item>
<list-item>
<p>Actuator 1:</p>
</list-item>
</list>
</p>
<p>Displacement: RMS &#x3d; 0.0182 mm, STD &#x3d; 0.0172&#xa0;mm.</p>
<p>Force: RMS &#x3d; 74.40 N, STD &#x3d; 20.13&#xa0;N.<list list-type="simple">
<list-item>
<p>Actuator 2:</p>
</list-item>
</list>
</p>
<p>Displacement: RMS &#x3d; 0.0199&#xa0;mm, STD &#x3d; 0.0198&#xa0;mm.</p>
<p>Force: RMS &#x3d; 10.95 N, STD &#x3d; 7.62&#xa0;N.</p>
</sec>
</sec>
<sec id="s3-7">
<title>3.7 Evaluation criteria</title>
<p>To assess the overall performance of the maRTHS, the quantitative evaluations consider: 1) tracking control performance (minimize error between target and measured displacements); and 2) global RTHS experiment performance (minimize the error between the reference structure response and the hybrid system response) are required. A set of 10 evaluation criteria is considered in this benchmark. The first six assess the tracking performance of the control system, and the remaining four compute the global performance of the RTHS. These criteria are computed after the RTHS (or vRTHS) is concluded. <xref ref-type="table" rid="T1">Table 1</xref> summarizes the indices and briefly describes each criterion. Most of the criteria are evaluated at the interface node at the first story and some are evaluated at upper stories nodes 2 and 3, see <xref ref-type="fig" rid="F6">Figure 6</xref>.</p>
<table-wrap id="T1" position="float">
<label>TABLE 1</label>
<caption>
<p>Criteria for assessment of tracking and global RTHS performance.</p>
</caption>
<table>
<thead valign="top">
<tr>
<th align="center">Performance</th>
<th align="center">Index</th>
<th align="center">Unit</th>
<th align="center">Criterion</th>
</tr>
</thead>
<tbody valign="top">
<tr>
<td rowspan="3" align="center">
<bold>Tracking Control</bold>
</td>
<td align="center">
<bold>J</bold>
<sub>1</sub>
</td>
<td align="center">ms</td>
<td align="left">Tracking time delay between desired and measured actuator displacements</td>
</tr>
<tr>
<td align="center">
<bold>J</bold>
<sub>2</sub>
</td>
<td align="center">%</td>
<td align="left">Normalized tracking error. It represents the difference between target and measured actuator displacements</td>
</tr>
<tr>
<td align="center">
<bold>J</bold>
<sub>3</sub>
</td>
<td align="center">%</td>
<td align="left">Maximum peak tracking error between the instantaneous response of desired and measured actuator displacements</td>
</tr>
<tr>
<td rowspan="3" align="center">
<bold>Estimation</bold>
</td>
<td align="center">
<bold>J</bold>
<sub>4</sub>
</td>
<td align="center">ms</td>
<td align="left">Time delay between target and estimated interface node displacements of the frame</td>
</tr>
<tr>
<td align="center">
<bold>J</bold>
<sub>5</sub>
</td>
<td align="center">%</td>
<td align="left">Normalized error of the difference between frame target displacements and estimated interface node displacements of the experimental frame</td>
</tr>
<tr>
<td align="center">
<bold>J</bold>
<sub>6</sub>
</td>
<td align="center">%</td>
<td align="left">Maximum peak error between the instantaneous response of frame target displacement and estimated interface node displacements of the experimental frame</td>
</tr>
<tr>
<td rowspan="4" align="center">Global RTHS</td>
<td align="center">
<bold>J</bold>
<sub>7</sub>
</td>
<td align="center">%</td>
<td align="left">Normalized error between reference and estimated measured response of the frame at the interface node</td>
</tr>
<tr>
<td align="center">
<bold>J</bold>
<sub>8</sub>
</td>
<td align="center">%</td>
<td align="left">Normalized error between relative reference and relative numerical substructure response at upper stories</td>
</tr>
<tr>
<td align="center">
<bold>J</bold>
<sub>9</sub>
</td>
<td align="center">%</td>
<td align="left">Maximum peak global displacement error between reference and estimated measured response of the frame at the interface node</td>
</tr>
<tr>
<td align="center">
<bold>J</bold>
<sub>10</sub>
</td>
<td align="center">%</td>
<td align="left">Maximum peak global displacement error between relative reference and relative numerical substructure response at upper stories</td>
</tr>
</tbody>
</table>
</table-wrap>
<p>Due to the MDOF characteristic of this benchmark, each of the indices in <xref ref-type="table" rid="T1">Table 1</xref> are vectors. For instance, the tracking control index <inline-formula id="inf52">
<mml:math id="m60">
<mml:mrow>
<mml:msub>
<mml:mi mathvariant="bold">J</mml:mi>
<mml:mn>2</mml:mn>
</mml:msub>
<mml:mo>&#x3d;</mml:mo>
<mml:msup>
<mml:mrow>
<mml:mfenced open="[" close="]" separators="|">
<mml:mrow>
<mml:mtable columnalign="center">
<mml:mtr>
<mml:mtd>
<mml:msub>
<mml:mi>J</mml:mi>
<mml:mn>2,1</mml:mn>
</mml:msub>
</mml:mtd>
<mml:mtd>
<mml:msub>
<mml:mi>J</mml:mi>
<mml:mn>2,2</mml:mn>
</mml:msub>
</mml:mtd>
</mml:mtr>
</mml:mtable>
</mml:mrow>
</mml:mfenced>
</mml:mrow>
<mml:mi>T</mml:mi>
</mml:msup>
</mml:mrow>
</mml:math>
</inline-formula> has two components corresponding to the two hydraulic actuators motion Actuator 1 and Actuator 2, whereas the global performance index for upper stories <inline-formula id="inf53">
<mml:math id="m61">
<mml:mrow>
<mml:msub>
<mml:mi mathvariant="bold">J</mml:mi>
<mml:mn>8</mml:mn>
</mml:msub>
<mml:mo>&#x3d;</mml:mo>
<mml:msup>
<mml:mrow>
<mml:mfenced open="[" close="]" separators="|">
<mml:mrow>
<mml:mtable columnalign="center">
<mml:mtr>
<mml:mtd>
<mml:msub>
<mml:mi>J</mml:mi>
<mml:mn>8,2</mml:mn>
</mml:msub>
</mml:mtd>
<mml:mtd>
<mml:mtable columnalign="center">
<mml:mtr>
<mml:mtd>
<mml:msub>
<mml:mi>J</mml:mi>
<mml:mn>8,26</mml:mn>
</mml:msub>
</mml:mtd>
<mml:mtd>
<mml:mtable columnalign="center">
<mml:mtr>
<mml:mtd>
<mml:msub>
<mml:mi>J</mml:mi>
<mml:mn>8,3</mml:mn>
</mml:msub>
</mml:mtd>
<mml:mtd>
<mml:msub>
<mml:mi>J</mml:mi>
<mml:mn>8,27</mml:mn>
</mml:msub>
</mml:mtd>
</mml:mtr>
</mml:mtable>
</mml:mtd>
</mml:mtr>
</mml:mtable>
</mml:mtd>
</mml:mtr>
</mml:mtable>
</mml:mrow>
</mml:mfenced>
</mml:mrow>
<mml:mi>T</mml:mi>
</mml:msup>
</mml:mrow>
</mml:math>
</inline-formula> has four components that represents the translational and rotational DOFs of the second story at node 2 (i.e., <inline-formula id="inf54">
<mml:math id="m62">
<mml:mrow>
<mml:msub>
<mml:mi>&#x3c8;</mml:mi>
<mml:mn>2</mml:mn>
</mml:msub>
<mml:mo>,</mml:mo>
<mml:msub>
<mml:mi>&#x3c8;</mml:mi>
<mml:mn>26</mml:mn>
</mml:msub>
</mml:mrow>
</mml:math>
</inline-formula>) and of the third story at node 3 (i.e., <inline-formula id="inf55">
<mml:math id="m63">
<mml:mrow>
<mml:msub>
<mml:mi>&#x3c8;</mml:mi>
<mml:mn>3</mml:mn>
</mml:msub>
<mml:mo>,</mml:mo>
<mml:msub>
<mml:mi>&#x3c8;</mml:mi>
<mml:mn>27</mml:mn>
</mml:msub>
</mml:mrow>
</mml:math>
</inline-formula>). See <xref ref-type="fig" rid="F3">Figure 3</xref> or 6 for the DOFs definition.</p>
<p>With reference to <xref ref-type="fig" rid="F13">Figure 13A</xref>, it can be useful to recall the notation of the vector components that represent the different responses. The subscript &#x2018;ns&#x2019; and &#x2018;<italic>m</italic>&#x2019; stands for &#x201c;numerical substructure&#x201d; and &#x201c;measured,&#x201d; respectively; when this subscript is absent, the variable represents the reference response (e.g., Eq. <xref ref-type="disp-formula" rid="e15">(15)</xref>). A &#x201c;hat&#x201d; over a variable indicates an estimated (or filtered) value. The next subscript (after a comma) represents the position in a vector (e.g., a specific DOF in the relative displacement vector <inline-formula id="inf56">
<mml:math id="m64">
<mml:mrow>
<mml:mi mathvariant="bold">&#x3c8;</mml:mi>
</mml:mrow>
</mml:math>
</inline-formula> of the reference frame or a specific actuator displacement in the vector <inline-formula id="inf57">
<mml:math id="m65">
<mml:mrow>
<mml:msub>
<mml:mi mathvariant="bold">&#x3b7;</mml:mi>
<mml:mi>m</mml:mi>
</mml:msub>
</mml:mrow>
</mml:math>
</inline-formula>). The variable &#x2018;<italic>k</italic>&#x2019; in brackets represents the discrete time sequence and &#x2018;<italic>N</italic>&#x2019; is the number of samples in the time series.</p>
<sec id="s3-7-1">
<title>3.7.1 Tracking control and estimation: assessment of numerical substructure and the plant responses</title>
<p>
<bold>J</bold>
<sub>1</sub>&#x2014;time delay (ms): Estimation of time delay in the controlled response is based on the quantification of the similarity between target and measured displacement time series. The cross correlation between a delayed and target signals provides a sequence that enables the estimation of the number of time steps that the delayed signal has to be shifted so that it provides the maximum correlation with respect to the target signal. Therefore, the arguments of the <italic>arg max</italic> function of the cross correlation between the actuator target displacement vector and actuator measured displacement vector computes this integer number, which is divided by the sampling frequency (or multiply by the time step) to determine the time delay:<disp-formula id="e9">
<mml:math id="m66">
<mml:mrow>
<mml:msub>
<mml:mi>J</mml:mi>
<mml:mrow>
<mml:mn>1</mml:mn>
<mml:mo>,</mml:mo>
<mml:mi>i</mml:mi>
</mml:mrow>
</mml:msub>
<mml:mo>&#x3d;</mml:mo>
<mml:munder>
<mml:mrow>
<mml:mi>arg</mml:mi>
<mml:mtext>&#x2009;</mml:mtext>
<mml:mi>max</mml:mi>
</mml:mrow>
<mml:mi>r</mml:mi>
</mml:munder>
<mml:mrow>
<mml:mfenced open="(" close=")" separators="|">
<mml:mrow>
<mml:mstyle displaystyle="true">
<mml:munderover>
<mml:mo>&#x2211;</mml:mo>
<mml:mrow>
<mml:mi>k</mml:mi>
<mml:mo>&#x3d;</mml:mo>
<mml:mn>1</mml:mn>
</mml:mrow>
<mml:mi>N</mml:mi>
</mml:munderover>
</mml:mstyle>
<mml:mrow>
<mml:msub>
<mml:mi>&#x3b7;</mml:mi>
<mml:mrow>
<mml:mtext>ns</mml:mtext>
<mml:mo>,</mml:mo>
<mml:mi>i</mml:mi>
</mml:mrow>
</mml:msub>
<mml:mrow>
<mml:mfenced open="[" close="]" separators="|">
<mml:mrow>
<mml:mi>k</mml:mi>
</mml:mrow>
</mml:mfenced>
</mml:mrow>
<mml:mo>&#x22c5;</mml:mo>
<mml:msub>
<mml:mi>&#x3b7;</mml:mi>
<mml:mrow>
<mml:mi>m</mml:mi>
<mml:mo>,</mml:mo>
<mml:mi>i</mml:mi>
</mml:mrow>
</mml:msub>
<mml:mrow>
<mml:mfenced open="[" close="]" separators="|">
<mml:mrow>
<mml:mi>k</mml:mi>
<mml:mo>&#x2212;</mml:mo>
<mml:mi>r</mml:mi>
</mml:mrow>
</mml:mfenced>
</mml:mrow>
</mml:mrow>
</mml:mrow>
</mml:mfenced>
</mml:mrow>
<mml:mo>&#xd7;</mml:mo>
<mml:mrow>
<mml:mn>1000</mml:mn>
<mml:mo>/</mml:mo>
<mml:msub>
<mml:mi>f</mml:mi>
<mml:mi>s</mml:mi>
</mml:msub>
</mml:mrow>
<mml:mo>,</mml:mo>
<mml:mi>i</mml:mi>
<mml:mo>&#x3d;</mml:mo>
<mml:mn>1,2</mml:mn>
<mml:mo>,</mml:mo>
</mml:mrow>
</mml:math>
<label>(9)</label>
</disp-formula>where <inline-formula id="inf58">
<mml:math id="m67">
<mml:mrow>
<mml:msub>
<mml:mi>&#x3b7;</mml:mi>
<mml:mrow>
<mml:mi>m</mml:mi>
<mml:mo>,</mml:mo>
<mml:mi>i</mml:mi>
</mml:mrow>
</mml:msub>
<mml:mrow>
<mml:mfenced open="[" close="]" separators="|">
<mml:mrow>
<mml:mi>k</mml:mi>
</mml:mrow>
</mml:mfenced>
</mml:mrow>
</mml:mrow>
</mml:math>
</inline-formula> and <inline-formula id="inf59">
<mml:math id="m68">
<mml:mrow>
<mml:msub>
<mml:mi>&#x3b7;</mml:mi>
<mml:mrow>
<mml:mtext>ns</mml:mtext>
<mml:mo>,</mml:mo>
<mml:mi>i</mml:mi>
</mml:mrow>
</mml:msub>
<mml:mrow>
<mml:mfenced open="[" close="]" separators="|">
<mml:mrow>
<mml:mi>k</mml:mi>
</mml:mrow>
</mml:mfenced>
</mml:mrow>
</mml:mrow>
</mml:math>
</inline-formula> are the <italic>i</italic>-th elements of the vectors <inline-formula id="inf60">
<mml:math id="m69">
<mml:mrow>
<mml:msub>
<mml:mi mathvariant="bold">&#x3b7;</mml:mi>
<mml:mi>m</mml:mi>
</mml:msub>
<mml:mo>&#x3d;</mml:mo>
<mml:msup>
<mml:mrow>
<mml:mfenced open="[" close="]" separators="|">
<mml:mrow>
<mml:msub>
<mml:mi>&#x3b7;</mml:mi>
<mml:mrow>
<mml:mi>m</mml:mi>
<mml:mo>,</mml:mo>
<mml:mn>1</mml:mn>
</mml:mrow>
</mml:msub>
<mml:mtext>&#x2009;</mml:mtext>
<mml:msub>
<mml:mi>&#x3b7;</mml:mi>
<mml:mrow>
<mml:mi>m</mml:mi>
<mml:mo>,</mml:mo>
<mml:mn>2</mml:mn>
</mml:mrow>
</mml:msub>
</mml:mrow>
</mml:mfenced>
</mml:mrow>
<mml:mi>T</mml:mi>
</mml:msup>
</mml:mrow>
</mml:math>
</inline-formula> and <inline-formula id="inf61">
<mml:math id="m70">
<mml:mrow>
<mml:msub>
<mml:mi mathvariant="bold">&#x3b7;</mml:mi>
<mml:mtext>ns</mml:mtext>
</mml:msub>
<mml:mo>&#x3d;</mml:mo>
<mml:msup>
<mml:mrow>
<mml:mfenced open="[" close="]" separators="|">
<mml:mrow>
<mml:msub>
<mml:mi>&#x3b7;</mml:mi>
<mml:mrow>
<mml:mtext>ns</mml:mtext>
<mml:mo>,</mml:mo>
<mml:mn>1</mml:mn>
</mml:mrow>
</mml:msub>
<mml:mtext>&#x2009;</mml:mtext>
<mml:msub>
<mml:mi>&#x3b7;</mml:mi>
<mml:mrow>
<mml:mtext>ns</mml:mtext>
<mml:mo>,</mml:mo>
<mml:mn>2</mml:mn>
</mml:mrow>
</mml:msub>
</mml:mrow>
</mml:mfenced>
</mml:mrow>
<mml:mi>T</mml:mi>
</mml:msup>
</mml:mrow>
</mml:math>
</inline-formula>, respectively at a specific time step <italic>k</italic>. <inline-formula id="inf62">
<mml:math id="m71">
<mml:mrow>
<mml:msub>
<mml:mi mathvariant="bold">J</mml:mi>
<mml:mn>1</mml:mn>
</mml:msub>
<mml:mo>&#x3d;</mml:mo>
<mml:msup>
<mml:mrow>
<mml:mfenced open="[" close="]" separators="|">
<mml:mrow>
<mml:mtable columnalign="center">
<mml:mtr>
<mml:mtd>
<mml:msub>
<mml:mi>J</mml:mi>
<mml:mn>1,1</mml:mn>
</mml:msub>
</mml:mtd>
<mml:mtd>
<mml:msub>
<mml:mi>J</mml:mi>
<mml:mn>1,2</mml:mn>
</mml:msub>
</mml:mtd>
</mml:mtr>
</mml:mtable>
</mml:mrow>
</mml:mfenced>
</mml:mrow>
<mml:mi>T</mml:mi>
</mml:msup>
</mml:mrow>
</mml:math>
</inline-formula> contains the indices for the two actuators; <inline-formula id="inf63">
<mml:math id="m72">
<mml:mrow>
<mml:msub>
<mml:mi>f</mml:mi>
<mml:mi>s</mml:mi>
</mml:msub>
</mml:mrow>
</mml:math>
</inline-formula> is the sampling frequency.</p>
<p>
<bold>J</bold>
<sub>2</sub>&#x2014;tracking error (%): This index processes the normalized root mean square (NRMS) of the error between the actuator target displacement vector and the actuator measured displacement vector:<disp-formula id="e10">
<mml:math id="m73">
<mml:mrow>
<mml:msub>
<mml:mi>J</mml:mi>
<mml:mrow>
<mml:mn>2</mml:mn>
<mml:mo>,</mml:mo>
<mml:mi>i</mml:mi>
</mml:mrow>
</mml:msub>
<mml:mo>&#x3d;</mml:mo>
<mml:msqrt>
<mml:mfrac>
<mml:mrow>
<mml:munderover>
<mml:mo>&#x2211;</mml:mo>
<mml:mrow>
<mml:mi>k</mml:mi>
<mml:mo>&#x3d;</mml:mo>
<mml:mn>1</mml:mn>
</mml:mrow>
<mml:mi>N</mml:mi>
</mml:munderover>
<mml:msup>
<mml:mrow>
<mml:mfenced open="(" close=")" separators="|">
<mml:mrow>
<mml:msub>
<mml:mi>&#x3b7;</mml:mi>
<mml:mrow>
<mml:mi>m</mml:mi>
<mml:mo>,</mml:mo>
<mml:mi>i</mml:mi>
</mml:mrow>
</mml:msub>
<mml:mrow>
<mml:mfenced open="[" close="]" separators="|">
<mml:mrow>
<mml:mi>k</mml:mi>
</mml:mrow>
</mml:mfenced>
</mml:mrow>
<mml:mo>&#x2212;</mml:mo>
<mml:msub>
<mml:mi>&#x3b7;</mml:mi>
<mml:mrow>
<mml:mtext>ns</mml:mtext>
<mml:mo>,</mml:mo>
<mml:mi>i</mml:mi>
</mml:mrow>
</mml:msub>
<mml:mrow>
<mml:mfenced open="[" close="]" separators="|">
<mml:mrow>
<mml:mi>k</mml:mi>
</mml:mrow>
</mml:mfenced>
</mml:mrow>
</mml:mrow>
</mml:mfenced>
</mml:mrow>
<mml:mn>2</mml:mn>
</mml:msup>
</mml:mrow>
<mml:mrow>
<mml:munderover>
<mml:mo>&#x2211;</mml:mo>
<mml:mrow>
<mml:mi>k</mml:mi>
<mml:mo>&#x3d;</mml:mo>
<mml:mn>1</mml:mn>
</mml:mrow>
<mml:mi>N</mml:mi>
</mml:munderover>
<mml:msup>
<mml:mrow>
<mml:mfenced open="(" close=")" separators="|">
<mml:mrow>
<mml:msub>
<mml:mi>&#x3b7;</mml:mi>
<mml:mrow>
<mml:mtext>ns</mml:mtext>
<mml:mo>,</mml:mo>
<mml:mi>i</mml:mi>
</mml:mrow>
</mml:msub>
<mml:mrow>
<mml:mfenced open="[" close="]" separators="|">
<mml:mrow>
<mml:mi>k</mml:mi>
</mml:mrow>
</mml:mfenced>
</mml:mrow>
</mml:mrow>
</mml:mfenced>
</mml:mrow>
<mml:mn>2</mml:mn>
</mml:msup>
</mml:mrow>
</mml:mfrac>
</mml:msqrt>
<mml:mo>&#xd7;</mml:mo>
<mml:mn>100</mml:mn>
<mml:mo>,</mml:mo>
<mml:mi>i</mml:mi>
<mml:mo>&#x3d;</mml:mo>
<mml:mn>1,2</mml:mn>
<mml:mo>.</mml:mo>
</mml:mrow>
</mml:math>
<label>(10)</label>
</disp-formula>
</p>
<p>
<bold>J</bold>
<sub>3</sub>&#x2014;peak tracking error (%): This index computes the maximum relative error between the actuator target displacement vector and the actuator measured displacement vector:<disp-formula id="e11">
<mml:math id="m74">
<mml:mrow>
<mml:msub>
<mml:mi>J</mml:mi>
<mml:mrow>
<mml:mn>3</mml:mn>
<mml:mo>,</mml:mo>
<mml:mi>i</mml:mi>
</mml:mrow>
</mml:msub>
<mml:mo>&#x3d;</mml:mo>
<mml:mfrac>
<mml:mrow>
<mml:mi>max</mml:mi>
<mml:mrow>
<mml:mfenced open="(" close=")" separators="|">
<mml:mrow>
<mml:mfenced open="|" close="|" separators="|">
<mml:mrow>
<mml:msub>
<mml:mi>&#x3b7;</mml:mi>
<mml:mrow>
<mml:mi>m</mml:mi>
<mml:mo>,</mml:mo>
<mml:mi>i</mml:mi>
</mml:mrow>
</mml:msub>
<mml:mrow>
<mml:mfenced open="[" close="]" separators="|">
<mml:mrow>
<mml:mi>k</mml:mi>
</mml:mrow>
</mml:mfenced>
</mml:mrow>
<mml:mo>&#x2212;</mml:mo>
<mml:msub>
<mml:mi>&#x3b7;</mml:mi>
<mml:mrow>
<mml:mtext>ns</mml:mtext>
<mml:mo>,</mml:mo>
<mml:mi>i</mml:mi>
</mml:mrow>
</mml:msub>
<mml:mrow>
<mml:mfenced open="[" close="]" separators="|">
<mml:mrow>
<mml:mi>k</mml:mi>
</mml:mrow>
</mml:mfenced>
</mml:mrow>
</mml:mrow>
</mml:mfenced>
</mml:mrow>
</mml:mfenced>
</mml:mrow>
</mml:mrow>
<mml:mrow>
<mml:mi>max</mml:mi>
<mml:mrow>
<mml:mfenced open="(" close=")" separators="|">
<mml:mrow>
<mml:mfenced open="|" close="|" separators="|">
<mml:mrow>
<mml:msub>
<mml:mi>&#x3b7;</mml:mi>
<mml:mrow>
<mml:mtext>ns</mml:mtext>
<mml:mo>,</mml:mo>
<mml:mi>i</mml:mi>
</mml:mrow>
</mml:msub>
<mml:mrow>
<mml:mfenced open="[" close="]" separators="|">
<mml:mrow>
<mml:mi>k</mml:mi>
</mml:mrow>
</mml:mfenced>
</mml:mrow>
</mml:mrow>
</mml:mfenced>
</mml:mrow>
</mml:mfenced>
</mml:mrow>
</mml:mrow>
</mml:mfrac>
<mml:mo>&#xd7;</mml:mo>
<mml:mn>100</mml:mn>
<mml:mo>,</mml:mo>
<mml:mi>i</mml:mi>
<mml:mo>&#x3d;</mml:mo>
<mml:mn>1,2</mml:mn>
<mml:mo>.</mml:mo>
</mml:mrow>
</mml:math>
<label>(11)</label>
</disp-formula>
</p>
<p>
<bold>J</bold>
<sub>4</sub>&#x2014;time delay of estimated response (ms): Similar to <inline-formula id="inf64">
<mml:math id="m75">
<mml:mrow>
<mml:msub>
<mml:mi mathvariant="bold">J</mml:mi>
<mml:mn>1</mml:mn>
</mml:msub>
</mml:mrow>
</mml:math>
</inline-formula>, this index assesses the time delay between the actuator target displacement vector, <inline-formula id="inf65">
<mml:math id="m76">
<mml:mrow>
<mml:msub>
<mml:mi mathvariant="bold">&#x3b7;</mml:mi>
<mml:mtext>ns</mml:mtext>
</mml:msub>
</mml:mrow>
</mml:math>
</inline-formula>, and the actuator estimated displacement vector, <inline-formula id="inf66">
<mml:math id="m77">
<mml:mrow>
<mml:msub>
<mml:mover accent="true">
<mml:mi mathvariant="bold">&#x3b7;</mml:mi>
<mml:mo>&#x5e;</mml:mo>
</mml:mover>
<mml:mi>m</mml:mi>
</mml:msub>
</mml:mrow>
</mml:math>
</inline-formula>.<disp-formula id="e12">
<mml:math id="m78">
<mml:mrow>
<mml:msub>
<mml:mi>J</mml:mi>
<mml:mrow>
<mml:mn>4</mml:mn>
<mml:mo>,</mml:mo>
<mml:mi>i</mml:mi>
</mml:mrow>
</mml:msub>
<mml:mo>&#x3d;</mml:mo>
<mml:munder>
<mml:mrow>
<mml:mi>arg</mml:mi>
<mml:mtext>&#x2009;</mml:mtext>
<mml:mi>max</mml:mi>
</mml:mrow>
<mml:mi>r</mml:mi>
</mml:munder>
<mml:mrow>
<mml:mfenced open="(" close=")" separators="|">
<mml:mrow>
<mml:mstyle displaystyle="true">
<mml:munderover>
<mml:mo>&#x2211;</mml:mo>
<mml:mrow>
<mml:mi>k</mml:mi>
<mml:mo>&#x3d;</mml:mo>
<mml:mn>1</mml:mn>
</mml:mrow>
<mml:mi>N</mml:mi>
</mml:munderover>
</mml:mstyle>
<mml:mrow>
<mml:msub>
<mml:mi>&#x3b7;</mml:mi>
<mml:mrow>
<mml:mtext>ns</mml:mtext>
<mml:mo>,</mml:mo>
<mml:mi>i</mml:mi>
</mml:mrow>
</mml:msub>
<mml:mrow>
<mml:mfenced open="[" close="]" separators="|">
<mml:mrow>
<mml:mi>k</mml:mi>
</mml:mrow>
</mml:mfenced>
</mml:mrow>
<mml:mo>&#x22c5;</mml:mo>
<mml:msub>
<mml:mover accent="true">
<mml:mi>&#x3b7;</mml:mi>
<mml:mo>&#x5e;</mml:mo>
</mml:mover>
<mml:mrow>
<mml:mi>m</mml:mi>
<mml:mo>,</mml:mo>
<mml:mi>i</mml:mi>
</mml:mrow>
</mml:msub>
<mml:mrow>
<mml:mfenced open="[" close="]" separators="|">
<mml:mrow>
<mml:mi>k</mml:mi>
<mml:mo>&#x2212;</mml:mo>
<mml:mi>r</mml:mi>
</mml:mrow>
</mml:mfenced>
</mml:mrow>
</mml:mrow>
</mml:mrow>
</mml:mfenced>
</mml:mrow>
<mml:mo>&#xd7;</mml:mo>
<mml:mrow>
<mml:mn>1000</mml:mn>
<mml:mo>/</mml:mo>
<mml:msub>
<mml:mi>f</mml:mi>
<mml:mi>s</mml:mi>
</mml:msub>
</mml:mrow>
<mml:mo>,</mml:mo>
<mml:mi>i</mml:mi>
<mml:mo>&#x3d;</mml:mo>
<mml:mn>1,2</mml:mn>
<mml:mo>,</mml:mo>
</mml:mrow>
</mml:math>
<label>(12)</label>
</disp-formula>
</p>
<p>
<bold>J</bold>
<sub>5</sub>&#x2014;estimation error (%): This index considers the NRMS of the error between the target displacement vector and the estimated measured displacement vector <italic>at the interface node of the frame</italic> (node 4, see <xref ref-type="fig" rid="F6">Figure 6</xref>):<disp-formula id="e13">
<mml:math id="m79">
<mml:mrow>
<mml:msub>
<mml:mi>J</mml:mi>
<mml:mrow>
<mml:mn>5</mml:mn>
<mml:mo>,</mml:mo>
<mml:mi>i</mml:mi>
</mml:mrow>
</mml:msub>
<mml:mo>&#x3d;</mml:mo>
<mml:msqrt>
<mml:mfrac>
<mml:mrow>
<mml:munderover>
<mml:mo>&#x2211;</mml:mo>
<mml:mrow>
<mml:mi>k</mml:mi>
<mml:mo>&#x3d;</mml:mo>
<mml:mn>1</mml:mn>
</mml:mrow>
<mml:mi>N</mml:mi>
</mml:munderover>
<mml:msup>
<mml:mrow>
<mml:mfenced open="(" close=")" separators="|">
<mml:mrow>
<mml:msub>
<mml:mover accent="true">
<mml:mi>&#x3c8;</mml:mi>
<mml:mo>&#x5e;</mml:mo>
</mml:mover>
<mml:mrow>
<mml:mi>m</mml:mi>
<mml:mo>,</mml:mo>
<mml:mi>i</mml:mi>
</mml:mrow>
</mml:msub>
<mml:mrow>
<mml:mfenced open="[" close="]" separators="|">
<mml:mrow>
<mml:mi>k</mml:mi>
</mml:mrow>
</mml:mfenced>
</mml:mrow>
<mml:mo>&#x2212;</mml:mo>
<mml:msub>
<mml:mi>&#x3c8;</mml:mi>
<mml:mrow>
<mml:mtext>ns</mml:mtext>
<mml:mo>,</mml:mo>
<mml:mi>i</mml:mi>
</mml:mrow>
</mml:msub>
<mml:mrow>
<mml:mfenced open="[" close="]" separators="|">
<mml:mrow>
<mml:mi>k</mml:mi>
</mml:mrow>
</mml:mfenced>
</mml:mrow>
</mml:mrow>
</mml:mfenced>
</mml:mrow>
<mml:mn>2</mml:mn>
</mml:msup>
</mml:mrow>
<mml:mrow>
<mml:munderover>
<mml:mo>&#x2211;</mml:mo>
<mml:mrow>
<mml:mi>k</mml:mi>
<mml:mo>&#x3d;</mml:mo>
<mml:mn>1</mml:mn>
</mml:mrow>
<mml:mi>N</mml:mi>
</mml:munderover>
<mml:msup>
<mml:mrow>
<mml:mfenced open="(" close=")" separators="|">
<mml:mrow>
<mml:msub>
<mml:mi>&#x3c8;</mml:mi>
<mml:mrow>
<mml:mtext>ns</mml:mtext>
<mml:mo>,</mml:mo>
<mml:mi>i</mml:mi>
</mml:mrow>
</mml:msub>
<mml:mrow>
<mml:mfenced open="[" close="]" separators="|">
<mml:mrow>
<mml:mi>k</mml:mi>
</mml:mrow>
</mml:mfenced>
</mml:mrow>
</mml:mrow>
</mml:mfenced>
</mml:mrow>
<mml:mn>2</mml:mn>
</mml:msup>
</mml:mrow>
</mml:mfrac>
</mml:msqrt>
<mml:mo>&#xd7;</mml:mo>
<mml:mn>100</mml:mn>
<mml:mo>,</mml:mo>
<mml:mi>i</mml:mi>
<mml:mo>&#x3d;</mml:mo>
<mml:mn>4,28</mml:mn>
<mml:mo>,</mml:mo>
</mml:mrow>
</mml:math>
<label>(13)</label>
</disp-formula>where <inline-formula id="inf67">
<mml:math id="m80">
<mml:mrow>
<mml:msub>
<mml:mover accent="true">
<mml:mi>&#x3c8;</mml:mi>
<mml:mo>&#x5e;</mml:mo>
</mml:mover>
<mml:mrow>
<mml:mi>m</mml:mi>
<mml:mo>,</mml:mo>
<mml:mi>i</mml:mi>
</mml:mrow>
</mml:msub>
</mml:mrow>
</mml:math>
</inline-formula> and <inline-formula id="inf68">
<mml:math id="m81">
<mml:mrow>
<mml:msub>
<mml:mi>&#x3c8;</mml:mi>
<mml:mrow>
<mml:mtext>ns</mml:mtext>
<mml:mo>,</mml:mo>
<mml:mi>i</mml:mi>
</mml:mrow>
</mml:msub>
</mml:mrow>
</mml:math>
</inline-formula> represent the estimated measured response and the target displacement (numerical substructure response) of the <italic>i</italic>-th DOF of the FE model at a specific time step <italic>k</italic>. See <xref ref-type="fig" rid="F6">Figure 6</xref>.</p>
<p>The difference between indices <inline-formula id="inf69">
<mml:math id="m82">
<mml:mrow>
<mml:msub>
<mml:mi mathvariant="bold">J</mml:mi>
<mml:mn>5</mml:mn>
</mml:msub>
</mml:mrow>
</mml:math>
</inline-formula> and <inline-formula id="inf70">
<mml:math id="m83">
<mml:mrow>
<mml:msub>
<mml:mi mathvariant="bold">J</mml:mi>
<mml:mn>2</mml:mn>
</mml:msub>
</mml:mrow>
</mml:math>
</inline-formula> when <inline-formula id="inf71">
<mml:math id="m84">
<mml:mrow>
<mml:msub>
<mml:mi>&#x3b7;</mml:mi>
<mml:mrow>
<mml:mi>m</mml:mi>
<mml:mo>,</mml:mo>
<mml:mi>i</mml:mi>
</mml:mrow>
</mml:msub>
<mml:mrow>
<mml:mfenced open="[" close="]" separators="|">
<mml:mrow>
<mml:mi>k</mml:mi>
</mml:mrow>
</mml:mfenced>
</mml:mrow>
</mml:mrow>
</mml:math>
</inline-formula> is replaced by <inline-formula id="inf72">
<mml:math id="m85">
<mml:mrow>
<mml:msub>
<mml:mover accent="true">
<mml:mi>&#x3b7;</mml:mi>
<mml:mo>&#x5e;</mml:mo>
</mml:mover>
<mml:mrow>
<mml:mi>m</mml:mi>
<mml:mo>,</mml:mo>
<mml:mi>i</mml:mi>
</mml:mrow>
</mml:msub>
<mml:mrow>
<mml:mfenced open="[" close="]" separators="|">
<mml:mrow>
<mml:mi>k</mml:mi>
</mml:mrow>
</mml:mfenced>
</mml:mrow>
</mml:mrow>
</mml:math>
</inline-formula> in Eq. <xref ref-type="disp-formula" rid="e10">(10)</xref> represents to some extent the error due to the assumptions described in Sections 3.5 and 4.3.</p>
<p>
<bold>J</bold>
<sub>6</sub>&#x2014;peak estimation error (%): This index computes the maximum relative error between the target displacement vector and the estimated measured displacement vector at the interface node of the frame:<disp-formula id="e14">
<mml:math id="m86">
<mml:mrow>
<mml:msub>
<mml:mi>J</mml:mi>
<mml:mrow>
<mml:mn>6</mml:mn>
<mml:mo>,</mml:mo>
<mml:mi>i</mml:mi>
</mml:mrow>
</mml:msub>
<mml:mo>&#x3d;</mml:mo>
<mml:mfrac>
<mml:mrow>
<mml:mi>max</mml:mi>
<mml:mrow>
<mml:mfenced open="(" close=")" separators="|">
<mml:mrow>
<mml:mfenced open="|" close="|" separators="|">
<mml:mrow>
<mml:msub>
<mml:mover accent="true">
<mml:mi>&#x3c8;</mml:mi>
<mml:mo>&#x5e;</mml:mo>
</mml:mover>
<mml:mrow>
<mml:mi>m</mml:mi>
<mml:mo>,</mml:mo>
<mml:mi>i</mml:mi>
</mml:mrow>
</mml:msub>
<mml:mrow>
<mml:mfenced open="[" close="]" separators="|">
<mml:mrow>
<mml:mi>k</mml:mi>
</mml:mrow>
</mml:mfenced>
</mml:mrow>
<mml:mo>&#x2212;</mml:mo>
<mml:msub>
<mml:mi>&#x3c8;</mml:mi>
<mml:mrow>
<mml:mtext>ns</mml:mtext>
<mml:mo>,</mml:mo>
<mml:mi>i</mml:mi>
</mml:mrow>
</mml:msub>
<mml:mrow>
<mml:mfenced open="[" close="]" separators="|">
<mml:mrow>
<mml:mi>k</mml:mi>
</mml:mrow>
</mml:mfenced>
</mml:mrow>
</mml:mrow>
</mml:mfenced>
</mml:mrow>
</mml:mfenced>
</mml:mrow>
</mml:mrow>
<mml:mrow>
<mml:mi>max</mml:mi>
<mml:mrow>
<mml:mfenced open="(" close=")" separators="|">
<mml:mrow>
<mml:mfenced open="|" close="|" separators="|">
<mml:mrow>
<mml:msub>
<mml:mi>&#x3c8;</mml:mi>
<mml:mrow>
<mml:mtext>ns</mml:mtext>
<mml:mo>,</mml:mo>
<mml:mi>i</mml:mi>
</mml:mrow>
</mml:msub>
<mml:mrow>
<mml:mfenced open="[" close="]" separators="|">
<mml:mrow>
<mml:mi>k</mml:mi>
</mml:mrow>
</mml:mfenced>
</mml:mrow>
</mml:mrow>
</mml:mfenced>
</mml:mrow>
</mml:mfenced>
</mml:mrow>
</mml:mrow>
</mml:mfrac>
<mml:mo>&#xd7;</mml:mo>
<mml:mn>100</mml:mn>
<mml:mo>,</mml:mo>
<mml:mi>i</mml:mi>
<mml:mo>&#x3d;</mml:mo>
<mml:mn>4,28</mml:mn>
<mml:mo>.</mml:mo>
</mml:mrow>
</mml:math>
<label>(14)</label>
</disp-formula>
</p>
</sec>
<sec id="s3-7-2">
<title>3.7.2 Global performance: assessment of the RTHS response with respect to the reference structure</title>
<p>
<bold>J</bold>
<sub>7</sub>&#x2014;global response error at interface node (%): This index assesses the difference between the response of the reference structure and the hybrid system (vRTHS or RTHS). It computes the NMRS error between the reference response and the estimated measured response of the frame at the node interface.<disp-formula id="e15">
<mml:math id="m87">
<mml:mrow>
<mml:msub>
<mml:mi>J</mml:mi>
<mml:mrow>
<mml:mn>7</mml:mn>
<mml:mo>,</mml:mo>
<mml:mi>i</mml:mi>
</mml:mrow>
</mml:msub>
<mml:mo>&#x3d;</mml:mo>
<mml:msqrt>
<mml:mfrac>
<mml:mrow>
<mml:munderover>
<mml:mo>&#x2211;</mml:mo>
<mml:mrow>
<mml:mi>k</mml:mi>
<mml:mo>&#x3d;</mml:mo>
<mml:mn>1</mml:mn>
</mml:mrow>
<mml:mi>N</mml:mi>
</mml:munderover>
<mml:msup>
<mml:mrow>
<mml:mfenced open="(" close=")" separators="|">
<mml:mrow>
<mml:msub>
<mml:mover accent="true">
<mml:mi>&#x3c8;</mml:mi>
<mml:mo>&#x5e;</mml:mo>
</mml:mover>
<mml:mrow>
<mml:mi>m</mml:mi>
<mml:mo>,</mml:mo>
<mml:mi>i</mml:mi>
</mml:mrow>
</mml:msub>
<mml:mrow>
<mml:mfenced open="[" close="]" separators="|">
<mml:mrow>
<mml:mi>k</mml:mi>
</mml:mrow>
</mml:mfenced>
</mml:mrow>
<mml:mo>&#x2212;</mml:mo>
<mml:msub>
<mml:mi>&#x3c8;</mml:mi>
<mml:mi>i</mml:mi>
</mml:msub>
<mml:mrow>
<mml:mfenced open="[" close="]" separators="|">
<mml:mrow>
<mml:mi>k</mml:mi>
</mml:mrow>
</mml:mfenced>
</mml:mrow>
</mml:mrow>
</mml:mfenced>
</mml:mrow>
<mml:mn>2</mml:mn>
</mml:msup>
</mml:mrow>
<mml:mrow>
<mml:munderover>
<mml:mo>&#x2211;</mml:mo>
<mml:mrow>
<mml:mi>k</mml:mi>
<mml:mo>&#x3d;</mml:mo>
<mml:mn>1</mml:mn>
</mml:mrow>
<mml:mi>N</mml:mi>
</mml:munderover>
<mml:msup>
<mml:mrow>
<mml:mfenced open="(" close=")" separators="|">
<mml:mrow>
<mml:msub>
<mml:mi>&#x3c8;</mml:mi>
<mml:mi>i</mml:mi>
</mml:msub>
<mml:mrow>
<mml:mfenced open="[" close="]" separators="|">
<mml:mrow>
<mml:mi>k</mml:mi>
</mml:mrow>
</mml:mfenced>
</mml:mrow>
</mml:mrow>
</mml:mfenced>
</mml:mrow>
<mml:mn>2</mml:mn>
</mml:msup>
</mml:mrow>
</mml:mfrac>
</mml:msqrt>
<mml:mo>&#xd7;</mml:mo>
<mml:mn>100</mml:mn>
<mml:mo>,</mml:mo>
<mml:mi>i</mml:mi>
<mml:mo>&#x3d;</mml:mo>
<mml:mn>4,28</mml:mn>
<mml:mo>,</mml:mo>
</mml:mrow>
</mml:math>
<label>(15)</label>
</disp-formula>where <inline-formula id="inf73">
<mml:math id="m88">
<mml:mrow>
<mml:msub>
<mml:mi>&#x3c8;</mml:mi>
<mml:mi>i</mml:mi>
</mml:msub>
<mml:mrow>
<mml:mfenced open="[" close="]" separators="|">
<mml:mrow>
<mml:mi>k</mml:mi>
</mml:mrow>
</mml:mfenced>
</mml:mrow>
</mml:mrow>
</mml:math>
</inline-formula> represent the reference response corresponding to the <italic>i</italic>-th DOF of the reference model.</p>
<p>
<bold>J</bold>
<sub>8</sub>&#x2014;global relative response error at upper stories (%): The response errors in the upper stories are evaluated by considering nodes 2 and 3 of the frame model, see <xref ref-type="fig" rid="F6">Figure 6</xref>. Therefore, the NMRS error is calculated between the relative response of the reference structure and numerical substructure at their respective nodes for the translational and rotational DOF, <italic>x</italic> and <italic>&#x3b8;</italic>.<disp-formula id="e16">
<mml:math id="m89">
<mml:mrow>
<mml:msub>
<mml:mi>J</mml:mi>
<mml:mrow>
<mml:mn>8</mml:mn>
<mml:mo>,</mml:mo>
<mml:mi>i</mml:mi>
</mml:mrow>
</mml:msub>
<mml:mo>&#x3d;</mml:mo>
<mml:msqrt>
<mml:mfrac>
<mml:mrow>
<mml:munderover>
<mml:mo>&#x2211;</mml:mo>
<mml:mrow>
<mml:mi>k</mml:mi>
<mml:mo>&#x3d;</mml:mo>
<mml:mn>1</mml:mn>
</mml:mrow>
<mml:mi>N</mml:mi>
</mml:munderover>
<mml:msup>
<mml:mrow>
<mml:mfenced open="(" close=")" separators="|">
<mml:mrow>
<mml:msub>
<mml:mi>&#x3c8;</mml:mi>
<mml:mrow>
<mml:mtext>ns</mml:mtext>
<mml:mo>,</mml:mo>
<mml:mi>i</mml:mi>
</mml:mrow>
</mml:msub>
<mml:mrow>
<mml:mfenced open="[" close="]" separators="|">
<mml:mrow>
<mml:mi>k</mml:mi>
</mml:mrow>
</mml:mfenced>
</mml:mrow>
<mml:mo>&#x2212;</mml:mo>
<mml:msub>
<mml:mi>&#x3c8;</mml:mi>
<mml:mi>i</mml:mi>
</mml:msub>
<mml:mrow>
<mml:mfenced open="[" close="]" separators="|">
<mml:mrow>
<mml:mi>k</mml:mi>
</mml:mrow>
</mml:mfenced>
</mml:mrow>
</mml:mrow>
</mml:mfenced>
</mml:mrow>
<mml:mn>2</mml:mn>
</mml:msup>
</mml:mrow>
<mml:mrow>
<mml:munderover>
<mml:mo>&#x2211;</mml:mo>
<mml:mrow>
<mml:mi>k</mml:mi>
<mml:mo>&#x3d;</mml:mo>
<mml:mn>1</mml:mn>
</mml:mrow>
<mml:mi>N</mml:mi>
</mml:munderover>
<mml:msup>
<mml:mrow>
<mml:mfenced open="(" close=")" separators="|">
<mml:mrow>
<mml:msub>
<mml:mi>&#x3c8;</mml:mi>
<mml:mi>i</mml:mi>
</mml:msub>
<mml:mrow>
<mml:mfenced open="[" close="]" separators="|">
<mml:mrow>
<mml:mi>k</mml:mi>
</mml:mrow>
</mml:mfenced>
</mml:mrow>
</mml:mrow>
</mml:mfenced>
</mml:mrow>
<mml:mn>2</mml:mn>
</mml:msup>
</mml:mrow>
</mml:mfrac>
</mml:msqrt>
<mml:mo>&#xd7;</mml:mo>
<mml:mn>100</mml:mn>
<mml:mo>,</mml:mo>
<mml:mi>i</mml:mi>
<mml:mo>&#x3d;</mml:mo>
<mml:mn>2,26,3,27</mml:mn>
<mml:mo>.</mml:mo>
</mml:mrow>
</mml:math>
<label>(16)</label>
</disp-formula>
</p>
<p>
<bold>J</bold>
<sub>9</sub>&#x2014;peak global response error at interface node (%): This index evaluates the maximum error between the reference response and the estimated measured response at the interface node of the frame:<disp-formula id="e17">
<mml:math id="m90">
<mml:mrow>
<mml:msub>
<mml:mi>J</mml:mi>
<mml:mrow>
<mml:mn>9</mml:mn>
<mml:mo>,</mml:mo>
<mml:mi>i</mml:mi>
</mml:mrow>
</mml:msub>
<mml:mo>&#x3d;</mml:mo>
<mml:mfrac>
<mml:mrow>
<mml:mi>max</mml:mi>
<mml:mrow>
<mml:mfenced open="(" close=")" separators="|">
<mml:mrow>
<mml:mfenced open="|" close="|" separators="|">
<mml:mrow>
<mml:msub>
<mml:mover accent="true">
<mml:mi>&#x3c8;</mml:mi>
<mml:mo>&#x5e;</mml:mo>
</mml:mover>
<mml:mrow>
<mml:mi>m</mml:mi>
<mml:mo>,</mml:mo>
<mml:mi>i</mml:mi>
</mml:mrow>
</mml:msub>
<mml:mrow>
<mml:mfenced open="[" close="]" separators="|">
<mml:mrow>
<mml:mi>k</mml:mi>
</mml:mrow>
</mml:mfenced>
</mml:mrow>
<mml:mo>&#x2212;</mml:mo>
<mml:msub>
<mml:mi>&#x3c8;</mml:mi>
<mml:mi>i</mml:mi>
</mml:msub>
<mml:mrow>
<mml:mfenced open="[" close="]" separators="|">
<mml:mrow>
<mml:mi>k</mml:mi>
</mml:mrow>
</mml:mfenced>
</mml:mrow>
</mml:mrow>
</mml:mfenced>
</mml:mrow>
</mml:mfenced>
</mml:mrow>
</mml:mrow>
<mml:mrow>
<mml:mi>max</mml:mi>
<mml:mrow>
<mml:mfenced open="(" close=")" separators="|">
<mml:mrow>
<mml:mfenced open="|" close="|" separators="|">
<mml:mrow>
<mml:msub>
<mml:mi>&#x3c8;</mml:mi>
<mml:mi>i</mml:mi>
</mml:msub>
<mml:mrow>
<mml:mfenced open="[" close="]" separators="|">
<mml:mrow>
<mml:mi>k</mml:mi>
</mml:mrow>
</mml:mfenced>
</mml:mrow>
</mml:mrow>
</mml:mfenced>
</mml:mrow>
</mml:mfenced>
</mml:mrow>
</mml:mrow>
</mml:mfrac>
<mml:mo>&#xd7;</mml:mo>
<mml:mn>100</mml:mn>
<mml:mo>,</mml:mo>
<mml:mi>i</mml:mi>
<mml:mo>&#x3d;</mml:mo>
<mml:mn>4,28</mml:mn>
<mml:mo>.</mml:mo>
</mml:mrow>
</mml:math>
<label>(17)</label>
</disp-formula>
</p>
<p>
<bold>J</bold>
<sub>10</sub>&#x2014;peak global response error at upper stories (%): This index computes the maximum error between the relative displacement of the reference structure and numerical substructure at nodes of the frame:<disp-formula id="e18">
<mml:math id="m91">
<mml:mrow>
<mml:msub>
<mml:mi>J</mml:mi>
<mml:mrow>
<mml:mn>10</mml:mn>
<mml:mo>,</mml:mo>
<mml:mi>i</mml:mi>
</mml:mrow>
</mml:msub>
<mml:mo>&#x3d;</mml:mo>
<mml:mfrac>
<mml:mrow>
<mml:mi>max</mml:mi>
<mml:mrow>
<mml:mfenced open="(" close=")" separators="|">
<mml:mrow>
<mml:mfenced open="|" close="|" separators="|">
<mml:mrow>
<mml:msub>
<mml:mover accent="true">
<mml:mi>&#x3c8;</mml:mi>
<mml:mo>&#x5e;</mml:mo>
</mml:mover>
<mml:mrow>
<mml:mtext>ns</mml:mtext>
<mml:mo>,</mml:mo>
<mml:mi>i</mml:mi>
</mml:mrow>
</mml:msub>
<mml:mrow>
<mml:mfenced open="[" close="]" separators="|">
<mml:mrow>
<mml:mi>k</mml:mi>
</mml:mrow>
</mml:mfenced>
</mml:mrow>
<mml:mo>&#x2212;</mml:mo>
<mml:msub>
<mml:mi>&#x3c8;</mml:mi>
<mml:mi>i</mml:mi>
</mml:msub>
<mml:mrow>
<mml:mfenced open="[" close="]" separators="|">
<mml:mrow>
<mml:mi>k</mml:mi>
</mml:mrow>
</mml:mfenced>
</mml:mrow>
</mml:mrow>
</mml:mfenced>
</mml:mrow>
</mml:mfenced>
</mml:mrow>
</mml:mrow>
<mml:mrow>
<mml:mi>max</mml:mi>
<mml:mrow>
<mml:mfenced open="(" close=")" separators="|">
<mml:mrow>
<mml:mfenced open="|" close="|" separators="|">
<mml:mrow>
<mml:msub>
<mml:mi>&#x3c8;</mml:mi>
<mml:mi>i</mml:mi>
</mml:msub>
<mml:mrow>
<mml:mfenced open="[" close="]" separators="|">
<mml:mrow>
<mml:mi>k</mml:mi>
</mml:mrow>
</mml:mfenced>
</mml:mrow>
</mml:mrow>
</mml:mfenced>
</mml:mrow>
</mml:mfenced>
</mml:mrow>
</mml:mrow>
</mml:mfrac>
<mml:mo>&#xd7;</mml:mo>
<mml:mn>100</mml:mn>
<mml:mo>,</mml:mo>
<mml:mi>i</mml:mi>
<mml:mo>&#x3d;</mml:mo>
<mml:mn>2,26,3,27</mml:mn>
<mml:mo>.</mml:mo>
</mml:mrow>
</mml:math>
<label>(18)</label>
</disp-formula>
</p>
</sec>
</sec>
</sec>
<sec id="s4">
<title>4 Virtual maRTHS (vmaRTHS) implementation</title>
<p>A realistic vmaRTHS code package is established for participants to evaluate their controllers in a modular fashion. The scripts and other resources containing models and data are discussed in the sequel.</p>
<sec id="s4-1">
<title>4.1 Overview</title>
<p>This vRTHS tool is implemented using scripts and block models in MATLAB/Simulink R2019b, respectively. This virtual implementation is as close as possible to RTHS. The companion package includes a <italic>Starting_Guideline.pdf</italic> file that explains how to work with the code. <xref ref-type="fig" rid="F17">Figure 17</xref> shows the basic organization of the code package. The top-level folder has three files only:<list list-type="simple">
<list-item>
<p>&#x2022; A guideline document: Starting_Guideline.pdf</p>
</list-item>
<list-item>
<p>&#x2022; A main script: main_vmaRTHS.m</p>
</list-item>
<list-item>
<p>&#x2022; A block model: Model_vmaRTHS_R2019b.slx</p>
</list-item>
</list>
</p>
<fig id="F17" position="float">
<label>FIGURE 17</label>
<caption>
<p>File organization of the companion package.</p>
</caption>
<graphic xlink:href="fbuil-09-1270996-g017.tif"/>
</fig>
<p>Additional folders contain experimental data for identification of the plant, input data, ground motions, finite element model of the reference structure, and necessary scripts such as functions for defining and loading different components of the vmaRTHS. The main script <italic>main_vmaRTHS.m</italic> is in charge of initialization, loading models and control system, running the vmaRTHS, assessment of the results, and it is the only script that needs to be executed to run this tool. The files the participants must modify are the script <italic>S3_Controller.m</italic> and the corresponding control block in the Simulink model.</p>
<p>
<xref ref-type="fig" rid="F18">Figure 18</xref> shows the execution flow of the principal files (scripts and block models) involved in this implementation as well as their related formulations. The user defines the control system and has the choice, based upon the specific features of the control scheme to be used, of developing its own nominal plant model with the experimental data for identification that is available or use the nominal plant provided as an example in this benchmark. With control design in mind, this tool can also be executed offline.</p>
<fig id="F18" position="float">
<label>FIGURE 18</label>
<caption>
<p>Flow diagram.</p>
</caption>
<graphic xlink:href="fbuil-09-1270996-g018.tif"/>
</fig>
</sec>
<sec id="s4-2">
<title>4.2 Control plant model</title>
<p>The control plant defined in <xref ref-type="sec" rid="s3-5">Section 3.5</xref> has two inputs <inline-formula id="inf74">
<mml:math id="m92">
<mml:mrow>
<mml:msup>
<mml:mrow>
<mml:mfenced open="[" close="]" separators="|">
<mml:mrow>
<mml:msub>
<mml:mi>u</mml:mi>
<mml:mn>1</mml:mn>
</mml:msub>
<mml:mtext>&#x2009;</mml:mtext>
<mml:msub>
<mml:mi>u</mml:mi>
<mml:mn>2</mml:mn>
</mml:msub>
</mml:mrow>
</mml:mfenced>
</mml:mrow>
<mml:mi>T</mml:mi>
</mml:msup>
</mml:mrow>
</mml:math>
</inline-formula> and two outputs <inline-formula id="inf75">
<mml:math id="m93">
<mml:mrow>
<mml:msup>
<mml:mrow>
<mml:mfenced open="[" close="]" separators="|">
<mml:mrow>
<mml:msub>
<mml:mi>&#x3b7;</mml:mi>
<mml:mrow>
<mml:mi>m</mml:mi>
<mml:mo>,</mml:mo>
<mml:mn>1</mml:mn>
</mml:mrow>
</mml:msub>
<mml:mtext>&#x2009;</mml:mtext>
<mml:msub>
<mml:mi>&#x3b7;</mml:mi>
<mml:mrow>
<mml:mi>m</mml:mi>
<mml:mo>,</mml:mo>
<mml:mn>2</mml:mn>
</mml:mrow>
</mml:msub>
</mml:mrow>
</mml:mfenced>
</mml:mrow>
<mml:mi>T</mml:mi>
</mml:msup>
</mml:mrow>
</mml:math>
</inline-formula> representing the control inputs and the hydraulic actuator displacements, respectively. According to <xref ref-type="fig" rid="F8">Figures 8</xref>, <xref ref-type="fig" rid="F9">9</xref>, subscript 1 represents the bottom actuator and 2 represents the top actuator. Therefore, a compact 2 &#xd7; 2 matrix description of the control plant is convenient. Eq. <xref ref-type="disp-formula" rid="e19">(19)</xref> shows a mathematical representation of the control plant in terms of a transfer function matrix.<disp-formula id="e19">
<mml:math id="m94">
<mml:mrow>
<mml:mi mathvariant="bold">H</mml:mi>
<mml:mo>&#x3d;</mml:mo>
<mml:mrow>
<mml:mfenced open="[" close="]" separators="|">
<mml:mrow>
<mml:mtable columnalign="center">
<mml:mtr>
<mml:mtd>
<mml:msub>
<mml:mi>H</mml:mi>
<mml:mn>11</mml:mn>
</mml:msub>
</mml:mtd>
<mml:mtd>
<mml:msub>
<mml:mi>H</mml:mi>
<mml:mn>12</mml:mn>
</mml:msub>
</mml:mtd>
</mml:mtr>
<mml:mtr>
<mml:mtd>
<mml:msub>
<mml:mi>H</mml:mi>
<mml:mn>21</mml:mn>
</mml:msub>
</mml:mtd>
<mml:mtd>
<mml:msub>
<mml:mi>H</mml:mi>
<mml:mn>22</mml:mn>
</mml:msub>
</mml:mtd>
</mml:mtr>
</mml:mtable>
</mml:mrow>
</mml:mfenced>
</mml:mrow>
<mml:mo>,</mml:mo>
</mml:mrow>
</mml:math>
<label>(19)</label>
</disp-formula>where <inline-formula id="inf76">
<mml:math id="m95">
<mml:mrow>
<mml:msub>
<mml:mi>H</mml:mi>
<mml:mrow>
<mml:mi>i</mml:mi>
<mml:mi>j</mml:mi>
</mml:mrow>
</mml:msub>
</mml:mrow>
</mml:math>
</inline-formula> is the transfer function from input <italic>j</italic> to output <italic>i</italic>. The diagonal terms describe the direct relationship between the input and output of a specific actuator when this is commanded, whereas the off-diagonal terms provide the internal coupling behavior of one actuator when the other is commanded.</p>
<p>Since the frame contains component that are all part of one dynamic system, its poles should be common in Eq. <xref ref-type="disp-formula" rid="e19">19</xref> and the remaining poles of the system will depend on the model of the transfer system. Therefore, Eq. <xref ref-type="disp-formula" rid="e19">(19)</xref> can be written as<disp-formula id="e20">
<mml:math id="m96">
<mml:mrow>
<mml:mi mathvariant="bold">H</mml:mi>
<mml:mo>&#x3d;</mml:mo>
<mml:mrow>
<mml:mfenced open="[" close="]" separators="|">
<mml:mrow>
<mml:mtable columnalign="center">
<mml:mtr>
<mml:mtd>
<mml:mfrac>
<mml:mrow>
<mml:msub>
<mml:mrow>
<mml:mi>n</mml:mi>
<mml:mi>u</mml:mi>
<mml:mi>m</mml:mi>
</mml:mrow>
<mml:mn>11</mml:mn>
</mml:msub>
<mml:mrow>
<mml:mfenced open="(" close=")" separators="|">
<mml:mrow>
<mml:mi>s</mml:mi>
</mml:mrow>
</mml:mfenced>
</mml:mrow>
</mml:mrow>
<mml:mrow>
<mml:msub>
<mml:mrow>
<mml:mi>d</mml:mi>
<mml:mi>e</mml:mi>
<mml:mi>n</mml:mi>
</mml:mrow>
<mml:mn>11</mml:mn>
</mml:msub>
<mml:mrow>
<mml:mfenced open="(" close=")" separators="|">
<mml:mrow>
<mml:mi>s</mml:mi>
</mml:mrow>
</mml:mfenced>
</mml:mrow>
</mml:mrow>
</mml:mfrac>
</mml:mtd>
<mml:mtd>
<mml:mfrac>
<mml:mrow>
<mml:msub>
<mml:mrow>
<mml:mi>n</mml:mi>
<mml:mi>u</mml:mi>
<mml:mi>m</mml:mi>
</mml:mrow>
<mml:mn>12</mml:mn>
</mml:msub>
<mml:mrow>
<mml:mfenced open="(" close=")" separators="|">
<mml:mrow>
<mml:mi>s</mml:mi>
</mml:mrow>
</mml:mfenced>
</mml:mrow>
</mml:mrow>
<mml:mrow>
<mml:msub>
<mml:mrow>
<mml:mi>d</mml:mi>
<mml:mi>e</mml:mi>
<mml:mi>n</mml:mi>
</mml:mrow>
<mml:mn>12</mml:mn>
</mml:msub>
<mml:mrow>
<mml:mfenced open="(" close=")" separators="|">
<mml:mrow>
<mml:mi>s</mml:mi>
</mml:mrow>
</mml:mfenced>
</mml:mrow>
</mml:mrow>
</mml:mfrac>
</mml:mtd>
</mml:mtr>
<mml:mtr>
<mml:mtd>
<mml:mfrac>
<mml:mrow>
<mml:msub>
<mml:mrow>
<mml:mi>n</mml:mi>
<mml:mi>u</mml:mi>
<mml:mi>m</mml:mi>
</mml:mrow>
<mml:mn>21</mml:mn>
</mml:msub>
<mml:mrow>
<mml:mfenced open="(" close=")" separators="|">
<mml:mrow>
<mml:mi>s</mml:mi>
</mml:mrow>
</mml:mfenced>
</mml:mrow>
</mml:mrow>
<mml:mrow>
<mml:msub>
<mml:mrow>
<mml:mi>d</mml:mi>
<mml:mi>e</mml:mi>
<mml:mi>n</mml:mi>
</mml:mrow>
<mml:mn>21</mml:mn>
</mml:msub>
<mml:mrow>
<mml:mfenced open="(" close=")" separators="|">
<mml:mrow>
<mml:mi>s</mml:mi>
</mml:mrow>
</mml:mfenced>
</mml:mrow>
</mml:mrow>
</mml:mfrac>
</mml:mtd>
<mml:mtd>
<mml:mfrac>
<mml:mrow>
<mml:msub>
<mml:mrow>
<mml:mi>n</mml:mi>
<mml:mi>u</mml:mi>
<mml:mi>m</mml:mi>
</mml:mrow>
<mml:mn>22</mml:mn>
</mml:msub>
<mml:mrow>
<mml:mfenced open="(" close=")" separators="|">
<mml:mrow>
<mml:mi>s</mml:mi>
</mml:mrow>
</mml:mfenced>
</mml:mrow>
</mml:mrow>
<mml:mrow>
<mml:msub>
<mml:mrow>
<mml:mi>d</mml:mi>
<mml:mi>e</mml:mi>
<mml:mi>n</mml:mi>
</mml:mrow>
<mml:mn>22</mml:mn>
</mml:msub>
<mml:mrow>
<mml:mfenced open="(" close=")" separators="|">
<mml:mrow>
<mml:mi>s</mml:mi>
</mml:mrow>
</mml:mfenced>
</mml:mrow>
</mml:mrow>
</mml:mfrac>
</mml:mtd>
</mml:mtr>
</mml:mtable>
</mml:mrow>
</mml:mfenced>
</mml:mrow>
<mml:mo>&#x22c5;</mml:mo>
<mml:mfrac>
<mml:mrow>
<mml:msub>
<mml:mrow>
<mml:mi>n</mml:mi>
<mml:mi>u</mml:mi>
<mml:mi>m</mml:mi>
</mml:mrow>
<mml:mtext>es</mml:mtext>
</mml:msub>
<mml:mrow>
<mml:mfenced open="(" close=")" separators="|">
<mml:mrow>
<mml:mi>s</mml:mi>
</mml:mrow>
</mml:mfenced>
</mml:mrow>
</mml:mrow>
<mml:mrow>
<mml:msub>
<mml:mrow>
<mml:mi>d</mml:mi>
<mml:mi>e</mml:mi>
<mml:mi>n</mml:mi>
</mml:mrow>
<mml:mtext>es</mml:mtext>
</mml:msub>
<mml:mrow>
<mml:mfenced open="(" close=")" separators="|">
<mml:mrow>
<mml:mi>s</mml:mi>
</mml:mrow>
</mml:mfenced>
</mml:mrow>
</mml:mrow>
</mml:mfrac>
<mml:mo>,</mml:mo>
</mml:mrow>
</mml:math>
<label>(20)</label>
</disp-formula>where <inline-formula id="inf77">
<mml:math id="m97">
<mml:mrow>
<mml:mrow>
<mml:msub>
<mml:mrow>
<mml:mi>n</mml:mi>
<mml:mi>u</mml:mi>
<mml:mi>m</mml:mi>
</mml:mrow>
<mml:mrow>
<mml:mi>i</mml:mi>
<mml:mi>j</mml:mi>
</mml:mrow>
</mml:msub>
<mml:mrow>
<mml:mfenced open="(" close=")" separators="|">
<mml:mrow>
<mml:mi>s</mml:mi>
</mml:mrow>
</mml:mfenced>
</mml:mrow>
</mml:mrow>
<mml:mo>/</mml:mo>
<mml:mrow>
<mml:msub>
<mml:mrow>
<mml:mi>d</mml:mi>
<mml:mi>e</mml:mi>
<mml:mi>n</mml:mi>
</mml:mrow>
<mml:mrow>
<mml:mi>i</mml:mi>
<mml:mi>j</mml:mi>
</mml:mrow>
</mml:msub>
<mml:mrow>
<mml:mfenced open="(" close=")" separators="|">
<mml:mrow>
<mml:mi>s</mml:mi>
</mml:mrow>
</mml:mfenced>
</mml:mrow>
</mml:mrow>
</mml:mrow>
</mml:math>
</inline-formula> represents the numerator and denominator of the transfer function <inline-formula id="inf78">
<mml:math id="m98">
<mml:mrow>
<mml:msub>
<mml:mi>H</mml:mi>
<mml:mrow>
<mml:mi>i</mml:mi>
<mml:mi>j</mml:mi>
</mml:mrow>
</mml:msub>
</mml:mrow>
</mml:math>
</inline-formula> and <inline-formula id="inf79">
<mml:math id="m99">
<mml:mrow>
<mml:mrow>
<mml:msub>
<mml:mrow>
<mml:mi>n</mml:mi>
<mml:mi>u</mml:mi>
<mml:mi>m</mml:mi>
</mml:mrow>
<mml:mtext>es</mml:mtext>
</mml:msub>
<mml:mrow>
<mml:mfenced open="(" close=")" separators="|">
<mml:mrow>
<mml:mi>s</mml:mi>
</mml:mrow>
</mml:mfenced>
</mml:mrow>
</mml:mrow>
<mml:mo>/</mml:mo>
<mml:mrow>
<mml:msub>
<mml:mrow>
<mml:mi>d</mml:mi>
<mml:mi>e</mml:mi>
<mml:mi>n</mml:mi>
</mml:mrow>
<mml:mtext>es</mml:mtext>
</mml:msub>
<mml:mrow>
<mml:mfenced open="(" close=")" separators="|">
<mml:mrow>
<mml:mi>s</mml:mi>
</mml:mrow>
</mml:mfenced>
</mml:mrow>
</mml:mrow>
</mml:mrow>
</mml:math>
</inline-formula> characterizes the poles and zeros of the frame (experimental substructure).</p>
</sec>
<sec id="s4-3">
<title>4.3 Coupler coordinate transformation</title>
<p>The use of two hydraulic actuators to enforce translation and rotation requires a coordinate transformation between the degrees of freedom of the numerical substructure and the two actuator displacements. Four assumptions are made to develop this relation: 1) the coupler deformations are negligible. The analysis presented in <xref ref-type="sec" rid="s3-4">Section 3.4</xref> demonstrates that the maximum strains in the coupler justify this assumption; 2) the vertical motion of the nodes can be neglected. The axial deformation of the columns in the physical substructure is negligible due to their high axial stiffness, and the axial forces in the columns are small since the motion of the frame is mainly horizontal; 3) the rotations of the column-beam joints are small because the behavior of the frame in this benchmark is limited to linear elastic; 4) the connection of the coupler to the column-beam joint provided by the high-strength bolts is rigid, hence the deformations are negligible.</p>
<p>Therefore, the coupler can be considered as a rigid body, the boundary conditions of the coupler at the column-beam joint allows two degrees of freedom, and the kinematics of the actuators can be described entirely by the horizontal components of their motion. <xref ref-type="fig" rid="F19">Figure 19A</xref> shows that the model of the coupler is defined by the rigid triangle <italic>AOB</italic>. The vertex <inline-formula id="inf80">
<mml:math id="m100">
<mml:mrow>
<mml:msub>
<mml:mi>O</mml:mi>
<mml:mi>f</mml:mi>
</mml:msub>
</mml:mrow>
</mml:math>
</inline-formula> is located at the intersection of the beam and column axes, and vertices <italic>A</italic> and <italic>B</italic> represent the location where the hydraulic actuators are attached.</p>
<fig id="F19" position="float">
<label>FIGURE 19</label>
<caption>
<p>Coupler modeled as a rigid body. <bold>(A)</bold> Rigid body geometry, <bold>(B)</bold> Rigid body motion.</p>
</caption>
<graphic xlink:href="fbuil-09-1270996-g019.tif"/>
</fig>
<p>
<xref ref-type="fig" rid="F19">Figure 19B</xref> illustrates the motion of the coupler (initial position in blue and final position in green) and the corresponding attached actuators trajectories when the frame moves laterally. The actuators axial displacements can be obtained by adding the effect of the horizontal displacement of the coupler <inline-formula id="inf81">
<mml:math id="m101">
<mml:mrow>
<mml:mi mathvariant="bold">c</mml:mi>
</mml:mrow>
</mml:math>
</inline-formula> (translational DOF of node 4, <inline-formula id="inf82">
<mml:math id="m102">
<mml:mrow>
<mml:msub>
<mml:mi>&#x3c8;</mml:mi>
<mml:mrow>
<mml:mtext>ns</mml:mtext>
<mml:mn>4,4</mml:mn>
</mml:mrow>
</mml:msub>
</mml:mrow>
</mml:math>
</inline-formula>, imposed on the physical frame) and the horizontal components of the vectors <inline-formula id="inf83">
<mml:math id="m103">
<mml:mrow>
<mml:mi mathvariant="bold">a</mml:mi>
</mml:mrow>
</mml:math>
</inline-formula> and <inline-formula id="inf84">
<mml:math id="m104">
<mml:mrow>
<mml:mi mathvariant="bold">b</mml:mi>
</mml:mrow>
</mml:math>
</inline-formula> when the coupler rotates the angle <inline-formula id="inf85">
<mml:math id="m105">
<mml:mrow>
<mml:msub>
<mml:mi>&#x3c8;</mml:mi>
<mml:mrow>
<mml:mtext>ns</mml:mtext>
<mml:mn>4,28</mml:mn>
</mml:mrow>
</mml:msub>
</mml:mrow>
</mml:math>
</inline-formula>. For instance, considering the rotation effect only, the initial position of the top actuator can be represented by the vector <inline-formula id="inf86">
<mml:math id="m106">
<mml:mrow>
<mml:msub>
<mml:mi mathvariant="bold">p</mml:mi>
<mml:mrow>
<mml:mi>o</mml:mi>
<mml:mo>,</mml:mo>
<mml:mn>2</mml:mn>
</mml:mrow>
</mml:msub>
</mml:mrow>
</mml:math>
</inline-formula> and its final position by the vector <inline-formula id="inf87">
<mml:math id="m107">
<mml:mrow>
<mml:msub>
<mml:mi mathvariant="bold">p</mml:mi>
<mml:mrow>
<mml:mi>f</mml:mi>
<mml:mo>,</mml:mo>
<mml:mn>2</mml:mn>
</mml:mrow>
</mml:msub>
<mml:mo>&#x3d;</mml:mo>
<mml:msub>
<mml:mi mathvariant="bold">p</mml:mi>
<mml:mrow>
<mml:mi>o</mml:mi>
<mml:mo>,</mml:mo>
<mml:mn>2</mml:mn>
</mml:mrow>
</mml:msub>
<mml:mo>&#x2b;</mml:mo>
<mml:mi mathvariant="bold">b</mml:mi>
</mml:mrow>
</mml:math>
</inline-formula>. Thus, the actuator axial displacements can be written as:<disp-formula id="e21">
<mml:math id="m108">
<mml:mrow>
<mml:msub>
<mml:mi mathvariant="bold-italic">&#x3b7;</mml:mi>
<mml:mrow>
<mml:mi>m</mml:mi>
<mml:mo>,</mml:mo>
<mml:mi>i</mml:mi>
</mml:mrow>
</mml:msub>
<mml:mo>&#x3d;</mml:mo>
<mml:mi mathvariant="bold">c</mml:mi>
<mml:mo>&#x2b;</mml:mo>
<mml:msub>
<mml:mi mathvariant="bold">p</mml:mi>
<mml:mrow>
<mml:mi>f</mml:mi>
<mml:mo>,</mml:mo>
<mml:mi>i</mml:mi>
</mml:mrow>
</mml:msub>
<mml:mo>&#x2212;</mml:mo>
<mml:msub>
<mml:mi mathvariant="bold">p</mml:mi>
<mml:mrow>
<mml:mi>o</mml:mi>
<mml:mo>,</mml:mo>
<mml:mi>i</mml:mi>
</mml:mrow>
</mml:msub>
<mml:mo>,</mml:mo>
<mml:mi>i</mml:mi>
<mml:mo>&#x3d;</mml:mo>
<mml:mn>1,2</mml:mn>
</mml:mrow>
</mml:math>
<label>(21)</label>
</disp-formula>and its magnitude can be approximated by its horizontal component:<disp-formula id="e22">
<mml:math id="m109">
<mml:mrow>
<mml:msub>
<mml:mi>&#x3b7;</mml:mi>
<mml:mrow>
<mml:mi>m</mml:mi>
<mml:mo>,</mml:mo>
<mml:mi>i</mml:mi>
</mml:mrow>
</mml:msub>
<mml:mo>&#x3d;</mml:mo>
<mml:msub>
<mml:mi>&#x3c8;</mml:mi>
<mml:mrow>
<mml:mi>m</mml:mi>
<mml:mo>,</mml:mo>
<mml:mn>4</mml:mn>
</mml:mrow>
</mml:msub>
<mml:mo>&#x2b;</mml:mo>
<mml:mi>p</mml:mi>
<mml:mo>&#x22c5;</mml:mo>
<mml:mrow>
<mml:mfenced open="[" close="]" separators="&#x7c;">
<mml:mrow>
<mml:mi>cos</mml:mi>
<mml:mrow>
<mml:mfenced open="(" close=")" separators="&#x7c;">
<mml:mrow>
<mml:msub>
<mml:mi>&#x3b1;</mml:mi>
<mml:mi>i</mml:mi>
</mml:msub>
<mml:mo>&#x2b;</mml:mo>
<mml:msub>
<mml:mi>&#x3c8;</mml:mi>
<mml:mrow>
<mml:mi>m</mml:mi>
<mml:mo>,</mml:mo>
<mml:mn>28</mml:mn>
</mml:mrow>
</mml:msub>
</mml:mrow>
</mml:mfenced>
</mml:mrow>
<mml:mo>&#x2212;</mml:mo>
<mml:mi>cos</mml:mi>
<mml:mrow>
<mml:mfenced open="(" close=")" separators="&#x7c;">
<mml:mrow>
<mml:msub>
<mml:mi>&#x3b1;</mml:mi>
<mml:mi>i</mml:mi>
</mml:msub>
</mml:mrow>
</mml:mfenced>
</mml:mrow>
</mml:mrow>
</mml:mfenced>
</mml:mrow>
<mml:mo>.</mml:mo>
<mml:mtext>&#x2003;</mml:mtext>
<mml:mi>i</mml:mi>
<mml:mo>&#x3d;</mml:mo>
<mml:mn>1,2</mml:mn>
</mml:mrow>
</mml:math>
<label>(22)</label>
</disp-formula>
</p>
<p>Where <inline-formula id="inf88">
<mml:math id="m110">
<mml:mrow>
<mml:mi>p</mml:mi>
<mml:mo>&#x3d;</mml:mo>
<mml:mrow>
<mml:mfenced open="|" close="|" separators="|">
<mml:mrow>
<mml:msub>
<mml:mi mathvariant="bold">p</mml:mi>
<mml:mrow>
<mml:mi>o</mml:mi>
<mml:mo>,</mml:mo>
<mml:mi>i</mml:mi>
</mml:mrow>
</mml:msub>
</mml:mrow>
</mml:mfenced>
</mml:mrow>
<mml:mo>&#x3d;</mml:mo>
<mml:mrow>
<mml:mfenced open="|" close="|" separators="|">
<mml:mrow>
<mml:msub>
<mml:mi mathvariant="bold">p</mml:mi>
<mml:mrow>
<mml:mi>f</mml:mi>
<mml:mo>,</mml:mo>
<mml:mi>i</mml:mi>
</mml:mrow>
</mml:msub>
</mml:mrow>
</mml:mfenced>
</mml:mrow>
</mml:mrow>
</mml:math>
</inline-formula> since the coupler is assumed to be rigid. The inverse relation is:<disp-formula id="e23">
<mml:math id="m111">
<mml:mrow>
<mml:msub>
<mml:mi>&#x3c8;</mml:mi>
<mml:mrow>
<mml:mi>m</mml:mi>
<mml:mo>,</mml:mo>
<mml:mn>28</mml:mn>
</mml:mrow>
</mml:msub>
<mml:mo>&#x3d;</mml:mo>
<mml:msup>
<mml:mi>sin</mml:mi>
<mml:mrow>
<mml:mo>&#x2212;</mml:mo>
<mml:mn>1</mml:mn>
</mml:mrow>
</mml:msup>
<mml:mrow>
<mml:mfenced open="(" close=")" separators="|">
<mml:mrow>
<mml:mfrac>
<mml:mrow>
<mml:msub>
<mml:mi>&#x3b7;</mml:mi>
<mml:mrow>
<mml:mi>m</mml:mi>
<mml:mo>,</mml:mo>
<mml:mn>1</mml:mn>
</mml:mrow>
</mml:msub>
<mml:mo>&#x2212;</mml:mo>
<mml:msub>
<mml:mi>&#x3b7;</mml:mi>
<mml:mrow>
<mml:mi>m</mml:mi>
<mml:mo>,</mml:mo>
<mml:mn>2</mml:mn>
</mml:mrow>
</mml:msub>
</mml:mrow>
<mml:mrow>
<mml:mn>2</mml:mn>
<mml:mi>p</mml:mi>
<mml:mo>&#x2061;</mml:mo>
<mml:mi>sin</mml:mi>
<mml:mrow>
<mml:mfenced open="(" close=")" separators="|">
<mml:mrow>
<mml:msub>
<mml:mi>&#x3b1;</mml:mi>
<mml:mn>2</mml:mn>
</mml:msub>
</mml:mrow>
</mml:mfenced>
</mml:mrow>
</mml:mrow>
</mml:mfrac>
</mml:mrow>
</mml:mfenced>
</mml:mrow>
</mml:mrow>
</mml:math>
<label>(23)</label>
</disp-formula>and<disp-formula id="e24">
<mml:math id="m112">
<mml:mrow>
<mml:msub>
<mml:mi>&#x3c8;</mml:mi>
<mml:mrow>
<mml:mi>m</mml:mi>
<mml:mo>,</mml:mo>
<mml:mn>4</mml:mn>
</mml:mrow>
</mml:msub>
<mml:mo>&#x3d;</mml:mo>
<mml:msub>
<mml:mi>&#x3b7;</mml:mi>
<mml:mrow>
<mml:mi>m</mml:mi>
<mml:mo>,</mml:mo>
<mml:mi>i</mml:mi>
</mml:mrow>
</mml:msub>
<mml:mo>&#x2212;</mml:mo>
<mml:mi>p</mml:mi>
<mml:mo>&#x22c5;</mml:mo>
<mml:mrow>
<mml:mfenced open="[" close="]" separators="|">
<mml:mrow>
<mml:mi>cos</mml:mi>
<mml:mrow>
<mml:mfenced open="(" close=")" separators="|">
<mml:mrow>
<mml:msub>
<mml:mi>&#x3b1;</mml:mi>
<mml:mi>i</mml:mi>
</mml:msub>
<mml:mo>&#x2b;</mml:mo>
<mml:msub>
<mml:mi>&#x3c8;</mml:mi>
<mml:mrow>
<mml:mi>m</mml:mi>
<mml:mo>,</mml:mo>
<mml:mn>28</mml:mn>
</mml:mrow>
</mml:msub>
</mml:mrow>
</mml:mfenced>
</mml:mrow>
<mml:mo>&#x2212;</mml:mo>
<mml:mi>cos</mml:mi>
<mml:mrow>
<mml:mfenced open="(" close=")" separators="|">
<mml:mrow>
<mml:msub>
<mml:mi>&#x3b1;</mml:mi>
<mml:mi>i</mml:mi>
</mml:msub>
</mml:mrow>
</mml:mfenced>
</mml:mrow>
</mml:mrow>
</mml:mfenced>
</mml:mrow>
<mml:mo>.</mml:mo>
</mml:mrow>
</mml:math>
<label>(24)</label>
</disp-formula>
</p>
</sec>
<sec id="s4-4">
<title>4.4 Control plant uncertainties</title>
<p>Actual uncertainties in the plant such as imprecision in the size of elements, material properties, parameters, etc. and a simplified representation of the plant&#x2019;s dynamics yield to model imprecision. Therefore, it is realistic to incorporate uncertainties into the control plant used in this benchmark so that the proposed control approach is tested realistically as well via virtual RTHS.<disp-formula id="e25">
<mml:math id="m185">
<mml:mrow>
<mml:mi mathvariant="bold">H</mml:mi>
<mml:mo>&#x3d;</mml:mo>
<mml:mrow>
<mml:mfenced open="[" close="]" separators="&#x7c;">
<mml:mrow>
<mml:mtable>
<mml:mtr>
<mml:mtd>
<mml:mn>2165.2</mml:mn>
<mml:mtext>&#x2009;</mml:mtext>
<mml:mfrac>
<mml:mrow>
<mml:mrow>
<mml:mfenced open="(" close=")" separators="&#x7c;">
<mml:mrow>
<mml:mi>s</mml:mi>
<mml:mo>&#x2b;</mml:mo>
<mml:mn>120</mml:mn>
</mml:mrow>
</mml:mfenced>
</mml:mrow>
<mml:mrow>
<mml:mfenced open="(" close=")" separators="&#x7c;">
<mml:mrow>
<mml:mi>s</mml:mi>
<mml:mo>&#x2b;</mml:mo>
<mml:mn>90</mml:mn>
</mml:mrow>
</mml:mfenced>
</mml:mrow>
</mml:mrow>
<mml:mrow>
<mml:mrow>
<mml:mfenced open="(" close=")" separators="&#x7c;">
<mml:mrow>
<mml:mi>s</mml:mi>
<mml:mo>&#x2b;</mml:mo>
<mml:mn>2.65</mml:mn>
</mml:mrow>
</mml:mfenced>
</mml:mrow>
<mml:mrow>
<mml:mfenced open="(" close=")" separators="&#x7c;">
<mml:mrow>
<mml:mi>s</mml:mi>
<mml:mo>&#x2b;</mml:mo>
<mml:mn>40</mml:mn>
</mml:mrow>
</mml:mfenced>
</mml:mrow>
</mml:mrow>
</mml:mfrac>
<mml:mtext>&#x2003;</mml:mtext>
<mml:mn>4.5</mml:mn>
<mml:mi>e</mml:mi>
<mml:mn>6</mml:mn>
<mml:mtext>&#x2009;</mml:mtext>
<mml:mfrac>
<mml:mrow>
<mml:mfenced open="(" close=")" separators="&#x7c;">
<mml:mrow>
<mml:mi>s</mml:mi>
<mml:mo>&#x2b;</mml:mo>
<mml:mn>3</mml:mn>
</mml:mrow>
</mml:mfenced>
</mml:mrow>
<mml:mrow>
<mml:mrow>
<mml:mfenced open="(" close=")" separators="&#x7c;">
<mml:mrow>
<mml:mi>s</mml:mi>
<mml:mo>&#x2b;</mml:mo>
<mml:mn>3.5</mml:mn>
</mml:mrow>
</mml:mfenced>
</mml:mrow>
<mml:mrow>
<mml:mfenced open="(" close=")" separators="&#x7c;">
<mml:mrow>
<mml:mi>s</mml:mi>
<mml:mo>&#x2b;</mml:mo>
<mml:mn>18.5</mml:mn>
</mml:mrow>
</mml:mfenced>
</mml:mrow>
</mml:mrow>
</mml:mfrac>
</mml:mtd>
</mml:mtr>
<mml:mtr>
<mml:mtd>
<mml:mn>349.95</mml:mn>
<mml:mtext>&#x2009;</mml:mtext>
<mml:mfrac>
<mml:mrow>
<mml:mrow>
<mml:mfenced open="(" close=")" separators="&#x7c;">
<mml:mrow>
<mml:mi>s</mml:mi>
<mml:mo>&#x2b;</mml:mo>
<mml:mn>120</mml:mn>
</mml:mrow>
</mml:mfenced>
</mml:mrow>
<mml:mrow>
<mml:mfenced open="(" close=")" separators="&#x7c;">
<mml:mrow>
<mml:mi>s</mml:mi>
<mml:mo>&#x2b;</mml:mo>
<mml:mn>90</mml:mn>
</mml:mrow>
</mml:mfenced>
</mml:mrow>
</mml:mrow>
<mml:mrow>
<mml:mrow>
<mml:mfenced open="(" close=")" separators="&#x7c;">
<mml:mrow>
<mml:mi>s</mml:mi>
<mml:mo>&#x2b;</mml:mo>
<mml:mn>2.65</mml:mn>
</mml:mrow>
</mml:mfenced>
</mml:mrow>
<mml:mrow>
<mml:mfenced open="(" close=")" separators="&#x7c;">
<mml:mrow>
<mml:mi>s</mml:mi>
<mml:mo>&#x2b;</mml:mo>
<mml:mn>40</mml:mn>
</mml:mrow>
</mml:mfenced>
</mml:mrow>
</mml:mrow>
</mml:mfrac>
<mml:mtext>&#x2003;</mml:mtext>
<mml:mn>2165.2</mml:mn>
<mml:mtext>&#x2009;</mml:mtext>
<mml:mfrac>
<mml:mrow>
<mml:mfenced open="(" close=")" separators="&#x7c;">
<mml:mrow>
<mml:mi>s</mml:mi>
<mml:mo>&#x2b;</mml:mo>
<mml:mn>5</mml:mn>
</mml:mrow>
</mml:mfenced>
</mml:mrow>
<mml:mrow>
<mml:mrow>
<mml:mfenced open="(" close=")" separators="&#x7c;">
<mml:mrow>
<mml:mi>s</mml:mi>
<mml:mo>&#x2b;</mml:mo>
<mml:mn>3.5</mml:mn>
</mml:mrow>
</mml:mfenced>
</mml:mrow>
<mml:mrow>
<mml:mfenced open="(" close=")" separators="&#x7c;">
<mml:mrow>
<mml:mi>s</mml:mi>
<mml:mo>&#x2b;</mml:mo>
<mml:mn>18.5</mml:mn>
</mml:mrow>
</mml:mfenced>
</mml:mrow>
</mml:mrow>
</mml:mfrac>
</mml:mtd>
</mml:mtr>
</mml:mtable>
</mml:mrow>
</mml:mfenced>
</mml:mrow>
<mml:mo>&#x22c5;</mml:mo>
<mml:mfrac>
<mml:mrow>
<mml:msub>
<mml:mrow>
<mml:mi>n</mml:mi>
<mml:mi>u</mml:mi>
<mml:mi>m</mml:mi>
</mml:mrow>
<mml:mtext>es</mml:mtext>
</mml:msub>
<mml:mrow>
<mml:mfenced open="(" close=")" separators="&#x7c;">
<mml:mrow>
<mml:mi>s</mml:mi>
</mml:mrow>
</mml:mfenced>
</mml:mrow>
</mml:mrow>
<mml:mrow>
<mml:msub>
<mml:mrow>
<mml:mi>d</mml:mi>
<mml:mi>e</mml:mi>
<mml:mi>n</mml:mi>
</mml:mrow>
<mml:mtext>es</mml:mtext>
</mml:msub>
<mml:mrow>
<mml:mfenced open="(" close=")" separators="&#x7c;">
<mml:mrow>
<mml:mi>s</mml:mi>
</mml:mrow>
</mml:mfenced>
</mml:mrow>
</mml:mrow>
</mml:mfrac>
<mml:mo>,</mml:mo>
</mml:mrow>
</mml:math>
<label>(25)</label>
</disp-formula>
</p>
<p>This benchmark problem considers uncertainties or model inaccuracies in the control plant by defining random variations in the transfer function matrix of a nominal plant model that has the form of Eq. <xref ref-type="disp-formula" rid="e20">(20)</xref>. Random variations in the poles and zeros of the nominal plant model generate these differences by introducing changes from a standard normal distribution sampling process, which create a family of frequency response functions (FRF) where any FRF member represents a potential control plant. <xref ref-type="table" rid="T2">Table 2</xref> presents the mean and standard deviation for each of these poles and zeros of the nominal plant model that can be described by Eqs <xref ref-type="disp-formula" rid="e19">19</xref>, <xref ref-type="disp-formula" rid="e20">20</xref>. In this benchmark, and commonly in practice, the nominal plant model is an identified plant model that is provided in the companion package tool.<disp-formula id="e26">
<mml:math id="m1114">
<mml:mrow>
<mml:mfrac>
<mml:mrow>
<mml:msub>
<mml:mrow>
<mml:mi>n</mml:mi>
<mml:mi>u</mml:mi>
<mml:mi>m</mml:mi>
</mml:mrow>
<mml:mtext>es</mml:mtext>
</mml:msub>
<mml:mrow>
<mml:mfenced open="(" close=")" separators="&#x7c;">
<mml:mrow>
<mml:mi>s</mml:mi>
</mml:mrow>
</mml:mfenced>
</mml:mrow>
</mml:mrow>
<mml:mrow>
<mml:msub>
<mml:mrow>
<mml:mi>d</mml:mi>
<mml:mi>e</mml:mi>
<mml:mi>n</mml:mi>
</mml:mrow>
<mml:mtext>es</mml:mtext>
</mml:msub>
<mml:mrow>
<mml:mfenced open="(" close=")" separators="&#x7c;">
<mml:mrow>
<mml:mi>s</mml:mi>
</mml:mrow>
</mml:mfenced>
</mml:mrow>
</mml:mrow>
</mml:mfrac>
<mml:mo>&#x3d;</mml:mo>
<mml:mfrac>
<mml:mn>1</mml:mn>
<mml:mrow>
<mml:mrow>
<mml:mfenced open="(" close=")" separators="&#x7c;">
<mml:mrow>
<mml:mi>s</mml:mi>
<mml:mo>&#x2b;</mml:mo>
<mml:mn>50</mml:mn>
<mml:mo>&#x2b;</mml:mo>
<mml:mn>63</mml:mn>
<mml:mi>j</mml:mi>
</mml:mrow>
</mml:mfenced>
</mml:mrow>
<mml:mrow>
<mml:mfenced open="(" close=")" separators="&#x7c;">
<mml:mrow>
<mml:mi>s</mml:mi>
<mml:mo>&#x2b;</mml:mo>
<mml:mn>50</mml:mn>
<mml:mo>&#x2212;</mml:mo>
<mml:mn>63</mml:mn>
<mml:mi>j</mml:mi>
</mml:mrow>
</mml:mfenced>
</mml:mrow>
</mml:mrow>
</mml:mfrac>
<mml:mo>.</mml:mo>
</mml:mrow>
</mml:math>
<label>(26)</label>
</disp-formula>
</p>
<table-wrap id="T2" position="float">
<label>TABLE 2</label>
<caption>
<p>Parameter uncertainty definition.</p>
</caption>
<table>
<thead valign="top">
<tr>
<th colspan="3" align="center">Component (See Eqs. <xref ref-type="disp-formula" rid="e19">19</xref> and <xref ref-type="disp-formula" rid="e20">20</xref>)</th>
<th align="center">Parameter</th>
<th align="center">Nominal value (<italic>&#xb5;</italic>)</th>
<th align="center">Standard deviation (<italic>&#x3c3;</italic>)</th>
</tr>
</thead>
<tbody valign="top">
<tr>
<td rowspan="4" colspan="3" align="center">
<inline-formula id="inf89">
<mml:math id="m113">
<mml:mrow>
<mml:mfrac>
<mml:mrow>
<mml:msub>
<mml:mrow>
<mml:mi>n</mml:mi>
<mml:mi>u</mml:mi>
<mml:mi>m</mml:mi>
</mml:mrow>
<mml:mn>11</mml:mn>
</mml:msub>
<mml:mrow>
<mml:mfenced open="(" close=")" separators="|">
<mml:mrow>
<mml:mi>s</mml:mi>
</mml:mrow>
</mml:mfenced>
</mml:mrow>
</mml:mrow>
<mml:mrow>
<mml:msub>
<mml:mrow>
<mml:mi>d</mml:mi>
<mml:mi>e</mml:mi>
<mml:mi>n</mml:mi>
</mml:mrow>
<mml:mn>11</mml:mn>
</mml:msub>
<mml:mrow>
<mml:mfenced open="(" close=")" separators="|">
<mml:mrow>
<mml:mi>s</mml:mi>
</mml:mrow>
</mml:mfenced>
</mml:mrow>
</mml:mrow>
</mml:mfrac>
</mml:mrow>
</mml:math>
</inline-formula> and <inline-formula id="inf90">
<mml:math id="m114">
<mml:mrow>
<mml:mfrac>
<mml:mrow>
<mml:msub>
<mml:mrow>
<mml:mi>n</mml:mi>
<mml:mi>u</mml:mi>
<mml:mi>m</mml:mi>
</mml:mrow>
<mml:mn>21</mml:mn>
</mml:msub>
<mml:mrow>
<mml:mfenced open="(" close=")" separators="|">
<mml:mrow>
<mml:mi>s</mml:mi>
</mml:mrow>
</mml:mfenced>
</mml:mrow>
</mml:mrow>
<mml:mrow>
<mml:msub>
<mml:mrow>
<mml:mi>d</mml:mi>
<mml:mi>e</mml:mi>
<mml:mi>n</mml:mi>
</mml:mrow>
<mml:mn>21</mml:mn>
</mml:msub>
<mml:mrow>
<mml:mfenced open="(" close=")" separators="|">
<mml:mrow>
<mml:mi>s</mml:mi>
</mml:mrow>
</mml:mfenced>
</mml:mrow>
</mml:mrow>
</mml:mfrac>
</mml:mrow>
</mml:math>
</inline-formula>
</td>
<td align="center">Zero 1</td>
<td align="center">&#x2212;753.98</td>
<td align="center">41.47</td>
</tr>
<tr>
<td align="center">Zero 2</td>
<td align="center">&#x2212;565.48</td>
<td align="center">31.10</td>
</tr>
<tr>
<td align="center">Pole 1</td>
<td align="center">&#x2212;16.65</td>
<td align="center">1.00</td>
</tr>
<tr>
<td align="center">Pole 2</td>
<td align="center">&#x2212;251.32</td>
<td align="center">15.08</td>
</tr>
<tr>
<td rowspan="4" colspan="3" align="center">
<inline-formula id="inf91">
<mml:math id="m115">
<mml:mrow>
<mml:mfrac>
<mml:mrow>
<mml:msub>
<mml:mrow>
<mml:mi>n</mml:mi>
<mml:mi>u</mml:mi>
<mml:mi>m</mml:mi>
</mml:mrow>
<mml:mn>12</mml:mn>
</mml:msub>
<mml:mrow>
<mml:mfenced open="(" close=")" separators="|">
<mml:mrow>
<mml:mi>s</mml:mi>
</mml:mrow>
</mml:mfenced>
</mml:mrow>
</mml:mrow>
<mml:mrow>
<mml:msub>
<mml:mrow>
<mml:mi>d</mml:mi>
<mml:mi>e</mml:mi>
<mml:mi>n</mml:mi>
</mml:mrow>
<mml:mn>12</mml:mn>
</mml:msub>
<mml:mrow>
<mml:mfenced open="(" close=")" separators="|">
<mml:mrow>
<mml:mi>s</mml:mi>
</mml:mrow>
</mml:mfenced>
</mml:mrow>
</mml:mrow>
</mml:mfrac>
</mml:mrow>
</mml:math>
</inline-formula> and <inline-formula id="inf92">
<mml:math id="m116">
<mml:mrow>
<mml:mfrac>
<mml:mrow>
<mml:msub>
<mml:mrow>
<mml:mi>n</mml:mi>
<mml:mi>u</mml:mi>
<mml:mi>m</mml:mi>
</mml:mrow>
<mml:mn>22</mml:mn>
</mml:msub>
<mml:mrow>
<mml:mfenced open="(" close=")" separators="|">
<mml:mrow>
<mml:mi>s</mml:mi>
</mml:mrow>
</mml:mfenced>
</mml:mrow>
</mml:mrow>
<mml:mrow>
<mml:msub>
<mml:mrow>
<mml:mi>d</mml:mi>
<mml:mi>e</mml:mi>
<mml:mi>n</mml:mi>
</mml:mrow>
<mml:mn>22</mml:mn>
</mml:msub>
<mml:mrow>
<mml:mfenced open="(" close=")" separators="|">
<mml:mrow>
<mml:mi>s</mml:mi>
</mml:mrow>
</mml:mfenced>
</mml:mrow>
</mml:mrow>
</mml:mfrac>
</mml:mrow>
</mml:math>
</inline-formula>
</td>
<td align="center">Zero 1</td>
<td align="center">&#x2212;18.85</td>
<td align="center">0.57</td>
</tr>
<tr>
<td align="center">Zero 2</td>
<td align="center">&#x2212;31.42</td>
<td align="center">0.94</td>
</tr>
<tr>
<td align="center">Pole 1</td>
<td align="center">&#x2212;21.99</td>
<td align="center">0.66</td>
</tr>
<tr>
<td align="center">Pole 2</td>
<td align="center">&#x2212;116.24</td>
<td align="center">&#x2212;3.49</td>
</tr>
<tr>
<td colspan="3" align="center">
<inline-formula id="inf93">
<mml:math id="m117">
<mml:mrow>
<mml:mfrac>
<mml:mrow>
<mml:msub>
<mml:mrow>
<mml:mi>n</mml:mi>
<mml:mi>u</mml:mi>
<mml:mi>m</mml:mi>
</mml:mrow>
<mml:mtext>es</mml:mtext>
</mml:msub>
<mml:mrow>
<mml:mfenced open="(" close=")" separators="|">
<mml:mrow>
<mml:mi>s</mml:mi>
</mml:mrow>
</mml:mfenced>
</mml:mrow>
</mml:mrow>
<mml:mrow>
<mml:msub>
<mml:mrow>
<mml:mi>d</mml:mi>
<mml:mi>e</mml:mi>
<mml:mi>n</mml:mi>
</mml:mrow>
<mml:mtext>es</mml:mtext>
</mml:msub>
<mml:mrow>
<mml:mfenced open="(" close=")" separators="|">
<mml:mrow>
<mml:mi>s</mml:mi>
</mml:mrow>
</mml:mfenced>
</mml:mrow>
</mml:mrow>
</mml:mfrac>
</mml:mrow>
</mml:math>
</inline-formula>
</td>
<td align="center">Pole 1 and 2</td>
<td align="center">&#x2212;314.16 &#xb1; 395.84i</td>
<td align="center">15.71 &#x2b; 19.79i</td>
</tr>
</tbody>
</table>
</table-wrap>
<p>
<xref ref-type="fig" rid="F20">Figure 20</xref> shows a set of FRFs generated using the parameters of <xref ref-type="table" rid="T2">Table 2</xref> that captures the uncertainty in modeling the control plant. To simulate an actual RTHS experiment, the proposed controller is designed considering an identified plant model (the nominal plant model in this benchmark). Then, a virtual RTHS is conducted where the designed controller tracks a control plant model randomly selected from the FRF family shown in <xref ref-type="fig" rid="F20">Figure 20</xref>. To guarantee robust performance and stability of the controller, at least 20 virtual RTHS should be executed, each one with a randomly selected control plant model. The companion package tool implements these procedures and facilitates the processing of performance metrics data.</p>
<fig id="F20" position="float">
<label>FIGURE 20</label>
<caption>
<p>FRF regions for the plant model uncertainty.</p>
</caption>
<graphic xlink:href="fbuil-09-1270996-g020.tif"/>
</fig>
</sec>
<sec id="s4-5">
<title>4.5 Provided materials</title>
<p>This benchmark includes a companion package that helps to implement the control system using vRTHS.<list list-type="simple">
<list-item>
<p>1.Models:</p>
<list list-type="simple">
<list-item>
<p>a.Reference model: definition and implementation of a 38-DOF finite element model (<bold>M</bold>, <bold>C</bold>, <bold>K</bold>, see <xref ref-type="sec" rid="s2">Section 2</xref>).</p>
</list-item>
<list-item>
<p>b.Nominal model of the experimental frame: definition and implementation of an 8-DOF finite element model (<inline-formula id="inf94">
<mml:math id="m118">
<mml:mrow>
<mml:msub>
<mml:mi mathvariant="bold">M</mml:mi>
<mml:mtext>es</mml:mtext>
</mml:msub>
</mml:mrow>
</mml:math>
</inline-formula>, <inline-formula id="inf95">
<mml:math id="m119">
<mml:mrow>
<mml:msub>
<mml:mi mathvariant="bold">C</mml:mi>
<mml:mtext>es</mml:mtext>
</mml:msub>
</mml:mrow>
</mml:math>
</inline-formula>, <inline-formula id="inf96">
<mml:math id="m120">
<mml:mrow>
<mml:msub>
<mml:mi mathvariant="bold">K</mml:mi>
<mml:mtext>es</mml:mtext>
</mml:msub>
</mml:mrow>
</mml:math>
</inline-formula>, see <xref ref-type="sec" rid="s3-2">Section 3.2</xref>).</p>
</list-item>
<list-item>
<p>c.Reduced nominal model of the experimental frame: 2-DOF model.</p>
</list-item>
<list-item>
<p>d.Nominal plant model: an identified transfer function matrix of the transfer system, frame, and CSI (<xref ref-type="sec" rid="s4-2">Sections 4.2</xref>, <xref ref-type="sec" rid="s4-3">4.3</xref>).</p>
</list-item>
<list-item>
<p>e.Control plant model with uncertainties: See <xref ref-type="sec" rid="s4-4">Section 4.4</xref>.</p>
</list-item>
</list>
</list-item>
<list-item>
<p>2.Experimental data for identification of the plant: Band-limited white noise (BLWN) input-output data is available. The participants have the flexibility of generating their own models if needed.</p>
</list-item>
<list-item>
<p>3.Input data: For RTHS execution, a set of three unscaled historic ground acceleration records: El Centro 1940, Kobe 1995, and Morgan Hill 1984. For tracking control assessments, chirp and BLWN signals are suggested.</p>
</list-item>
<list-item>
<p>4.Sample control system - LQG control strategy: a control law based on a linear quadratic regulator (LQR) approach and a Kalman estimator.</p>
</list-item>
<list-item>
<p>5.Virtual RTHS code package: This tool contains MATLAB scripts, a Simulink model containing all the components shown in <xref ref-type="fig" rid="F13">Figure 13B</xref>, and data sets. A guideline explains the usage of these files.</p>
</list-item>
</list>
</p>
<p>All files will be available on the MECHS website: <ext-link ext-link-type="uri" xlink:href="https://mechs.designsafe-ci.org/">https://mechs.designsafe-ci.org/</ext-link>
</p>
</sec>
<sec id="s4-6">
<title>4.6 Deliverables</title>
<p>The participants are asked to produce the following to address the benchmark problem:</p>
<sec id="s4-6-1">
<title>4.6.1 Tracking control system</title>
<p>The participants have complete freedom to implement control strategies to meet the constraints discussed in <xref ref-type="sec" rid="s3-6">Section 3.6</xref>. If a specific control approach requires the use of a nominal model different than the provided in the companion package, the participant should explain the formulation and implementation of their particular nominal model.</p>
</sec>
<sec id="s4-6-2">
<title>4.6.2 Generation scripts and Simulink model</title>
<p>A set of MATLAB scripts and Simulink models are required that are compatible with the code package. They must execute in real-time since the ultimate goal is to test the proposed tracking control systems in the IISL laboratory.</p>
</sec>
<sec id="s4-6-3">
<title>4.6.3 Tracking performance evaluation</title>
<p>The indices <inline-formula id="inf97">
<mml:math id="m121">
<mml:mrow>
<mml:msub>
<mml:mi mathvariant="bold">J</mml:mi>
<mml:mn>1</mml:mn>
</mml:msub>
</mml:mrow>
</mml:math>
</inline-formula>&#x2014;<inline-formula id="inf98">
<mml:math id="m122">
<mml:mrow>
<mml:msub>
<mml:mi mathvariant="bold">J</mml:mi>
<mml:mn>6</mml:mn>
</mml:msub>
</mml:mrow>
</mml:math>
</inline-formula> explained in <xref ref-type="sec" rid="s3-7">Section 3.7</xref> will assess the tracking control performance of the proposed control system. A set of 10 simulations is required to produce numerical values for these indices.</p>
</sec>
<sec id="s4-6-4">
<title>4.6.4 Overall RTHS performance evaluation</title>
<p>The indices <inline-formula id="inf99">
<mml:math id="m123">
<mml:mrow>
<mml:msub>
<mml:mi mathvariant="bold">J</mml:mi>
<mml:mn>7</mml:mn>
</mml:msub>
</mml:mrow>
</mml:math>
</inline-formula>&#x2014;<inline-formula id="inf100">
<mml:math id="m124">
<mml:mrow>
<mml:msub>
<mml:mi mathvariant="bold">J</mml:mi>
<mml:mn>10</mml:mn>
</mml:msub>
</mml:mrow>
</mml:math>
</inline-formula> from <xref ref-type="sec" rid="s3-7">Section 3.7</xref> evaluate the overall performance of the hybrid system considering the reference structure as the baseline case. A set of 10 simulations will generate a quantitative evaluation of the global performance.</p>
</sec>
<sec id="s4-6-5">
<title>4.6.5 Comparison plots</title>
<p>Participants are encouraged to generate plots for qualitative evaluation of the performance of their controllers.</p>
</sec>
</sec>
</sec>
<sec id="s5">
<title>5 Example implementation: maRTHS</title>
<p>In this section, a sample of a maRTHS implementation is described. This section especially focuses on presenting an identified control plant and control system realization. The evaluation of the sample design is illustrated according to the evaluation criteria in <xref ref-type="sec" rid="s3">Section 3</xref>. Both numerical and experimental results are provided.</p>
<sec id="s5-1">
<title>5.1 Identified control plant and coupler dynamics</title>
<p>The high degree of internal coupling in this maRTHS sample demands a systematic procedure to analyze the control plant to obtain the necessary information for system identification. Experimental data was obtained using four energy levels of BLWN signals to the control plant. A first test was conducted using a 0&#x2013;100&#xa0;Hz BLWN signal input to the bottom actuator while the other was set to zero displacement and the displacement of both actuators were measured. This set of inputs and outputs was used to compute the experimental transfer functions of the plant, which is the first column of Eq. <xref ref-type="disp-formula" rid="e19">(19)</xref>. Likewise, in another test the same signal was used as input to the top actuator while sending a zero to the bottom actuator to generate the second column of the experimental transfer function matrix.</p>
<p>To provide a basic but meaningful nominal model of the control plant, the experimental frame is considered as a 1-DOF second order system with a complex conjugate pair of poles. Even though the hydraulic actuators are of the same model from the manufacturer, they have slightly different behavior in an experimental setup and these dominate each of the columns of the system transfer functions. Thus, a different set of poles is identified for each actuator. The number and type of poles for each system are assumed according to a parametric model previously investigated. The models of the servo-valve and hydraulic dynamics of each actuator are assumed to be represented by first order differential equations (<xref ref-type="bibr" rid="B32">Maghareh et al., 2018</xref>). Consequently, in this sample, each actuator is modeled using two real poles. The bandwidth used for this identification process is 40&#xa0;Hz since the frequencies of interest such as the input signal (ground motion record) and useful natural frequencies of the structure are well below this limit (see <xref ref-type="sec" rid="s2-2">Section 2.2</xref>). Then, a model with two real poles is fitted to the experimental FRF, see <xref ref-type="fig" rid="F21">Figure 21</xref>. Eqs 25 and 26 describe the identified model of the control plant.</p>
<fig id="F21" position="float">
<label>FIGURE 21</label>
<caption>
<p>Control plant identification: Identified plant FRFs vs. experimental plant FRFs.</p>
</caption>
<graphic xlink:href="fbuil-09-1270996-g021.tif"/>
</fig>
<p>Here, <inline-formula id="inf101">
<mml:math id="m125">
<mml:mrow>
<mml:mrow>
<mml:msub>
<mml:mrow>
<mml:mi>n</mml:mi>
<mml:mi>u</mml:mi>
<mml:mi>m</mml:mi>
</mml:mrow>
<mml:mtext>es</mml:mtext>
</mml:msub>
<mml:mrow>
<mml:mfenced open="(" close=")" separators="|">
<mml:mrow>
<mml:mi>s</mml:mi>
</mml:mrow>
</mml:mfenced>
</mml:mrow>
</mml:mrow>
<mml:mo>/</mml:mo>
<mml:mrow>
<mml:msub>
<mml:mrow>
<mml:mi>d</mml:mi>
<mml:mi>e</mml:mi>
<mml:mi>n</mml:mi>
</mml:mrow>
<mml:mtext>es</mml:mtext>
</mml:msub>
<mml:mrow>
<mml:mfenced open="(" close=")" separators="|">
<mml:mrow>
<mml:mi>s</mml:mi>
</mml:mrow>
</mml:mfenced>
</mml:mrow>
</mml:mrow>
</mml:mrow>
</mml:math>
</inline-formula> is the transfer function that represents the behavior of the experimental frame. This system is then transformed to state-space form as<disp-formula id="e27">
<mml:math id="m126">
<mml:mrow>
<mml:mover accent="true">
<mml:mi mathvariant="bold">z</mml:mi>
<mml:mo>&#x2d9;</mml:mo>
</mml:mover>
<mml:mo>&#x3d;</mml:mo>
<mml:mi mathvariant="bold">A</mml:mi>
<mml:mo>&#x22c5;</mml:mo>
<mml:mi mathvariant="bold">z</mml:mi>
<mml:mo>&#x2b;</mml:mo>
<mml:mi mathvariant="bold">B</mml:mi>
<mml:mo>&#x22c5;</mml:mo>
<mml:mi mathvariant="bold">u</mml:mi>
<mml:mtext>&#x2009;</mml:mtext>
<mml:msub>
<mml:mi mathvariant="normal">&#x3b7;</mml:mi>
<mml:mi>m</mml:mi>
</mml:msub>
<mml:mo>&#x3d;</mml:mo>
<mml:mi mathvariant="bold">C</mml:mi>
<mml:mo>&#x22c5;</mml:mo>
<mml:mi mathvariant="bold">z</mml:mi>
<mml:mo>&#x2b;</mml:mo>
<mml:mi mathvariant="bold">D</mml:mi>
<mml:mo>&#x22c5;</mml:mo>
<mml:mi mathvariant="bold">u</mml:mi>
<mml:mo>,</mml:mo>
</mml:mrow>
</mml:math>
<label>(27)</label>
</disp-formula>where the command displacement vector <inline-formula id="inf102">
<mml:math id="m127">
<mml:mrow>
<mml:mi mathvariant="bold">u</mml:mi>
</mml:mrow>
</mml:math>
</inline-formula> is the input to the system; <inline-formula id="inf103">
<mml:math id="m128">
<mml:mrow>
<mml:mi mathvariant="bold">z</mml:mi>
</mml:mrow>
</mml:math>
</inline-formula> contains the states of the identified control plant; <bold>A</bold>, <bold>B</bold>, <bold>C,</bold> and <bold>D</bold> are typical constant matrices in state-space description; and the measured actuator displacement vector, <inline-formula id="inf104">
<mml:math id="m129">
<mml:mrow>
<mml:msub>
<mml:mi mathvariant="bold">&#x3b7;</mml:mi>
<mml:mi>m</mml:mi>
</mml:msub>
</mml:mrow>
</mml:math>
</inline-formula>, is the output vector.</p>
<sec id="s5-1-1">
<title>5.1.1 Coordinate transformation</title>
<p>In this benchmark, the coupler kinematics may be obtained by applying the geometry of the coupler in Eqs <xref ref-type="disp-formula" rid="e21">21</xref>&#x2013;<xref ref-type="disp-formula" rid="e24">24</xref> with <inline-formula id="inf105">
<mml:math id="m130">
<mml:mrow>
<mml:mi>p</mml:mi>
<mml:mo>&#x3d;</mml:mo>
<mml:mn>295.39</mml:mn>
<mml:mtext>&#x2009;mm</mml:mtext>
</mml:mrow>
</mml:math>
</inline-formula> and <inline-formula id="inf106">
<mml:math id="m131">
<mml:mrow>
<mml:mi>&#x3b1;</mml:mi>
<mml:mo>&#x3d;</mml:mo>
<mml:mrow>
<mml:mn>25.46</mml:mn>
<mml:mo>&#xb0;</mml:mo>
</mml:mrow>
</mml:mrow>
</mml:math>
</inline-formula>, see <xref ref-type="fig" rid="F19">Figure 19</xref>. Hence, the transform relation from frame to actuator coordinates is given by Eq. <xref ref-type="disp-formula" rid="e28">28</xref> and the coordinate transform from actuator to frame is provided by Eqs <xref ref-type="disp-formula" rid="e29">29</xref>, <xref ref-type="disp-formula" rid="e30">30</xref> (see <xref ref-type="fig" rid="F13">Figure 13B</xref> or 22(a) for references).<disp-formula id="e28">
<mml:math id="m132">
<mml:mrow>
<mml:mrow>
<mml:mfenced open="[" close="]" separators="|">
<mml:mrow>
<mml:mtable columnalign="center">
<mml:mtr>
<mml:mtd>
<mml:msub>
<mml:mi>&#x3b7;</mml:mi>
<mml:mrow>
<mml:mtext>ns</mml:mtext>
<mml:mo>,</mml:mo>
<mml:mn>1</mml:mn>
</mml:mrow>
</mml:msub>
</mml:mtd>
</mml:mtr>
<mml:mtr>
<mml:mtd>
<mml:msub>
<mml:mi>&#x3b7;</mml:mi>
<mml:mrow>
<mml:mtext>ns</mml:mtext>
<mml:mo>,</mml:mo>
<mml:mn>2</mml:mn>
</mml:mrow>
</mml:msub>
</mml:mtd>
</mml:mtr>
</mml:mtable>
</mml:mrow>
</mml:mfenced>
</mml:mrow>
<mml:mo>&#x3d;</mml:mo>
<mml:msub>
<mml:mi>&#x3c8;</mml:mi>
<mml:mrow>
<mml:mtext>ns</mml:mtext>
<mml:mo>,</mml:mo>
<mml:mn>4</mml:mn>
</mml:mrow>
</mml:msub>
<mml:mrow>
<mml:mfenced open="[" close="]" separators="|">
<mml:mrow>
<mml:mtable columnalign="center">
<mml:mtr>
<mml:mtd>
<mml:mn>1</mml:mn>
</mml:mtd>
</mml:mtr>
<mml:mtr>
<mml:mtd>
<mml:mn>1</mml:mn>
</mml:mtd>
</mml:mtr>
</mml:mtable>
</mml:mrow>
</mml:mfenced>
</mml:mrow>
<mml:mo>&#x2b;</mml:mo>
<mml:mn>295.39</mml:mn>
<mml:mrow>
<mml:mfenced open="[" close="]" separators="|">
<mml:mrow>
<mml:mtable columnalign="center">
<mml:mtr>
<mml:mtd>
<mml:mrow>
<mml:mi>cos</mml:mi>
<mml:mrow>
<mml:mfenced open="(" close=")" separators="|">
<mml:mrow>
<mml:msub>
<mml:mi>&#x3c8;</mml:mi>
<mml:mrow>
<mml:mtext>ns</mml:mtext>
<mml:mo>,</mml:mo>
<mml:mn>28</mml:mn>
</mml:mrow>
</mml:msub>
<mml:mo>&#x2212;</mml:mo>
<mml:mn>25.46</mml:mn>
<mml:mfrac>
<mml:mrow>
<mml:mi>&#x3c0;</mml:mi>
</mml:mrow>
<mml:mrow>
<mml:mn>180</mml:mn>
</mml:mrow>
</mml:mfrac>
</mml:mrow>
</mml:mfenced>
</mml:mrow>
<mml:mo>&#x2212;</mml:mo>
<mml:mi>cos</mml:mi>
<mml:mrow>
<mml:mfenced open="(" close=")" separators="|">
<mml:mrow>
<mml:mo>&#x2212;</mml:mo>
<mml:mn>25.46</mml:mn>
<mml:mfrac>
<mml:mrow>
<mml:mi>&#x3c0;</mml:mi>
</mml:mrow>
<mml:mrow>
<mml:mn>180</mml:mn>
</mml:mrow>
</mml:mfrac>
</mml:mrow>
</mml:mfenced>
</mml:mrow>
</mml:mrow>
</mml:mtd>
</mml:mtr>
<mml:mtr>
<mml:mtd>
<mml:mrow>
<mml:mi>cos</mml:mi>
<mml:mrow>
<mml:mfenced open="(" close=")" separators="|">
<mml:mrow>
<mml:msub>
<mml:mi>&#x3c8;</mml:mi>
<mml:mrow>
<mml:mtext>ns</mml:mtext>
<mml:mo>,</mml:mo>
<mml:mn>28</mml:mn>
</mml:mrow>
</mml:msub>
<mml:mo>&#x2b;</mml:mo>
<mml:mn>25.46</mml:mn>
<mml:mfrac>
<mml:mrow>
<mml:mi>&#x3c0;</mml:mi>
</mml:mrow>
<mml:mrow>
<mml:mn>180</mml:mn>
</mml:mrow>
</mml:mfrac>
</mml:mrow>
</mml:mfenced>
</mml:mrow>
<mml:mo>&#x2212;</mml:mo>
<mml:mi>cos</mml:mi>
<mml:mrow>
<mml:mfenced open="(" close=")" separators="|">
<mml:mrow>
<mml:mn>25.46</mml:mn>
<mml:mfrac>
<mml:mrow>
<mml:mi>&#x3c0;</mml:mi>
</mml:mrow>
<mml:mrow>
<mml:mn>180</mml:mn>
</mml:mrow>
</mml:mfrac>
</mml:mrow>
</mml:mfenced>
</mml:mrow>
</mml:mrow>
</mml:mtd>
</mml:mtr>
</mml:mtable>
</mml:mrow>
</mml:mfenced>
</mml:mrow>
<mml:mo>,</mml:mo>
</mml:mrow>
</mml:math>
<label>(28)</label>
</disp-formula>
<disp-formula id="e29">
<mml:math id="m133">
<mml:mrow>
<mml:msub>
<mml:mover accent="true">
<mml:mi>&#x3c8;</mml:mi>
<mml:mo>&#x5e;</mml:mo>
</mml:mover>
<mml:mrow>
<mml:mi>m</mml:mi>
<mml:mo>,</mml:mo>
<mml:mn>28</mml:mn>
</mml:mrow>
</mml:msub>
<mml:mo>&#x3d;</mml:mo>
<mml:msup>
<mml:mi>sin</mml:mi>
<mml:mrow>
<mml:mo>&#x2212;</mml:mo>
<mml:mn>1</mml:mn>
</mml:mrow>
</mml:msup>
<mml:mrow>
<mml:mfenced open="[" close="]" separators="|">
<mml:mrow>
<mml:mfrac>
<mml:mrow>
<mml:msub>
<mml:mi>&#x3b7;</mml:mi>
<mml:mrow>
<mml:mi>m</mml:mi>
<mml:mo>,</mml:mo>
<mml:mn>1</mml:mn>
</mml:mrow>
</mml:msub>
<mml:mo>&#x2212;</mml:mo>
<mml:msub>
<mml:mi>&#x3b7;</mml:mi>
<mml:mrow>
<mml:mi>m</mml:mi>
<mml:mo>,</mml:mo>
<mml:mn>2</mml:mn>
</mml:mrow>
</mml:msub>
</mml:mrow>
<mml:mrow>
<mml:mn>2</mml:mn>
<mml:mo>&#xd7;</mml:mo>
<mml:mn>295.39</mml:mn>
<mml:mo>&#x2061;</mml:mo>
<mml:mi>sin</mml:mi>
<mml:mrow>
<mml:mfenced open="(" close=")" separators="|">
<mml:mrow>
<mml:mn>25.46</mml:mn>
<mml:mfrac>
<mml:mrow>
<mml:mi>&#x3c0;</mml:mi>
</mml:mrow>
<mml:mrow>
<mml:mn>180</mml:mn>
</mml:mrow>
</mml:mfrac>
</mml:mrow>
</mml:mfenced>
</mml:mrow>
</mml:mrow>
</mml:mfrac>
</mml:mrow>
</mml:mfenced>
</mml:mrow>
<mml:mo>,</mml:mo>
</mml:mrow>
</mml:math>
<label>(29)</label>
</disp-formula>
<disp-formula id="e30">
<mml:math id="m134">
<mml:mrow>
<mml:msub>
<mml:mover accent="true">
<mml:mi>&#x3c8;</mml:mi>
<mml:mo>&#x5e;</mml:mo>
</mml:mover>
<mml:mrow>
<mml:mi>m</mml:mi>
<mml:mo>,</mml:mo>
<mml:mn>4</mml:mn>
</mml:mrow>
</mml:msub>
<mml:mo>&#x3d;</mml:mo>
<mml:msub>
<mml:mi>&#x3b7;</mml:mi>
<mml:mrow>
<mml:mtext>ns</mml:mtext>
<mml:mo>,</mml:mo>
<mml:mn>1</mml:mn>
</mml:mrow>
</mml:msub>
<mml:mo>&#x2212;</mml:mo>
<mml:mn>295.39</mml:mn>
<mml:mrow>
<mml:mfenced open="[" close="]" separators="|">
<mml:mrow>
<mml:mi>cos</mml:mi>
<mml:mrow>
<mml:mfenced open="(" close=")" separators="|">
<mml:mrow>
<mml:msub>
<mml:mover accent="true">
<mml:mi>&#x3c8;</mml:mi>
<mml:mo>&#x5e;</mml:mo>
</mml:mover>
<mml:mrow>
<mml:mi>m</mml:mi>
<mml:mo>,</mml:mo>
<mml:mn>28</mml:mn>
</mml:mrow>
</mml:msub>
<mml:mo>&#x2212;</mml:mo>
<mml:mn>25.46</mml:mn>
<mml:mfrac>
<mml:mrow>
<mml:mi>&#x3c0;</mml:mi>
</mml:mrow>
<mml:mrow>
<mml:mn>180</mml:mn>
</mml:mrow>
</mml:mfrac>
</mml:mrow>
</mml:mfenced>
</mml:mrow>
<mml:mo>&#x2212;</mml:mo>
<mml:mi>cos</mml:mi>
<mml:mrow>
<mml:mfenced open="(" close=")" separators="|">
<mml:mrow>
<mml:mn>25.46</mml:mn>
<mml:mfrac>
<mml:mrow>
<mml:mi>&#x3c0;</mml:mi>
</mml:mrow>
<mml:mrow>
<mml:mn>180</mml:mn>
</mml:mrow>
</mml:mfrac>
</mml:mrow>
</mml:mfenced>
</mml:mrow>
</mml:mrow>
</mml:mfenced>
</mml:mrow>
<mml:mo>.</mml:mo>
</mml:mrow>
</mml:math>
<label>(30)</label>
</disp-formula>
</p>
</sec>
</sec>
<sec id="s5-2">
<title>5.2 Feedback force estimation</title>
<p>The RTHS scheme presented in <xref ref-type="fig" rid="F13">Figure 13B</xref> shows the feedback force being measured directly from the control plant, which is typical in RTHS experiments. Despite having load cells available while executing this maRTHS sample in the IISL, it would not be correct to use these measured forces directly. These measurements contain very large inertial forces associated with the coupler, which is not part of the original structural system (the whole frame). Thus, the force that is developed only by the frame must be estimated.</p>
<p>This sample shows a practical approach that uses the FE model of the experimental substructure discussed in <xref ref-type="sec" rid="s3-3">Section 3.3</xref>. The estimated frame response <inline-formula id="inf107">
<mml:math id="m135">
<mml:mrow>
<mml:msub>
<mml:mover accent="true">
<mml:mi mathvariant="bold">&#x3c8;</mml:mi>
<mml:mo>&#x5e;</mml:mo>
</mml:mover>
<mml:mi>m</mml:mi>
</mml:msub>
</mml:mrow>
</mml:math>
</inline-formula> is differentiated twice to obtain its corresponding velocity and acceleration and, similar to Eq. <xref ref-type="disp-formula" rid="e7">(7)</xref>, the feedback force would be given by Eq. <xref ref-type="disp-formula" rid="e31">(31)</xref>. This implementation is shown in <xref ref-type="fig" rid="F22">Figure 22A</xref>.<disp-formula id="e31">
<mml:math id="m136">
<mml:mrow>
<mml:msub>
<mml:mover accent="true">
<mml:mi mathvariant="bold">f</mml:mi>
<mml:mo>&#x5e;</mml:mo>
</mml:mover>
<mml:mi>m</mml:mi>
</mml:msub>
<mml:mo>&#x3d;</mml:mo>
<mml:msub>
<mml:mi mathvariant="bold">M</mml:mi>
<mml:mtext>es</mml:mtext>
</mml:msub>
<mml:mo>&#x22c5;</mml:mo>
<mml:msub>
<mml:mover accent="true">
<mml:mover accent="true">
<mml:mi mathvariant="bold">&#x3c8;</mml:mi>
<mml:mo>&#xa8;</mml:mo>
</mml:mover>
<mml:mo>&#x5e;</mml:mo>
</mml:mover>
<mml:mi>m</mml:mi>
</mml:msub>
<mml:mo>&#x2b;</mml:mo>
<mml:msub>
<mml:mi mathvariant="bold">C</mml:mi>
<mml:mtext>es</mml:mtext>
</mml:msub>
<mml:mo>&#x22c5;</mml:mo>
<mml:msub>
<mml:mover accent="true">
<mml:mover accent="true">
<mml:mi mathvariant="bold">&#x3c8;</mml:mi>
<mml:mo>&#x2d9;</mml:mo>
</mml:mover>
<mml:mo>&#x5e;</mml:mo>
</mml:mover>
<mml:mi>m</mml:mi>
</mml:msub>
<mml:mo>&#x2b;</mml:mo>
<mml:msub>
<mml:mi mathvariant="bold">K</mml:mi>
<mml:mtext>es</mml:mtext>
</mml:msub>
<mml:mo>&#x22c5;</mml:mo>
<mml:msub>
<mml:mover accent="true">
<mml:mi mathvariant="bold">&#x3c8;</mml:mi>
<mml:mo>&#x5e;</mml:mo>
</mml:mover>
<mml:mi>m</mml:mi>
</mml:msub>
<mml:mo>.</mml:mo>
</mml:mrow>
</mml:math>
<label>(31)</label>
</disp-formula>
</p>
<fig id="F22" position="float">
<label>FIGURE 22</label>
<caption>
<p>maRTHS and control approach implementation. <bold>(A)</bold> maRTHS implementation, <bold>(B)</bold> Tracking control and estimation scheme.</p>
</caption>
<graphic xlink:href="fbuil-09-1270996-g022.tif"/>
</fig>
<p>The code for this implementation is included in the companion package. Participants can use the identified model developed in this section, which is also available in the companion package, or choose another model based on a preferred methodology.</p>
</sec>
<sec id="s5-3">
<title>5.3 Control system: LQG</title>
<p>Among the vast variety of control methodologies feasible for RTHS, this sample is based on an optimal control strategy that is not intended to be competitive. This approach is selected here because it has acceptable performance and at the same time is simple enough to focus on the important features of this maRTHS while overcoming the control requirements and challenges from a hybrid simulation perspective. An LQG control scheme is chosen due to its versatility in introducing uncertainty in state-space form as added noise.</p>
<p>The LQG controller consists of two components in closed loop: (1) a deterministic LQR which assumes full state feedback, and (2) a Kalman filter that estimates the required states to be fed back to the LQR control law. The strategy for including the target signal <inline-formula id="inf108">
<mml:math id="m137">
<mml:mrow>
<mml:msub>
<mml:mi mathvariant="bold">&#x3b7;</mml:mi>
<mml:mtext>ns</mml:mtext>
</mml:msub>
</mml:mrow>
</mml:math>
</inline-formula> is to incorporate the error <inline-formula id="inf109">
<mml:math id="m138">
<mml:mrow>
<mml:mi mathvariant="bold">&#x3b5;</mml:mi>
<mml:mo>&#x3d;</mml:mo>
<mml:msub>
<mml:mi mathvariant="bold">&#x3b7;</mml:mi>
<mml:mtext>ns</mml:mtext>
</mml:msub>
<mml:mo>&#x2212;</mml:mo>
<mml:msub>
<mml:mi mathvariant="bold">&#x3b7;</mml:mi>
<mml:mi>m</mml:mi>
</mml:msub>
</mml:mrow>
</mml:math>
</inline-formula> by augmenting and additional state <inline-formula id="inf110">
<mml:math id="m139">
<mml:mrow>
<mml:msub>
<mml:mover accent="true">
<mml:mi mathvariant="bold">z</mml:mi>
<mml:mo>&#x2d9;</mml:mo>
</mml:mover>
<mml:mrow>
<mml:mi>e</mml:mi>
<mml:mi>r</mml:mi>
<mml:mi>r</mml:mi>
</mml:mrow>
</mml:msub>
<mml:mo>&#x3d;</mml:mo>
<mml:mi mathvariant="bold">&#x3b5;</mml:mi>
</mml:mrow>
</mml:math>
</inline-formula>, and find the optimal gain for the augmented plant, Eq. <xref ref-type="disp-formula" rid="e32">(32)</xref>. The trade-off between performance and control effort is defined by selecting appropriate ratios for the weighting matrices <bold>Q</bold> and <bold>R</bold>, to minimize the cost function established by Eq. <xref ref-type="disp-formula" rid="e34">(34)</xref>. Finally, one solves for the gains required to drive the error state to zero. Thus, the control law, <bold>u</bold>, is computed with Eq. <xref ref-type="disp-formula" rid="e35">(35)</xref>. The MATLAB function &#x2018;<italic>lqr&#x2019;</italic> with matrices <inline-formula id="inf111">
<mml:math id="m140">
<mml:mrow>
<mml:msub>
<mml:mi mathvariant="bold">A</mml:mi>
<mml:mi>a</mml:mi>
</mml:msub>
</mml:mrow>
</mml:math>
</inline-formula>, <inline-formula id="inf112">
<mml:math id="m141">
<mml:mrow>
<mml:msub>
<mml:mi mathvariant="bold">B</mml:mi>
<mml:mi>a</mml:mi>
</mml:msub>
</mml:mrow>
</mml:math>
</inline-formula>, <bold>Q</bold>, and <bold>R</bold>, provides the gains <inline-formula id="inf113">
<mml:math id="m142">
<mml:mrow>
<mml:msub>
<mml:mi mathvariant="bold">K</mml:mi>
<mml:mi>p</mml:mi>
</mml:msub>
</mml:mrow>
</mml:math>
</inline-formula> and <inline-formula id="inf114">
<mml:math id="m143">
<mml:mrow>
<mml:msub>
<mml:mi mathvariant="bold">K</mml:mi>
<mml:mi>&#x3b5;</mml:mi>
</mml:msub>
</mml:mrow>
</mml:math>
</inline-formula> to realize the control input <bold>u</bold>.<disp-formula id="e32">
<mml:math id="m144">
<mml:mrow>
<mml:msub>
<mml:mover accent="true">
<mml:mi mathvariant="bold">z</mml:mi>
<mml:mo>&#x2d9;</mml:mo>
</mml:mover>
<mml:mi>a</mml:mi>
</mml:msub>
<mml:mo>&#x3d;</mml:mo>
<mml:msub>
<mml:mi mathvariant="bold">A</mml:mi>
<mml:mi>a</mml:mi>
</mml:msub>
<mml:msub>
<mml:mi mathvariant="bold">z</mml:mi>
<mml:mi mathvariant="bold-italic">a</mml:mi>
</mml:msub>
<mml:mo>&#x2b;</mml:mo>
<mml:msub>
<mml:mi mathvariant="bold">B</mml:mi>
<mml:mi>a</mml:mi>
</mml:msub>
<mml:mi mathvariant="bold">u</mml:mi>
<mml:mo>&#x2b;</mml:mo>
<mml:mi mathvariant="bold">H</mml:mi>
<mml:msub>
<mml:mi mathvariant="bold">&#x3b7;</mml:mi>
<mml:mtext>ns</mml:mtext>
</mml:msub>
<mml:mo>,</mml:mo>
</mml:mrow>
</mml:math>
<label>(32)</label>
</disp-formula>where:<disp-formula id="e33">
<mml:math id="m145">
<mml:mrow>
<mml:msub>
<mml:mi mathvariant="bold">z</mml:mi>
<mml:mi>a</mml:mi>
</mml:msub>
<mml:mo>&#x3d;</mml:mo>
<mml:mrow>
<mml:mfenced open="[" close="]" separators="|">
<mml:mrow>
<mml:mtable columnalign="center">
<mml:mtr>
<mml:mtd>
<mml:mi mathvariant="bold">z</mml:mi>
</mml:mtd>
</mml:mtr>
<mml:mtr>
<mml:mtd>
<mml:msub>
<mml:mi mathvariant="bold">z</mml:mi>
<mml:mrow>
<mml:mi>e</mml:mi>
<mml:mi>r</mml:mi>
<mml:mi>r</mml:mi>
</mml:mrow>
</mml:msub>
</mml:mtd>
</mml:mtr>
</mml:mtable>
</mml:mrow>
</mml:mfenced>
</mml:mrow>
<mml:mo>,</mml:mo>
<mml:msub>
<mml:mi mathvariant="bold">A</mml:mi>
<mml:mi>a</mml:mi>
</mml:msub>
<mml:mo>&#x3d;</mml:mo>
<mml:mrow>
<mml:mfenced open="[" close="]" separators="|">
<mml:mrow>
<mml:mtable columnalign="center">
<mml:mtr>
<mml:mtd>
<mml:mi mathvariant="bold">A</mml:mi>
</mml:mtd>
<mml:mtd>
<mml:mn mathvariant="bold">0</mml:mn>
</mml:mtd>
</mml:mtr>
<mml:mtr>
<mml:mtd>
<mml:mrow>
<mml:mo>&#x2212;</mml:mo>
<mml:mi mathvariant="bold">C</mml:mi>
</mml:mrow>
</mml:mtd>
<mml:mtd>
<mml:mn mathvariant="bold">0</mml:mn>
</mml:mtd>
</mml:mtr>
</mml:mtable>
</mml:mrow>
</mml:mfenced>
</mml:mrow>
<mml:mo>,</mml:mo>
<mml:msub>
<mml:mi mathvariant="bold">B</mml:mi>
<mml:mi>a</mml:mi>
</mml:msub>
<mml:mo>&#x3d;</mml:mo>
<mml:mrow>
<mml:mfenced open="[" close="]" separators="|">
<mml:mrow>
<mml:mtable columnalign="center">
<mml:mtr>
<mml:mtd>
<mml:mi mathvariant="bold">B</mml:mi>
</mml:mtd>
</mml:mtr>
<mml:mtr>
<mml:mtd>
<mml:mn mathvariant="bold">0</mml:mn>
</mml:mtd>
</mml:mtr>
</mml:mtable>
</mml:mrow>
</mml:mfenced>
</mml:mrow>
<mml:mo>,</mml:mo>
<mml:mi mathvariant="bold">H</mml:mi>
<mml:mo>&#x3d;</mml:mo>
<mml:mrow>
<mml:mfenced open="[" close="]" separators="|">
<mml:mrow>
<mml:mtable columnalign="center">
<mml:mtr>
<mml:mtd>
<mml:mn mathvariant="bold">0</mml:mn>
</mml:mtd>
</mml:mtr>
<mml:mtr>
<mml:mtd>
<mml:mn mathvariant="bold">1</mml:mn>
</mml:mtd>
</mml:mtr>
</mml:mtable>
</mml:mrow>
</mml:mfenced>
</mml:mrow>
</mml:mrow>
</mml:math>
<label>(33)</label>
</disp-formula>
<disp-formula id="e34">
<mml:math id="m146">
<mml:mrow>
<mml:mi>J</mml:mi>
<mml:mo>&#x3d;</mml:mo>
<mml:mrow>
<mml:mstyle displaystyle="true">
<mml:munderover>
<mml:mo>&#x222b;</mml:mo>
<mml:mn>0</mml:mn>
<mml:mi>&#x221e;</mml:mi>
</mml:munderover>
</mml:mstyle>
<mml:mrow>
<mml:mfenced open="(" close=")" separators="|">
<mml:mrow>
<mml:msubsup>
<mml:mi mathvariant="bold">z</mml:mi>
<mml:mi>a</mml:mi>
<mml:mi>T</mml:mi>
</mml:msubsup>
<mml:mo>&#x22c5;</mml:mo>
<mml:mi mathvariant="bold">Q</mml:mi>
<mml:mo>&#x22c5;</mml:mo>
<mml:msub>
<mml:mi mathvariant="bold">z</mml:mi>
<mml:mi>a</mml:mi>
</mml:msub>
<mml:mo>&#x2b;</mml:mo>
<mml:msup>
<mml:mi mathvariant="bold">u</mml:mi>
<mml:mi>T</mml:mi>
</mml:msup>
<mml:mo>&#x22c5;</mml:mo>
<mml:mi mathvariant="bold">R</mml:mi>
<mml:mo>&#x22c5;</mml:mo>
<mml:mi mathvariant="bold">u</mml:mi>
</mml:mrow>
</mml:mfenced>
</mml:mrow>
</mml:mrow>
</mml:mrow>
</mml:math>
<label>(34)</label>
</disp-formula>
<disp-formula id="e35">
<mml:math id="m147">
<mml:mrow>
<mml:mi mathvariant="bold">u</mml:mi>
<mml:mo>&#x3d;</mml:mo>
<mml:mrow>
<mml:mfenced open="[" close="]" separators="|">
<mml:mrow>
<mml:mtable columnalign="center">
<mml:mtr>
<mml:mtd>
<mml:mrow>
<mml:mo>&#x2212;</mml:mo>
<mml:msub>
<mml:mi mathvariant="bold">K</mml:mi>
<mml:mi>p</mml:mi>
</mml:msub>
</mml:mrow>
</mml:mtd>
<mml:mtd>
<mml:mrow>
<mml:mo>&#x2212;</mml:mo>
<mml:msub>
<mml:mi mathvariant="bold">K</mml:mi>
<mml:mi>&#x3b5;</mml:mi>
</mml:msub>
</mml:mrow>
</mml:mtd>
</mml:mtr>
</mml:mtable>
</mml:mrow>
</mml:mfenced>
</mml:mrow>
<mml:mrow>
<mml:mfenced open="[" close="]" separators="|">
<mml:mrow>
<mml:mtable columnalign="center">
<mml:mtr>
<mml:mtd>
<mml:mi mathvariant="bold">z</mml:mi>
</mml:mtd>
</mml:mtr>
<mml:mtr>
<mml:mtd>
<mml:mi mathvariant="bold">&#x3b5;</mml:mi>
</mml:mtd>
</mml:mtr>
</mml:mtable>
</mml:mrow>
</mml:mfenced>
</mml:mrow>
</mml:mrow>
</mml:math>
<label>(35)</label>
</disp-formula>
</p>
<p>However, in this maRTHS experiment the states, <bold>z</bold>, are not available, <italic>i.e.</italic>, the only measurements available are the measured displacements of the actuators, <inline-formula id="inf115">
<mml:math id="m148">
<mml:mrow>
<mml:msub>
<mml:mi mathvariant="bold">&#x3b7;</mml:mi>
<mml:mi>m</mml:mi>
</mml:msub>
</mml:mrow>
</mml:math>
</inline-formula>. Therefore, estimation of states is necessary to feed them to the control law (Eq. <xref ref-type="disp-formula" rid="e35">(35)</xref>). A Kalman filter is used to overcome this limitation by providing estimated states <inline-formula id="inf116">
<mml:math id="m149">
<mml:mrow>
<mml:mover accent="true">
<mml:mi mathvariant="bold">z</mml:mi>
<mml:mo>&#x5e;</mml:mo>
</mml:mover>
</mml:mrow>
</mml:math>
</inline-formula> and filtered response <inline-formula id="inf117">
<mml:math id="m150">
<mml:mrow>
<mml:msub>
<mml:mover accent="true">
<mml:mi mathvariant="bold">&#x3b7;</mml:mi>
<mml:mo>&#x5e;</mml:mo>
</mml:mover>
<mml:mi>m</mml:mi>
</mml:msub>
</mml:mrow>
</mml:math>
</inline-formula> so that the control system is implemented as shown in <xref ref-type="fig" rid="F22">Figure 22B</xref>. Considering that the process noise and measurement noise covariance matrices are additive with known distributions, Eq. <xref ref-type="disp-formula" rid="e27">(27)</xref> can be written as<disp-formula id="e36">
<mml:math id="m187">
<mml:mrow>
<mml:mover accent="true">
<mml:mi mathvariant="bold">z</mml:mi>
<mml:mo>&#x2d9;</mml:mo>
</mml:mover>
<mml:mo>&#x3d;</mml:mo>
<mml:mi mathvariant="bold">A</mml:mi>
<mml:mo>&#x22c5;</mml:mo>
<mml:mi mathvariant="bold">z</mml:mi>
<mml:mo>&#x2b;</mml:mo>
<mml:mi mathvariant="bold">B</mml:mi>
<mml:mo>&#x22c5;</mml:mo>
<mml:mi mathvariant="bold">u</mml:mi>
<mml:mo>&#x2b;</mml:mo>
<mml:msub>
<mml:mi mathvariant="bold">w</mml:mi>
<mml:mi>k</mml:mi>
</mml:msub>
<mml:mtext>&#x2009;</mml:mtext>
<mml:msub>
<mml:mi mathvariant="bold">&#x3b7;</mml:mi>
<mml:mi>m</mml:mi>
</mml:msub>
<mml:mo>&#x3d;</mml:mo>
<mml:mi mathvariant="bold">C</mml:mi>
<mml:mo>&#x22c5;</mml:mo>
<mml:mi mathvariant="bold">z</mml:mi>
<mml:mo>&#x2b;</mml:mo>
<mml:mi mathvariant="bold">D</mml:mi>
<mml:mo>&#x22c5;</mml:mo>
<mml:mi mathvariant="bold">u</mml:mi>
<mml:mo>&#x2b;</mml:mo>
<mml:msub>
<mml:mi mathvariant="bold">v</mml:mi>
<mml:mi>k</mml:mi>
</mml:msub>
</mml:mrow>
</mml:math>
<label>(36)</label>
</disp-formula>where the distribution of the process noise is assumed to be <inline-formula id="inf118">
<mml:math id="m152">
<mml:mrow>
<mml:msub>
<mml:mi mathvariant="bold">w</mml:mi>
<mml:mi>k</mml:mi>
</mml:msub>
<mml:mo>&#x223c;</mml:mo>
<mml:mi>N</mml:mi>
<mml:mrow>
<mml:mfenced open="(" close=")" separators="|">
<mml:mrow>
<mml:mn mathvariant="bold">0</mml:mn>
<mml:mo>,</mml:mo>
<mml:mi mathvariant="bold">Q</mml:mi>
</mml:mrow>
</mml:mfenced>
</mml:mrow>
</mml:mrow>
</mml:math>
</inline-formula>, and the distribution of the measurement noise is assumed to be <inline-formula id="inf119">
<mml:math id="m153">
<mml:mrow>
<mml:msub>
<mml:mi mathvariant="bold">v</mml:mi>
<mml:mi>k</mml:mi>
</mml:msub>
<mml:mo>&#x223c;</mml:mo>
<mml:mi>N</mml:mi>
<mml:mrow>
<mml:mfenced open="(" close=")" separators="|">
<mml:mrow>
<mml:mn mathvariant="bold">0</mml:mn>
<mml:mo>,</mml:mo>
<mml:mi mathvariant="bold">R</mml:mi>
</mml:mrow>
</mml:mfenced>
</mml:mrow>
<mml:mo>.</mml:mo>
</mml:mrow>
</mml:math>
</inline-formula>
</p>
<p>The final values for <bold>Q</bold>, <bold>R</bold> and the Kalman estimator terms can be found in the companion package.</p>
</sec>
<sec id="s5-4">
<title>5.4 Experimental results and evaluation</title>
<p>The following figures and table present a qualitative and quantitative assessment of the performance of the sample LQG control system on the maRTHS based on experimental results. The input to the reference and hybrid system for this example is the El Centro earthquake historic record with a scaling factor of 0.40. See <xref ref-type="sec" rid="s4-5">Section 4.5</xref> for additional ground motion records. <xref ref-type="fig" rid="F23">Figures 23</xref>&#x2013;<xref ref-type="fig" rid="F25">25</xref> shows qualitatively the tracking and global RTHS performance of the interface node (node 4 in <xref ref-type="fig" rid="F5">Figure 5</xref>), while <xref ref-type="table" rid="T3">Table 3</xref> presents the metrics defined by the performance indices (see <xref ref-type="sec" rid="s3-7">Section 3.7</xref>) which includes not only the interface node information, but also additional nodes at the upper stories of the frame for a more comprehensive evaluation of the RTHS.</p>
<fig id="F23" position="float">
<label>FIGURE 23</label>
<caption>
<p>maRTHS tracking performance in actuator coordinates. <bold>(A)</bold> Tracking actuator 1: Target and measured actuator displacements, <bold>(B)</bold> Tracking actuator 2: Target and measured actuator displacements.</p>
</caption>
<graphic xlink:href="fbuil-09-1270996-g023.tif"/>
</fig>
<fig id="F24" position="float">
<label>FIGURE 24</label>
<caption>
<p>maRTHS tracking performance at the interface node (frame coordinates). <bold>(A)</bold> Tracking of translational DOF: Target numerical substructure vs estimated experimental responses, <bold>(B)</bold> Tracking of rotational DOF: Target numerical substructure vs estimated experimental responses.</p>
</caption>
<graphic xlink:href="fbuil-09-1270996-g024.tif"/>
</fig>
<fig id="F25" position="float">
<label>FIGURE 25</label>
<caption>
<p>maRTHS global performance. <bold>(A)</bold> Translational DOF: Reference vs estimated experimental response (DOF <italic>&#x03c8;</italic>
<sub>4</sub>), <bold>(B)</bold> Rotational DOF: Reference vs estimated experimental response (DOF <italic>&#x03c8;</italic>
<sub>28</sub>).</p>
</caption>
<graphic xlink:href="fbuil-09-1270996-g025.tif"/>
</fig>
<table-wrap id="T3" position="float">
<label>TABLE 3</label>
<caption>
<p>RTHS and vRTHS evaluation indices.</p>
</caption>
<table>
<thead valign="top">
<tr>
<th align="center">Performance criterion</th>
<th align="center">Criterion</th>
<th align="center">Performance indices</th>
<th align="center">Units</th>
<th align="center">RTHS</th>
<th align="center">vRTHS</th>
</tr>
</thead>
<tbody valign="top">
<tr>
<td rowspan="6" align="center">Tracking Control</td>
<td rowspan="2" align="center">Time delay</td>
<td align="center">
<inline-formula id="inf122">
<mml:math id="m156">
<mml:mrow>
<mml:msub>
<mml:mi>J</mml:mi>
<mml:mn>1,1</mml:mn>
</mml:msub>
</mml:mrow>
</mml:math>
</inline-formula>
</td>
<td align="center">ms</td>
<td align="center">&#x2212;13.7</td>
<td align="center">2.0</td>
</tr>
<tr>
<td align="center">
<inline-formula id="inf123">
<mml:math id="m157">
<mml:mrow>
<mml:msub>
<mml:mi>J</mml:mi>
<mml:mn>1,2</mml:mn>
</mml:msub>
</mml:mrow>
</mml:math>
</inline-formula>
</td>
<td align="center">ms</td>
<td align="center">2.9</td>
<td align="center">2.9</td>
</tr>
<tr>
<td rowspan="2" align="center">Normalized tracking error</td>
<td align="center">
<inline-formula id="inf124">
<mml:math id="m158">
<mml:mrow>
<mml:msub>
<mml:mi>J</mml:mi>
<mml:mn>2,1</mml:mn>
</mml:msub>
</mml:mrow>
</mml:math>
</inline-formula>
</td>
<td align="center">%</td>
<td align="center">23.8</td>
<td align="center">4.8</td>
</tr>
<tr>
<td align="center">
<inline-formula id="inf125">
<mml:math id="m159">
<mml:mrow>
<mml:msub>
<mml:mi>J</mml:mi>
<mml:mn>2,2</mml:mn>
</mml:msub>
</mml:mrow>
</mml:math>
</inline-formula>
</td>
<td align="center">%</td>
<td align="center">13.2</td>
<td align="center">9.4</td>
</tr>
<tr>
<td rowspan="2" align="center">Max. peak tracking error</td>
<td align="center">
<inline-formula id="inf126">
<mml:math id="m160">
<mml:mrow>
<mml:msub>
<mml:mi>J</mml:mi>
<mml:mn>3,1</mml:mn>
</mml:msub>
</mml:mrow>
</mml:math>
</inline-formula>
</td>
<td align="center">%</td>
<td align="center">26.9</td>
<td align="center">5.3</td>
</tr>
<tr>
<td align="center">
<inline-formula id="inf127">
<mml:math id="m161">
<mml:mrow>
<mml:msub>
<mml:mi>J</mml:mi>
<mml:mn>3,2</mml:mn>
</mml:msub>
</mml:mrow>
</mml:math>
</inline-formula>
</td>
<td align="center">%</td>
<td align="center">13.7</td>
<td align="center">10.3</td>
</tr>
<tr>
<td rowspan="6" align="center">Estimation</td>
<td rowspan="2" align="center">Time delay</td>
<td align="center">
<inline-formula id="inf128">
<mml:math id="m162">
<mml:mrow>
<mml:msub>
<mml:mi>J</mml:mi>
<mml:mn>4,1</mml:mn>
</mml:msub>
</mml:mrow>
</mml:math>
</inline-formula>
</td>
<td align="center">ms</td>
<td align="center">1.9</td>
<td align="center">1.9</td>
</tr>
<tr>
<td align="center">
<inline-formula id="inf129">
<mml:math id="m163">
<mml:mrow>
<mml:msub>
<mml:mi>J</mml:mi>
<mml:mn>4,2</mml:mn>
</mml:msub>
</mml:mrow>
</mml:math>
</inline-formula>
</td>
<td align="center">ms</td>
<td align="center">4.9</td>
<td align="center">2.9</td>
</tr>
<tr>
<td rowspan="2" align="center">Normalized estimation error</td>
<td align="center">
<inline-formula id="inf130">
<mml:math id="m164">
<mml:mrow>
<mml:msub>
<mml:mi>J</mml:mi>
<mml:mn>5,4</mml:mn>
</mml:msub>
</mml:mrow>
</mml:math>
</inline-formula>
</td>
<td align="center">%</td>
<td align="center">8.1</td>
<td align="center">6.7</td>
</tr>
<tr>
<td align="center">
<inline-formula id="inf131">
<mml:math id="m165">
<mml:mrow>
<mml:msub>
<mml:mi>J</mml:mi>
<mml:mn>5,28</mml:mn>
</mml:msub>
</mml:mrow>
</mml:math>
</inline-formula>
</td>
<td align="center">%</td>
<td align="center">27.8</td>
<td align="center">17.8</td>
</tr>
<tr>
<td rowspan="2" align="center">Max. peak estimation error</td>
<td align="center">
<inline-formula id="inf132">
<mml:math id="m166">
<mml:mrow>
<mml:msub>
<mml:mi>J</mml:mi>
<mml:mn>6,4</mml:mn>
</mml:msub>
</mml:mrow>
</mml:math>
</inline-formula>
</td>
<td align="center">%</td>
<td align="center">8.2</td>
<td align="center">7.4</td>
</tr>
<tr>
<td align="center">
<inline-formula id="inf133">
<mml:math id="m167">
<mml:mrow>
<mml:msub>
<mml:mi>J</mml:mi>
<mml:mn>6,28</mml:mn>
</mml:msub>
</mml:mrow>
</mml:math>
</inline-formula>
</td>
<td align="center">%</td>
<td align="center">28.6</td>
<td align="center">18.8</td>
</tr>
<tr>
<td rowspan="12" align="center">Global RTHS Performance</td>
<td rowspan="2" align="center">Normalized RTHS error</td>
<td align="center">
<inline-formula id="inf134">
<mml:math id="m168">
<mml:mrow>
<mml:msub>
<mml:mi>J</mml:mi>
<mml:mn>7,4</mml:mn>
</mml:msub>
</mml:mrow>
</mml:math>
</inline-formula>
</td>
<td align="center">%</td>
<td align="center">12.2</td>
<td align="center">10.6</td>
</tr>
<tr>
<td align="center">
<inline-formula id="inf135">
<mml:math id="m169">
<mml:mrow>
<mml:msub>
<mml:mi>J</mml:mi>
<mml:mn>7,28</mml:mn>
</mml:msub>
</mml:mrow>
</mml:math>
</inline-formula>
</td>
<td align="center">%</td>
<td align="center">26.2</td>
<td align="center">16.8</td>
</tr>
<tr>
<td rowspan="4" align="center">Normalized RTHS error at upper levels</td>
<td align="center">
<inline-formula id="inf136">
<mml:math id="m170">
<mml:mrow>
<mml:msub>
<mml:mi>J</mml:mi>
<mml:mn>8,2</mml:mn>
</mml:msub>
</mml:mrow>
</mml:math>
</inline-formula>
</td>
<td align="center">%</td>
<td align="center">12.5</td>
<td align="center">1.8</td>
</tr>
<tr>
<td align="center">
<inline-formula id="inf137">
<mml:math id="m171">
<mml:mrow>
<mml:msub>
<mml:mi>J</mml:mi>
<mml:mn>8,26</mml:mn>
</mml:msub>
</mml:mrow>
</mml:math>
</inline-formula>
</td>
<td align="center">%</td>
<td align="center">12.7</td>
<td align="center">3.4</td>
</tr>
<tr>
<td align="center">
<inline-formula id="inf138">
<mml:math id="m172">
<mml:mrow>
<mml:msub>
<mml:mi>J</mml:mi>
<mml:mn>8,3</mml:mn>
</mml:msub>
</mml:mrow>
</mml:math>
</inline-formula>
</td>
<td align="center">%</td>
<td align="center">12.4</td>
<td align="center">2.1</td>
</tr>
<tr>
<td align="center">
<inline-formula id="inf139">
<mml:math id="m173">
<mml:mrow>
<mml:msub>
<mml:mi>J</mml:mi>
<mml:mn>8,27</mml:mn>
</mml:msub>
</mml:mrow>
</mml:math>
</inline-formula>
</td>
<td align="center">%</td>
<td align="center">12.5</td>
<td align="center">3.0</td>
</tr>
<tr>
<td rowspan="2" align="center">Max. peak RTHS error</td>
<td align="center">
<inline-formula id="inf140">
<mml:math id="m174">
<mml:mrow>
<mml:msub>
<mml:mi>J</mml:mi>
<mml:mn>9,4</mml:mn>
</mml:msub>
</mml:mrow>
</mml:math>
</inline-formula>
</td>
<td align="center">%</td>
<td align="center">13.2</td>
<td align="center">11.9</td>
</tr>
<tr>
<td align="center">
<inline-formula id="inf141">
<mml:math id="m175">
<mml:mrow>
<mml:msub>
<mml:mi>J</mml:mi>
<mml:mn>9,28</mml:mn>
</mml:msub>
</mml:mrow>
</mml:math>
</inline-formula>
</td>
<td align="center">%</td>
<td align="center">27.3</td>
<td align="center">18.1</td>
</tr>
<tr>
<td rowspan="4" align="center">Max. peak RTHS error at upper levels</td>
<td align="center">
<inline-formula id="inf142">
<mml:math id="m176">
<mml:mrow>
<mml:msub>
<mml:mi>J</mml:mi>
<mml:mn>10,2</mml:mn>
</mml:msub>
</mml:mrow>
</mml:math>
</inline-formula>
</td>
<td align="center">%</td>
<td align="center">13.1</td>
<td align="center">1.8</td>
</tr>
<tr>
<td align="center">
<inline-formula id="inf143">
<mml:math id="m177">
<mml:mrow>
<mml:msub>
<mml:mi>J</mml:mi>
<mml:mn>10,26</mml:mn>
</mml:msub>
</mml:mrow>
</mml:math>
</inline-formula>
</td>
<td align="center">%</td>
<td align="center">13.4</td>
<td align="center">2.7</td>
</tr>
<tr>
<td align="center">
<inline-formula id="inf144">
<mml:math id="m178">
<mml:mrow>
<mml:msub>
<mml:mi>J</mml:mi>
<mml:mn>10,3</mml:mn>
</mml:msub>
</mml:mrow>
</mml:math>
</inline-formula>
</td>
<td align="center">%</td>
<td align="center">12.8</td>
<td align="center">1.8</td>
</tr>
<tr>
<td align="center">
<inline-formula id="inf145">
<mml:math id="m179">
<mml:mrow>
<mml:msub>
<mml:mi>J</mml:mi>
<mml:mn>10,27</mml:mn>
</mml:msub>
</mml:mrow>
</mml:math>
</inline-formula>
</td>
<td align="center">%</td>
<td align="center">13.2</td>
<td align="center">2.4</td>
</tr>
</tbody>
</table>
</table-wrap>
<p>
<xref ref-type="fig" rid="F23">Figure 23</xref> shows the tracking performance by comparing the measured actuator displacements (<inline-formula id="inf146">
<mml:math id="m180">
<mml:mrow>
<mml:msub>
<mml:mi mathvariant="bold">&#x3b7;</mml:mi>
<mml:mi>m</mml:mi>
</mml:msub>
</mml:mrow>
</mml:math>
</inline-formula>) and the target actuator displacements (<inline-formula id="inf147">
<mml:math id="m181">
<mml:mrow>
<mml:msub>
<mml:mi mathvariant="bold">&#x3b7;</mml:mi>
<mml:mtext>ns</mml:mtext>
</mml:msub>
</mml:mrow>
</mml:math>
</inline-formula>) computed from the numerical substructure node displacements. The results show a NRMS error of 23.8% for actuator 1 (bottom) and 13.2% for actuator 2 (top). These results are in agreement with the mechanics explained in <xref ref-type="sec" rid="s3-6">Section 3.6</xref>: Actuator 1 is counteracted by the deformed frame effect. Conversely, Actuator 2 is &#x201c;helped&#x201d; by the same frame effect. From a control perspective, the effort required by actuator 1 to drive the motion of the frame node is greater. This particular behavior of the plant requires the selection of larger <bold>Q</bold>/<bold>R</bold> ratios for actuator 1 in the sample LQG controller. If the estimated measured actuator displacements (<inline-formula id="inf148">
<mml:math id="m182">
<mml:mrow>
<mml:msub>
<mml:mover accent="true">
<mml:mi mathvariant="bold">&#x3b7;</mml:mi>
<mml:mo>&#x5e;</mml:mo>
</mml:mover>
<mml:mi>m</mml:mi>
</mml:msub>
</mml:mrow>
</mml:math>
</inline-formula>) are considered, the NRMS tracking errors are 3.2% and 13% for Actuator 1 and Actuator 2, respectively. This result shows the benefits of estimators to enhance the tracking control performance. Despite that the actuator displacements provides direct measurements for tracking assessment, a more realistic evaluation of tracking performance is achieved by considering frame coordinates, i.e., the frame node motion. <xref ref-type="fig" rid="F24">Figure 24</xref> illustrates a comparison between the transformed (estimated) measured displacement vector <inline-formula id="inf149">
<mml:math id="m183">
<mml:mrow>
<mml:msub>
<mml:mover accent="true">
<mml:mi mathvariant="bold">&#x3c8;</mml:mi>
<mml:mo>&#x5e;</mml:mo>
</mml:mover>
<mml:mi>m</mml:mi>
</mml:msub>
</mml:mrow>
</mml:math>
</inline-formula> and the target displacement vector <inline-formula id="inf150">
<mml:math id="m184">
<mml:mrow>
<mml:msub>
<mml:mi mathvariant="bold">&#x3c8;</mml:mi>
<mml:mtext>ns</mml:mtext>
</mml:msub>
</mml:mrow>
</mml:math>
</inline-formula> at the interface node. The NRMS error for the translational and rotational DOF are 8.1% and 27.8%, respectively. The increased errors result from the assumptions described in <xref ref-type="sec" rid="s4-3">Section 4.3</xref>, specifically, the effectiveness of the connection of the coupler to the joint frame, which demonstrates the challenges and limitation in enforcing rotational boundary conditions with the experimental setup.</p>
<p>
<xref ref-type="fig" rid="F25">Figure 25</xref> provides a comparison between the reference response and the hybrid system (global performance) at the interface node. The NRMS error of the RTHS for the translational DOF at node 4 is 12.2% and for the rotational DOF at the same node is 26.2%. The fact that these errors are comparable to the errors based on the numerical substructure target signals (<xref ref-type="fig" rid="F24">Figure 24</xref>) reveals that the partition is adequate even though the control approach is basic in this sample. <xref ref-type="table" rid="T3">Table 3</xref> complements the global performance evaluation of the RTHS by providing the numerical values for the indices defined in <xref ref-type="sec" rid="s3-7">Section 3.7</xref> based on the average of three consecutive experiments.</p>
</sec>
</sec>
<sec id="s6">
<title>6 Closing remarks</title>
<p>A multi-axial actuator benchmark control problem for studying maRTHS is developed for the RTHS research community. The objective of developing this problem statement is to provide the research community with a framework to systematically explore the limitations and capabilities of a variety of control methods on a realistic and challenging problem. With that goal in mind, a single-story frame is driven by two actuators, in a manner that reflects the fact that it is part of a more complex structure. The parameters, capabilities, and limitations of the experimental setup are thoroughly explained, a reference model is provided, as well as the necessary control constraints, evaluation criteria, and a sample controller, which is designed and evaluated as an example implementation. Participants are invited to tackle this problem statement with their own approaches to contribute to the knowledge base in RTHS.</p>
</sec>
</body>
<back>
<sec sec-type="data-availability" id="s7">
<title>Data availability statement </title>
<p>The datasets presented in this study can be found in online repositories. The names of the repository/repositories and accession number(s) can be found below: <ext-link ext-link-type="uri" xlink:href="https://mechs.designsafe-ci.org/">https://mechs.designsafe-ci.org/</ext-link>.</p>
</sec>
<sec id="s8">
<title>Author contributions </title>
<p>JC: Data curation, Formal Analysis, Investigation, Methodology, Resources, Software, Supervision, Validation, Visualization, Writing&#x2013;original draft, Writing&#x2013;review and editing, Project administration, Conceptualization. MS: Investigation, Methodology, Resources, Software, Validation, Writing&#x2013;review and editing, Data curation, Formal Analysis, Visualization, Writing&#x2013;original draft. EP: Data curation, Investigation, Methodology, Software, Writing&#x2013;review and editing, Formal Analysis, Resources, Validation, Writing&#x2013;original draft. HM: Investigation, Validation, Writing&#x2013;review and editing, Conceptualization, Methodology, Resources, Formal Analysis. SD: Conceptualization, Methodology, Writing&#x2013;review and editing, Funding acquisition, Project administration, Resources, Supervision, Validation. CS: Writing&#x2013;review and editing, Formal Analysis, Methodology, Resources, Software, Validation, Visualization. AM: Conceptualization, Formal Analysis, Methodology, Resources, Supervision, Writing&#x2013;original draft, Software. MN: Formal Analysis, Methodology, Resources, Software, Visualization, Writing&#x2013;review and editing, Conceptualization. AM: Methodology, Resources, Software, Supervision, Validation, Writing&#x2013;review and editing, Conceptualization.</p>
</sec>
<sec id="s9">
<title>Funding </title>
<p>The author(s) declare financial support was received for the research, authorship, and/or publication of this article. This work was supported by Purdue University through the John E. Goldberg Fellowship and through the Peruvian National Council of Science, Technology, and Technological Innovation (CONCYTEC) Fellowship Generaci&#xf3;n Cient&#xed;fica: Becas de Doctorado en el Extranjero, the Research Coordination Network in Hybrid Simulation for Multi-hazard Engineering through NSF-CMMI 1661621, the Purdue University College of Engineering, and the Collaborative Research CPS Co-Designed Control and Scheduling Adaptation for Assured Cyber-Physical System Safety and Performance through NSF CNS-2229136.</p>
</sec>
<ack>
<p>The authors would like to thank Ge Ou from University of Florida for her valuable feedback on this benchmark control problem, and research assistant Piedad J. Miranda from Escuela Superior Politecnica del Litoral ESPOL for testing the companion code and providing important feedback.</p>
</ack>
<sec sec-type="COI-statement" id="s10">
<title>Conflict of interest </title>
<p>The authors declare that the research was conducted in the absence of any commercial or financial relationships that could be construed as a potential conflict of interest.</p>
</sec>
<sec sec-type="disclaimer" id="s11">
<title>Publisher&#x2019;s note</title>
<p>All claims expressed in this article are solely those of the authors and do not necessarily represent those of their affiliated organizations, or those of the publisher, the editors and the reviewers. Any product that may be evaluated in this article, or claim that may be made by its manufacturer, is not guaranteed or endorsed by the publisher.</p>
</sec>
<ref-list>
<title>References</title>
<ref id="B1">
<citation citation-type="web">
<collab>Abaqus Unified FEA</collab>. <article-title>Mechanical simulation</article-title>, (<year>2023</year>). <comment>Available at: <ext-link ext-link-type="uri" xlink:href="https://www.3ds.com/products-services/simulia/products/abaqus/">https://www.3ds.com/products-services/simulia/products/abaqus/</ext-link>
</comment>(<comment>Accessed February 20, 2023)</comment>.</citation>
</ref>
<ref id="B2">
<citation citation-type="book">
<person-group person-group-type="author">
<name>
<surname>Abbiati</surname>
<given-names>G.</given-names>
</name>
<name>
<surname>Whyte</surname>
<given-names>C. A.</given-names>
</name>
<name>
<surname>Dertimanis</surname>
<given-names>V. K.</given-names>
</name>
<name>
<surname>Stojadinovic</surname>
<given-names>B.</given-names>
</name>
</person-group> (<year>2017</year>). &#x201c;<article-title>Hybrid simulation of large-scale structures at ETH Zurich: the new multi-axial subassemblage testing (MAST) setup</article-title>,&#x201d; in <source>16th world conference on earthquake engineering</source>. <comment>Available at: <ext-link ext-link-type="uri" xlink:href="http://www.iitk.ac.in/nicee/wcee16/">http://www.iitk.ac.in/nicee/wcee16/</ext-link>
</comment>(<comment>Accessed February 21, 2023)</comment>.</citation>
</ref>
<ref id="B3">
<citation citation-type="journal">
<person-group person-group-type="author">
<name>
<surname>Agrawal</surname>
<given-names>A.</given-names>
</name>
<name>
<surname>Tan</surname>
<given-names>P.</given-names>
</name>
<name>
<surname>Nagarajaiah</surname>
<given-names>S.</given-names>
</name>
<name>
<surname>Zhang</surname>
<given-names>J.</given-names>
</name>
</person-group> (<year>2009</year>). <article-title>Benchmark structural control problem for a seismically excited highway bridge-Part I: phase I Problem definition</article-title>. <source>Struct. Control Health Monit.</source> <volume>16</volume>, <fpage>509</fpage>&#x2013;<lpage>529</lpage>. <pub-id pub-id-type="doi">10.1002/stc.301</pub-id>
</citation>
</ref>
<ref id="B4">
<citation citation-type="book">
<person-group person-group-type="author">
<name>
<surname>Bathe</surname>
<given-names>K.-J.</given-names>
</name>
</person-group> (<year>2014</year>). <source>Finite element procedures</source>. Editor <person-group person-group-type="editor">
<name>
<surname>Bathe</surname>
<given-names>K. J.</given-names>
</name>
</person-group> (<publisher-loc>Watertown, MA</publisher-loc>. <comment>2nd ed</comment>.</citation>
</ref>
<ref id="B5">
<citation citation-type="journal">
<person-group person-group-type="author">
<name>
<surname>Blakeborough</surname>
<given-names>A.</given-names>
</name>
<name>
<surname>Williams</surname>
<given-names>M. S.</given-names>
</name>
<name>
<surname>Darby</surname>
<given-names>A. P.</given-names>
</name>
<name>
<surname>Williams</surname>
<given-names>D. M.</given-names>
</name>
</person-group> (<year>2001</year>). <article-title>The development of realtime substructure testing</article-title>. <source>Philosophical Trans. R. Soc. Lond. Ser. A Math. Phys. Eng. Sci.</source> <volume>359</volume>, <fpage>1869</fpage>&#x2013;<lpage>1891</lpage>. <pub-id pub-id-type="doi">10.1098/RSTA.2001.0877</pub-id>
</citation>
</ref>
<ref id="B6">
<citation citation-type="journal">
<person-group person-group-type="author">
<name>
<surname>Bonnet</surname>
<given-names>P. A.</given-names>
</name>
<name>
<surname>Lim</surname>
<given-names>C. N.</given-names>
</name>
<name>
<surname>Williams</surname>
<given-names>M. S.</given-names>
</name>
<name>
<surname>Blakeborough</surname>
<given-names>A.</given-names>
</name>
<name>
<surname>Neild</surname>
<given-names>S. A.</given-names>
</name>
<name>
<surname>Stoten</surname>
<given-names>D. P.</given-names>
</name>
<etal/>
</person-group> (<year>2007</year>). <article-title>Real-time hybrid experiments with Newmark integration, MCSmd outer-loop control and multi-tasking strategies</article-title>. <source>Earthq. Eng. Struct. Dyn.</source> <volume>36</volume>, <fpage>119</fpage>&#x2013;<lpage>141</lpage>. <pub-id pub-id-type="doi">10.1002/EQE.628</pub-id>
</citation>
</ref>
<ref id="B7">
<citation citation-type="journal">
<person-group person-group-type="author">
<name>
<surname>Botelho</surname>
<given-names>R. M.</given-names>
</name>
<name>
<surname>Christenson</surname>
<given-names>R. E.</given-names>
</name>
</person-group> (<year>2015</year>). <article-title>Robust stability and performance analysis for multi-actuator real-time hybrid substructuring</article-title>. <source>Conf. Proc. Soc. Exp. Mech. Ser.</source> <volume>4</volume>, <fpage>1</fpage>&#x2013;<lpage>7</lpage>. <pub-id pub-id-type="doi">10.1007/978-3-319-15209-7_1/FIGURES/4</pub-id>
</citation>
</ref>
<ref id="B8">
<citation citation-type="journal">
<person-group person-group-type="author">
<name>
<surname>Botelho</surname>
<given-names>R. M.</given-names>
</name>
<name>
<surname>Gao</surname>
<given-names>X.</given-names>
</name>
<name>
<surname>Avci</surname>
<given-names>M.</given-names>
</name>
<name>
<surname>Christenson</surname>
<given-names>R.</given-names>
</name>
</person-group> (<year>2022</year>). <article-title>A robust stability and performance analysis method for multi-actuator real-time hybrid simulation</article-title>. <source>Struct. Control Health Monit.</source> <volume>29</volume>, <fpage>e3017</fpage>. <pub-id pub-id-type="doi">10.1002/STC.3017</pub-id>
</citation>
</ref>
<ref id="B9">
<citation citation-type="journal">
<person-group person-group-type="author">
<name>
<surname>Cao</surname>
<given-names>L.</given-names>
</name>
<name>
<surname>Marullo</surname>
<given-names>T.</given-names>
</name>
<name>
<surname>Al-Subaihawi</surname>
<given-names>S.</given-names>
</name>
<name>
<surname>Kolay</surname>
<given-names>C.</given-names>
</name>
<name>
<surname>Amer</surname>
<given-names>A.</given-names>
</name>
<name>
<surname>Ricles</surname>
<given-names>J.</given-names>
</name>
<etal/>
</person-group> (<year>2020</year>). <article-title>NHERI lehigh experimental facility with large-scale multi-directional hybrid simulation testing capabilities</article-title>. <source>Front. Built Environ.</source> <volume>6</volume>, <fpage>107</fpage>. <pub-id pub-id-type="doi">10.3389/fbuil.2020.00107</pub-id>
</citation>
</ref>
<ref id="B10">
<citation citation-type="book">
<person-group person-group-type="author">
<name>
<surname>Castaneda</surname>
<given-names>N.</given-names>
</name>
</person-group> (<year>2012</year>). <source>Development and validation of a real-time computational framework for hybrid simulation of dynamically-excited steel frame structures, Order No. 3555230</source>. <publisher-name>Purdue University</publisher-name>. <comment>Available at: <ext-link ext-link-type="uri" xlink:href="http://www.purdue.edu/policies/pages/teach_res_outreach/c_22.html">http://www.purdue.edu/policies/pages/teach_res_outreach/c_22.html</ext-link>
</comment> (<comment>Accessed February 20, 2023)</comment>.</citation>
</ref>
<ref id="B11">
<citation citation-type="journal">
<person-group person-group-type="author">
<name>
<surname>Chae</surname>
<given-names>Y.</given-names>
</name>
<name>
<surname>Ricles</surname>
<given-names>J. M.</given-names>
</name>
<name>
<surname>Sause</surname>
<given-names>R.</given-names>
</name>
</person-group> (<year>2014</year>). <article-title>Large-scale real-time hybrid simulation of a three-story steel frame building with magneto-rheological dampers</article-title>. <source>Earthq. Eng. Struct. Dyn.</source> <volume>43</volume>, <fpage>1915</fpage>&#x2013;<lpage>1933</lpage>. <pub-id pub-id-type="doi">10.1002/EQE.2429</pub-id>
</citation>
</ref>
<ref id="B12">
<citation citation-type="journal">
<person-group person-group-type="author">
<name>
<surname>Darby</surname>
<given-names>A. P.</given-names>
</name>
<name>
<surname>Williams</surname>
<given-names>M. S.</given-names>
</name>
<name>
<surname>Blakeborough</surname>
<given-names>A.</given-names>
</name>
</person-group> (<year>2002</year>). <article-title>Stability and delay compensation for real-time substructure testing</article-title>. <source>J. Eng. Mech.</source> <volume>128</volume>, <fpage>1276</fpage>&#x2013;<lpage>1284</lpage>. <pub-id pub-id-type="doi">10.1061/(ASCE)0733-9399(2002)128:12(1276)</pub-id>
</citation>
</ref>
<ref id="B13">
<citation citation-type="journal">
<person-group person-group-type="author">
<name>
<surname>Dong</surname>
<given-names>B.</given-names>
</name>
<name>
<surname>Sause</surname>
<given-names>R.</given-names>
</name>
<name>
<surname>Ricles</surname>
<given-names>J. M.</given-names>
</name>
</person-group> (<year>2015</year>). <article-title>Accurate real-time hybrid earthquake simulations on large-scale MDOF steel structure with nonlinear viscous dampers</article-title>. <source>Earthq. Eng. Struct. Dyn.</source> <volume>44</volume>, <fpage>2035</fpage>&#x2013;<lpage>2055</lpage>. <pub-id pub-id-type="doi">10.1002/EQE.2572</pub-id>
</citation>
</ref>
<ref id="B14">
<citation citation-type="journal">
<person-group person-group-type="author">
<name>
<surname>Dyke</surname>
<given-names>S. J.</given-names>
</name>
<name>
<surname>SpencerJr</surname>
<given-names>B. F.</given-names>
</name>
<name>
<surname>Quast</surname>
<given-names>P.</given-names>
</name>
<name>
<surname>Sain</surname>
<given-names>M. K.</given-names>
</name>
</person-group> (<year>1995</year>). <article-title>Role of control-structure interaction in protective system design</article-title>. <source>J. Eng. Mech.</source> <volume>121</volume>, <fpage>322</fpage>&#x2013;<lpage>338</lpage>. <pub-id pub-id-type="doi">10.1061/(ASCE)0733-9399(1995)121:2(322)</pub-id>
</citation>
</ref>
<ref id="B15">
<citation citation-type="journal">
<person-group person-group-type="author">
<name>
<surname>Elnashai</surname>
<given-names>A. S.</given-names>
</name>
<name>
<surname>Spencer</surname>
<given-names>B. F.</given-names>
</name>
<name>
<surname>Kuchma</surname>
<given-names>D. A.</given-names>
</name>
<name>
<surname>Yang</surname>
<given-names>G.</given-names>
</name>
<name>
<surname>Carrion Quan Gan</surname>
<given-names>J.</given-names>
</name>
<name>
<surname>Kim</surname>
<given-names>S. J.</given-names>
</name>
<etal/>
</person-group> (<year>2006</year>). <article-title>THE MULTI-AXIAL FULL-SCALE SUB-STRUCTURED TESTING AND SIMULATION (MUST-SIM) FACILITY AT THE UNIVERSITY OF ILLINOIS AT URBANA-CHAMPAIGN</article-title>. <source>Adv. Earthq. Eng. Urban Risk Reduct.</source>, <fpage>245</fpage>&#x2013;<lpage>260</lpage>. <pub-id pub-id-type="doi">10.1007/1-4020-4571-9_16</pub-id>
</citation>
</ref>
<ref id="B16">
<citation citation-type="journal">
<person-group person-group-type="author">
<name>
<surname>Fermandois</surname>
<given-names>G. A.</given-names>
</name>
</person-group> (<year>2019</year>). <article-title>Application of model-based compensation methods to real-time hybrid simulation benchmark</article-title>. <source>Mech. Syst. Signal Process</source> <volume>131</volume>, <fpage>394</fpage>&#x2013;<lpage>416</lpage>. <pub-id pub-id-type="doi">10.1016/j.ymssp.2019.05.041</pub-id>
</citation>
</ref>
<ref id="B17">
<citation citation-type="journal">
<person-group person-group-type="author">
<name>
<surname>Fermandois</surname>
<given-names>G. A.</given-names>
</name>
<name>
<surname>Spencer</surname>
<given-names>B. F.</given-names>
</name>
</person-group> (<year>2017</year>). <article-title>Model-based framework for multi-axial real-time hybrid simulation testing</article-title>. <source>Earthq. Eng. Eng. Vib.</source> <volume>16</volume>, <fpage>671</fpage>&#x2013;<lpage>691</lpage>. <pub-id pub-id-type="doi">10.1007/s11803-017-0407-8</pub-id>
</citation>
</ref>
<ref id="B18">
<citation citation-type="journal">
<person-group person-group-type="author">
<name>
<surname>Friedman</surname>
<given-names>A.</given-names>
</name>
<name>
<surname>Dyke</surname>
<given-names>S. J.</given-names>
</name>
<name>
<surname>Asce</surname>
<given-names>A. M.</given-names>
</name>
<name>
<surname>Phillips</surname>
<given-names>B.</given-names>
</name>
<name>
<surname>Ahn</surname>
<given-names>R.</given-names>
</name>
<name>
<surname>Dong</surname>
<given-names>B.</given-names>
</name>
<etal/>
</person-group> (<year>2014</year>). <article-title>Large-scale real-time hybrid simulation for evaluation of advanced damping system performance</article-title>. <source>J. Struct. Eng.</source> <volume>141</volume>, <fpage>04014150</fpage>. <pub-id pub-id-type="doi">10.1061/(ASCE)ST.1943-541X.0001093</pub-id>
</citation>
</ref>
<ref id="B19">
<citation citation-type="journal">
<person-group person-group-type="author">
<name>
<surname>Gao</surname>
<given-names>X.</given-names>
</name>
<name>
<surname>Castaneda</surname>
<given-names>N.</given-names>
</name>
<name>
<surname>Dyke</surname>
<given-names>S. J.</given-names>
</name>
</person-group> (<year>2014</year>). <article-title>Experimental validation of a generalized procedure for MDOF real-time hybrid simulation</article-title>. <source>J. Eng. Mech.</source> <volume>140</volume>. <pub-id pub-id-type="doi">10.1061/(ASCE)EM.1943-7889.0000696--</pub-id>
</citation>
</ref>
<ref id="B20">
<citation citation-type="journal">
<person-group person-group-type="author">
<name>
<surname>Gao</surname>
<given-names>X.</given-names>
</name>
<name>
<surname>Castaneda</surname>
<given-names>N.</given-names>
</name>
<name>
<surname>Dyke</surname>
<given-names>S. J.</given-names>
</name>
</person-group> (<year>2013</year>). <article-title>Real time hybrid simulation: from dynamic system, motion control to experimental error</article-title>. <source>Earthq. Eng. Struct. Dyn.</source> <volume>42</volume>, <fpage>815</fpage>&#x2013;<lpage>832</lpage>. <pub-id pub-id-type="doi">10.1002/EQE.2246</pub-id>
</citation>
</ref>
<ref id="B21">
<citation citation-type="book">
<person-group person-group-type="author">
<name>
<surname>Gao</surname>
<given-names>X.</given-names>
</name>
</person-group> (<year>2012</year>). <source>Development of a robust framework for real-time hybrid simulation: from dynamical system, motion control to experimental error verification, Order No. 3556205</source>. <publisher-name>Purdue University</publisher-name>. <comment>Available at: <ext-link ext-link-type="uri" xlink:href="https://docs.lib.purdue.edu/dissertations/AAI3556206">https://docs.lib.purdue.edu/dissertations/AAI3556206</ext-link>
</comment> (<comment>Accessed February 20, 2023)</comment>.</citation>
</ref>
<ref id="B22">
<citation citation-type="journal">
<person-group person-group-type="author">
<name>
<surname>Gao</surname>
<given-names>X. S.</given-names>
</name>
<name>
<surname>You</surname>
<given-names>S.</given-names>
</name>
</person-group> (<year>2019</year>). <article-title>Dynamical stability analysis of MDOF real-time hybrid system</article-title>. <source>Mech. Syst. Signal Process</source> <volume>133</volume>, <fpage>106261</fpage>. <pub-id pub-id-type="doi">10.1016/j.ymssp.2019.106261</pub-id>
</citation>
</ref>
<ref id="B23">
<citation citation-type="web">
<collab>Home</collab> (<year>2023</year>). <article-title>DesignSafe-CI</article-title>. <comment>Available at: <ext-link ext-link-type="uri" xlink:href="https://mechs.designsafe-ci.org/">https://mechs.designsafe-ci.org/</ext-link>
</comment>(<comment>Accessed February 19, 2023)</comment>.</citation>
</ref>
<ref id="B24">
<citation citation-type="web">
<collab>Hybrid Simulation for Multi-hazard Engineering A Research Agenda Year 1</collab> (<year>2018</year>). <article-title>Multihazard engineering collaboratory on hybrid simulation</article-title>. <comment>Available at: <ext-link ext-link-type="uri" xlink:href="https://mechs.designsafe-ci.org/">https://mechs.designsafe-ci.org/</ext-link>
</comment>(<comment>Accessed May 7, 2023)</comment>.</citation>
</ref>
<ref id="B25">
<citation citation-type="web">
<collab>Hybrid Simulation for Multi-hazard Engineering A Research Agenda Year 2</collab> (<year>2019</year>). <article-title>Multihazard engineering collaboratory on hybrid simulation</article-title>. <comment>Available at: <ext-link ext-link-type="uri" xlink:href="https://mechs.designsafe-ci.org/">https://mechs.designsafe-ci.org/</ext-link>
</comment>(<comment>Accessed May 7, 2023)</comment>.</citation>
</ref>
<ref id="B26">
<citation citation-type="journal">
<person-group person-group-type="author">
<name>
<surname>Jung</surname>
<given-names>R. Y.</given-names>
</name>
<name>
<surname>Shing</surname>
<given-names>P. B.</given-names>
</name>
<name>
<surname>Stauffer</surname>
<given-names>E.</given-names>
</name>
<name>
<surname>Thoen</surname>
<given-names>B.</given-names>
</name>
</person-group> (<year>2007</year>). <article-title>Performance of a real-time pseudodynamic test system considering nonlinear structural response</article-title>. <source>Earthq. Eng. Struct. Dyn.</source> <volume>36</volume>, <fpage>1785</fpage>&#x2013;<lpage>1809</lpage>. <pub-id pub-id-type="doi">10.1002/EQE.722</pub-id>
</citation>
</ref>
<ref id="B27">
<citation citation-type="journal">
<person-group person-group-type="author">
<name>
<surname>Li</surname>
<given-names>H.</given-names>
</name>
<name>
<surname>Maghareh</surname>
<given-names>A.</given-names>
</name>
<name>
<surname>Montoya</surname>
<given-names>H.</given-names>
</name>
<name>
<surname>Condori Uribe</surname>
<given-names>J. W.</given-names>
</name>
<name>
<surname>Dyke</surname>
<given-names>S. J.</given-names>
</name>
<name>
<surname>Xu</surname>
<given-names>Z.</given-names>
</name>
</person-group> (<year>2021</year>). <article-title>Sliding mode control design for the benchmark problem in real-time hybrid simulation</article-title>. <source>Mech. Syst. Signal Process</source> <volume>151</volume>, <fpage>107364</fpage>. <pub-id pub-id-type="doi">10.1016/J.YMSSP.2020.107364</pub-id>
</citation>
</ref>
<ref id="B28">
<citation citation-type="journal">
<person-group person-group-type="author">
<name>
<surname>Li</surname>
<given-names>N.</given-names>
</name>
<name>
<surname>Tang</surname>
<given-names>J.</given-names>
</name>
<name>
<surname>Li</surname>
<given-names>Z.-X.</given-names>
</name>
<name>
<surname>Gao</surname>
<given-names>X.</given-names>
</name>
</person-group> (<year>2022</year>). <article-title>Reinforcement learning control method for real-time hybrid simulation based on deep deterministic policy gradient algorithm</article-title>. <source>Struct. Control Health Monit.</source> <volume>29</volume>, <fpage>e3035</fpage>. <pub-id pub-id-type="doi">10.1002/STC.3035</pub-id>
</citation>
</ref>
<ref id="B29">
<citation citation-type="journal">
<person-group person-group-type="author">
<name>
<surname>Liqiao</surname>
<given-names>L.</given-names>
</name>
<name>
<surname>Jinting</surname>
<given-names>W.</given-names>
</name>
<name>
<surname>Hao</surname>
<given-names>D.</given-names>
</name>
<name>
<surname>Fei</surname>
<given-names>Z.</given-names>
</name>
</person-group> (<year>2022</year>). <article-title>Theoretical and experimental studies on critical time delay of multi-DOF real-time hybrid simulation</article-title>. <source>Earthq. Eng. Eng. Vib.</source> <volume>21</volume>, <fpage>117</fpage>&#x2013;<lpage>134</lpage>. <pub-id pub-id-type="doi">10.1007/s11803-021-2073-0</pub-id>
</citation>
</ref>
<ref id="B30">
<citation citation-type="journal">
<person-group person-group-type="author">
<name>
<surname>Maghareh</surname>
<given-names>A.</given-names>
</name>
<name>
<surname>Dyke</surname>
<given-names>S. J.</given-names>
</name>
<name>
<surname>Prakash</surname>
<given-names>A.</given-names>
</name>
<name>
<surname>Bunting</surname>
<given-names>G. B.</given-names>
</name>
</person-group> (<year>2014</year>). <article-title>Establishing a predictive performance indicator for real-time hybrid simulation</article-title>. <source>Earthq. Eng. Struct. Dyn.</source> <volume>43</volume>, <fpage>2299</fpage>&#x2013;<lpage>2318</lpage>. <pub-id pub-id-type="doi">10.1002/EQE.2448</pub-id>
</citation>
</ref>
<ref id="B31">
<citation citation-type="journal">
<person-group person-group-type="author">
<name>
<surname>Maghareh</surname>
<given-names>A.</given-names>
</name>
<name>
<surname>Dyke</surname>
<given-names>S.</given-names>
</name>
<name>
<surname>Rabieniaharatbar</surname>
<given-names>S.</given-names>
</name>
<name>
<surname>Prakash</surname>
<given-names>A.</given-names>
</name>
</person-group> (<year>2017</year>). <article-title>Predictive stability indicator: a novel approach to configuring a real-time hybrid simulation</article-title>. <source>Earthq. Eng. Struct. Dyn.</source> <volume>46</volume>, <fpage>95</fpage>&#x2013;<lpage>116</lpage>. <pub-id pub-id-type="doi">10.1002/EQE.2775</pub-id>
</citation>
</ref>
<ref id="B32">
<citation citation-type="journal">
<person-group person-group-type="author">
<name>
<surname>Maghareh</surname>
<given-names>A.</given-names>
</name>
<name>
<surname>Silva</surname>
<given-names>C. E.</given-names>
</name>
<name>
<surname>Dyke</surname>
<given-names>S. J.</given-names>
</name>
</person-group> (<year>2018</year>). <article-title>Parametric model of servo-hydraulic actuator coupled with a nonlinear system: experimental validation</article-title>. <source>Mech. Syst. Signal Process</source> <volume>104</volume>, <fpage>663</fpage>&#x2013;<lpage>672</lpage>. <pub-id pub-id-type="doi">10.1016/J.YMSSP.2017.11.009</pub-id>
</citation>
</ref>
<ref id="B33">
<citation citation-type="web">
<collab>MAST Laboratory</collab> (<year>2023</year>). <article-title>mastlab</article-title>. <comment>Available at: <ext-link ext-link-type="uri" xlink:href="https://mastlab.umn.edu/">https://mastlab.umn.edu/</ext-link>
</comment>(<comment>Accessed February 20, 2023)</comment>.</citation>
</ref>
<ref id="B34">
<citation citation-type="web">
<collab>MATLAB</collab> (<year>2023</year>). <article-title>MathWorks</article-title>. <comment>Available at: <ext-link ext-link-type="uri" xlink:href="https://www.mathworks.com/products/matlab.html">https://www.mathworks.com/products/matlab.html</ext-link> (Accessed February 20, 2023)</comment>.</citation>
</ref>
<ref id="B35">
<citation citation-type="journal">
<person-group person-group-type="author">
<name>
<surname>Na</surname>
<given-names>O.</given-names>
</name>
<name>
<surname>Kim</surname>
<given-names>S.</given-names>
</name>
<name>
<surname>Kim</surname>
<given-names>S.</given-names>
</name>
</person-group> (<year>2016</year>). <article-title>Multi-directional structural dynamic test using optimized real-time hybrid control system</article-title>. <source>Exp. Tech.</source> <volume>40</volume>, <fpage>441</fpage>&#x2013;<lpage>452</lpage>. <pub-id pub-id-type="doi">10.1007/s40799-016-0047-3</pub-id>
</citation>
</ref>
<ref id="B36">
<citation citation-type="journal">
<person-group person-group-type="author">
<name>
<surname>Nagarajaiah</surname>
<given-names>S.</given-names>
</name>
<name>
<surname>Narasimhan</surname>
<given-names>S.</given-names>
</name>
<name>
<surname>Agrawal</surname>
<given-names>A.</given-names>
</name>
<name>
<surname>Tan</surname>
<given-names>P.</given-names>
</name>
</person-group> (<year>2009</year>). <article-title>Benchmark structural control problem for a seismically excited highway bridge-Part III: phase II Sample controller for the fully base-isolated case</article-title>. <source>Struct. Control Health Monit.</source> <volume>16</volume>, <fpage>549</fpage>&#x2013;<lpage>563</lpage>. <pub-id pub-id-type="doi">10.1002/stc.293</pub-id>
</citation>
</ref>
<ref id="B37">
<citation citation-type="journal">
<person-group person-group-type="author">
<name>
<surname>Nagarajaiah</surname>
<given-names>S.</given-names>
</name>
<name>
<surname>Narasimhan</surname>
<given-names>S.</given-names>
</name>
<name>
<surname>Johnson</surname>
<given-names>E.</given-names>
</name>
</person-group> (<year>2008</year>). <article-title>Structural control benchmark problem: phase II-Nonlinear smart base-isolated building subjected to near-fault earthquakes</article-title>. <source>Struct. Control Health Monit.</source> <volume>15</volume>, <fpage>653</fpage>&#x2013;<lpage>656</lpage>. <pub-id pub-id-type="doi">10.1002/stc.280</pub-id>
</citation>
</ref>
<ref id="B38">
<citation citation-type="journal">
<person-group person-group-type="author">
<name>
<surname>Nagarajaiah</surname>
<given-names>S.</given-names>
</name>
<name>
<surname>Narasimhan</surname>
<given-names>S.</given-names>
</name>
</person-group> (<year>2006</year>). <article-title>Smart base-isolated benchmark building. Part II: phase I sample controllers for linear isolation systems</article-title>. <source>Struct. Control Health Monit.</source> <volume>13</volume>, <fpage>589</fpage>&#x2013;<lpage>604</lpage>. <pub-id pub-id-type="doi">10.1002/stc.100</pub-id>
</citation>
</ref>
<ref id="B39">
<citation citation-type="journal">
<person-group person-group-type="author">
<name>
<surname>Najafi</surname>
<given-names>A.</given-names>
</name>
<name>
<surname>Fermandois</surname>
<given-names>G. A.</given-names>
</name>
<name>
<surname>Dyke</surname>
<given-names>S. J.</given-names>
</name>
<name>
<surname>Spencer</surname>
<given-names>B. F.</given-names>
</name>
</person-group> (<year>2023</year>). <article-title>Hybrid simulation with multiple actuators: a state-of-the-art review</article-title>. <source>Eng. Struct.</source> <volume>276</volume>, <fpage>115284</fpage>. <pub-id pub-id-type="doi">10.1016/J.ENGSTRUCT.2022.115284</pub-id>
</citation>
</ref>
<ref id="B40">
<citation citation-type="journal">
<person-group person-group-type="author">
<name>
<surname>Najafi</surname>
<given-names>A.</given-names>
</name>
<name>
<surname>Fermandois</surname>
<given-names>G. A.</given-names>
</name>
<name>
<surname>Spencer</surname>
<given-names>B. F.</given-names>
</name>
</person-group> (<year>2020</year>). <article-title>Decoupled model-based real-time hybrid simulation with multi-axial load and boundary condition boxes</article-title>. <source>Eng. Struct.</source> <volume>219</volume>, <fpage>110868</fpage>. <pub-id pub-id-type="doi">10.1016/J.ENGSTRUCT.2020.110868</pub-id>
</citation>
</ref>
<ref id="B41">
<citation citation-type="journal">
<person-group person-group-type="author">
<name>
<surname>Najafi</surname>
<given-names>A.</given-names>
</name>
<name>
<surname>Spencer</surname>
<given-names>B. F.</given-names>
</name>
</person-group> (<year>2019</year>). <article-title>Adaptive model reference control method for real-time hybrid simulation</article-title>. <source>Mech. Syst. Signal Process</source> <volume>132</volume>, <fpage>183</fpage>&#x2013;<lpage>193</lpage>. <pub-id pub-id-type="doi">10.1016/j.ymssp.2019.06.023</pub-id>
</citation>
</ref>
<ref id="B42">
<citation citation-type="journal">
<person-group person-group-type="author">
<name>
<surname>Najafi</surname>
<given-names>A.</given-names>
</name>
<name>
<surname>Spencer</surname>
<given-names>B. F.</given-names>
</name>
</person-group> (<year>2021</year>). <article-title>Multiaxial real-time hybrid simulation for substructuring with multiple boundary points</article-title>. <source>J. Struct. Eng.</source> <volume>147</volume>. <pub-id pub-id-type="doi">10.1061/(ASCE)ST.1943-541X.0003138</pub-id>
</citation>
</ref>
<ref id="B43">
<citation citation-type="book">
<person-group person-group-type="author">
<name>
<surname>Nakata</surname>
<given-names>N.</given-names>
</name>
<name>
<surname>Dyke</surname>
<given-names>S. J.</given-names>
</name>
<name>
<surname>Zhang</surname>
<given-names>J.</given-names>
</name>
<name>
<surname>Mosqueda</surname>
<given-names>G.</given-names>
</name>
<name>
<surname>Shao</surname>
<given-names>X.</given-names>
</name>
<name>
<surname>Mahmoud</surname>
<given-names>H.</given-names>
</name>
<etal/>
</person-group> (<year>2023</year>). <source>Hybrid simulation primer and dictionary</source>.</citation>
</ref>
<ref id="B44">
<citation citation-type="book">
<person-group person-group-type="author">
<name>
<surname>Nakata</surname>
<given-names>N.</given-names>
</name>
<name>
<surname>Spencer</surname>
<given-names>B. F.</given-names>
<suffix>Jr.</suffix>
</name>
<name>
<surname>Elnashai</surname>
<given-names>A. S.</given-names>
</name>
</person-group> (<year>2007</year>). <source>Multi-dimensional mixed-mode hybrid simulation control and applications</source>. <publisher-name>Newmark Structural Engineering Laboratory Report Series 005</publisher-name>. <comment>Available at: <ext-link ext-link-type="uri" xlink:href="https://hdl.handle.net/2142/3628">https://hdl.handle.net/2142/3628</ext-link>
</comment> (<comment>Accessed February 25, 2023)</comment>.</citation>
</ref>
<ref id="B45">
<citation citation-type="journal">
<person-group person-group-type="author">
<name>
<surname>Nakata</surname>
<given-names>N.</given-names>
</name>
<name>
<surname>SpencerJr</surname>
<given-names>B. F.</given-names>
</name>
<name>
<surname>Elnashai</surname>
<given-names>A. S.</given-names>
</name>
</person-group> (<year>2010</year>). <article-title>Sensitivity-based external calibration of multiaxial loading system</article-title>. <source>J. Eng. Mech.</source> <volume>136</volume>, <fpage>189</fpage>&#x2013;<lpage>198</lpage>. <pub-id pub-id-type="doi">10.1061/(ASCE)0733-9399(2010)136:2(189)</pub-id>
</citation>
</ref>
<ref id="B46">
<citation citation-type="journal">
<person-group person-group-type="author">
<name>
<surname>Narasimhan</surname>
<given-names>S.</given-names>
</name>
<name>
<surname>Nagarajaiah</surname>
<given-names>S.</given-names>
</name>
<name>
<surname>Johnson</surname>
<given-names>E. A.</given-names>
</name>
<name>
<surname>Gavin</surname>
<given-names>H. P.</given-names>
</name>
</person-group> (<year>2006</year>). <article-title>Smart base-isolated benchmark building. Part I: problem definition</article-title>. <source>Struct. Control Health Monit.</source> <volume>13</volume>, <fpage>573</fpage>&#x2013;<lpage>588</lpage>. <pub-id pub-id-type="doi">10.1002/stc.99</pub-id>
</citation>
</ref>
<ref id="B47">
<citation citation-type="journal">
<person-group person-group-type="author">
<name>
<surname>Narasimhan</surname>
<given-names>S.</given-names>
</name>
<name>
<surname>Nagarajaiah</surname>
<given-names>S.</given-names>
</name>
<name>
<surname>Johnson</surname>
<given-names>E. A.</given-names>
</name>
</person-group> (<year>2008</year>). <article-title>Smart base-isolated benchmark building part IV: phase II sample controllers for nonlinear isolation systems</article-title>. <source>Struct. Control Health Monit.</source> <volume>15</volume>, <fpage>657</fpage>&#x2013;<lpage>672</lpage>. <pub-id pub-id-type="doi">10.1002/stc.267</pub-id>
</citation>
</ref>
<ref id="B48">
<citation citation-type="journal">
<person-group person-group-type="author">
<name>
<surname>Ning</surname>
<given-names>X.</given-names>
</name>
<name>
<surname>Wang</surname>
<given-names>Z.</given-names>
</name>
<name>
<surname>Zhou</surname>
<given-names>H.</given-names>
</name>
<name>
<surname>Wu</surname>
<given-names>B.</given-names>
</name>
<name>
<surname>Ding</surname>
<given-names>Y.</given-names>
</name>
<name>
<surname>Xu</surname>
<given-names>B.</given-names>
</name>
</person-group> (<year>2019</year>). <article-title>Robust actuator dynamics compensation method for real-time hybrid simulation</article-title>. <source>Mech. Syst. Signal Process</source> <volume>131</volume>, <fpage>49</fpage>&#x2013;<lpage>70</lpage>. <pub-id pub-id-type="doi">10.1016/j.ymssp.2019.05.038</pub-id>
</citation>
</ref>
<ref id="B49">
<citation citation-type="journal">
<person-group person-group-type="author">
<name>
<surname>Ohtori</surname>
<given-names>Y.</given-names>
</name>
<name>
<surname>Christenson</surname>
<given-names>R. E.</given-names>
</name>
<name>
<surname>Spencer</surname>
<given-names>B. F.</given-names>
</name>
<name>
<surname>Dyke</surname>
<given-names>S. J.</given-names>
</name>
</person-group> (<year>2004</year>). <article-title>Benchmark control problems for seismically excited nonlinear buildings</article-title>. <source>J. Eng. Mech.</source> <volume>130</volume>, <fpage>366</fpage>&#x2013;<lpage>385</lpage>. <pub-id pub-id-type="doi">10.1061/(ASCE)0733-9399(2004)130:4(366)</pub-id>
</citation>
</ref>
<ref id="B50">
<citation citation-type="journal">
<person-group person-group-type="author">
<name>
<surname>Ouyang</surname>
<given-names>Y.</given-names>
</name>
<name>
<surname>Shi</surname>
<given-names>W.</given-names>
</name>
<name>
<surname>Shan</surname>
<given-names>J.</given-names>
</name>
<name>
<surname>Spencer</surname>
<given-names>B. F.</given-names>
</name>
</person-group> (<year>2019</year>). <article-title>Backstepping adaptive control for real-time hybrid simulation including servo-hydraulic dynamics</article-title>. <source>Mech. Syst. Signal Process</source> <volume>130</volume>, <fpage>732</fpage>&#x2013;<lpage>754</lpage>. <pub-id pub-id-type="doi">10.1016/j.ymssp.2019.05.042</pub-id>
</citation>
</ref>
<ref id="B51">
<citation citation-type="journal">
<person-group person-group-type="author">
<name>
<surname>Palacio-Betancur</surname>
<given-names>A.</given-names>
</name>
<name>
<surname>Gutierrez Soto</surname>
<given-names>M.</given-names>
</name>
</person-group> (<year>2019</year>). <article-title>Adaptive tracking control for real-time hybrid simulation of structures subjected to seismic loading</article-title>. <source>Mech. Syst. Signal Process</source> <volume>134</volume>, <fpage>106345</fpage>. <pub-id pub-id-type="doi">10.1016/J.YMSSP.2019.106345</pub-id>
</citation>
</ref>
<ref id="B52">
<citation citation-type="journal">
<person-group person-group-type="author">
<name>
<surname>Palacio-Betancur</surname>
<given-names>A.</given-names>
</name>
<name>
<surname>Gutierrez Soto</surname>
<given-names>M.</given-names>
</name>
</person-group> (<year>2022</year>). <article-title>Recent advances in computational methodologies for real-time hybrid simulation of engineering structures</article-title>. <source>Archives Comput. Methods Eng.</source> <volume>30</volume>, <fpage>1637</fpage>&#x2013;<lpage>1662</lpage>. <pub-id pub-id-type="doi">10.1007/S11831-022-09848-Y</pub-id>
</citation>
</ref>
<ref id="B53">
<citation citation-type="journal">
<person-group person-group-type="author">
<name>
<surname>Park</surname>
<given-names>J.</given-names>
</name>
<name>
<surname>Ma</surname>
<given-names>R.</given-names>
</name>
<name>
<surname>Kwon</surname>
<given-names>O. S.</given-names>
</name>
</person-group> (<year>2022</year>). <article-title>Model-based adaptive kinematic transformation method for accurate control of multi-DOF boundary conditions in conventional tests and hybrid simulations</article-title>. <source>Earthq. Eng. Struct. Dyn.</source> <volume>51</volume>, <fpage>1076</fpage>&#x2013;<lpage>1095</lpage>. <pub-id pub-id-type="doi">10.1002/EQE.3605</pub-id>
</citation>
</ref>
<ref id="B54">
<citation citation-type="web">
<collab>Performance Real-Time Target Machine</collab> (<year>2023</year>). <article-title>Speedgoat</article-title>. <comment>Available at: <ext-link ext-link-type="uri" xlink:href="https://www.speedgoat.com/products-services/real-time-target-machines/performance-real-time-target-machine">https://www.speedgoat.com/products-services/real-time-target-machines/performance-real-time-target-machine</ext-link> (Accessed February 20, 2023)</comment>.</citation>
</ref>
<ref id="B55">
<citation citation-type="journal">
<person-group person-group-type="author">
<name>
<surname>Phillips</surname>
<given-names>B. M.</given-names>
</name>
<name>
<surname>Asce</surname>
<given-names>A. M.</given-names>
</name>
<name>
<surname>Spencer</surname>
<given-names>B. F.</given-names>
</name>
<name>
<surname>Asce</surname>
<given-names>F.</given-names>
</name>
</person-group> (<year>2013</year>). <article-title>Model-based multiactuator control for real-time hybrid simulation</article-title>. <source>J. Eng. Mech.</source> <volume>139</volume>, <fpage>219</fpage>&#x2013;<lpage>228</lpage>. <pub-id pub-id-type="doi">10.1061/(ASCE)EM.1943-7889.0000493</pub-id>
</citation>
</ref>
<ref id="B56">
<citation citation-type="journal">
<person-group person-group-type="author">
<name>
<surname>Silva</surname>
<given-names>C. E.</given-names>
</name>
<name>
<surname>Gomez</surname>
<given-names>D.</given-names>
</name>
<name>
<surname>Maghareh</surname>
<given-names>A.</given-names>
</name>
<name>
<surname>Dyke</surname>
<given-names>S. J.</given-names>
</name>
<name>
<surname>Spencer</surname>
<given-names>B. F.</given-names>
</name>
</person-group> (<year>2020</year>). <article-title>Benchmark control problem for real-time hybrid simulation</article-title>. <source>Mech. Syst. Signal Process</source> <volume>135</volume>, <fpage>106381</fpage>. <pub-id pub-id-type="doi">10.1016/J.YMSSP.2019.106381</pub-id>
</citation>
</ref>
<ref id="B57">
<citation citation-type="journal">
<person-group person-group-type="author">
<name>
<surname>Spencer</surname>
<given-names>B. F.</given-names>
</name>
<name>
<surname>Dyke</surname>
<given-names>S. J.</given-names>
</name>
<name>
<surname>Deoskar</surname>
<given-names>H. S.</given-names>
</name>
</person-group> (<year>1998a</year>). <article-title>Benchmark problems in structural control: part II: active tendon system</article-title>. <source>Earthq. Eng. Struct. Dyn.</source> <volume>27</volume>, <fpage>1141</fpage>&#x2013;<lpage>1147</lpage>. <pub-id pub-id-type="doi">10.1002/(sici)1096-9845(1998110)27:11&#x3c;1141::aid-eqe775&#x3e;3.0.co;2-s</pub-id>
</citation>
</ref>
<ref id="B58">
<citation citation-type="journal">
<person-group person-group-type="author">
<name>
<surname>Spencer</surname>
<given-names>B. F.</given-names>
<suffix>Jr</suffix>
</name>
<name>
<surname>Dyke</surname>
<given-names>S. J.</given-names>
</name>
<name>
<surname>Deoskar</surname>
<given-names>H. S.</given-names>
</name>
</person-group> (<year>1998b</year>). <article-title>Benchmark problems in structural control: part I-Active Mass Driver system</article-title>. <source>Earthq. Eng. Struct. Dyn.</source> <volume>27</volume>, <fpage>1127</fpage>&#x2013;<lpage>1139</lpage>. <pub-id pub-id-type="doi">10.1002/(SICI)1096-9845(1998110)27:11&#x3c;1127::AID-EQE774&#x3e;3.0.CO;2-F</pub-id>
</citation>
</ref>
<ref id="B59">
<citation citation-type="journal">
<person-group person-group-type="author">
<name>
<surname>Sun</surname>
<given-names>Z.</given-names>
</name>
<name>
<surname>Li</surname>
<given-names>B.</given-names>
</name>
<name>
<surname>Dyke</surname>
<given-names>S. J.</given-names>
</name>
<name>
<surname>Lu</surname>
<given-names>C.</given-names>
</name>
<name>
<surname>Linderman</surname>
<given-names>L.</given-names>
</name>
</person-group> (<year>2016</year>). <article-title>Benchmark problem in active structural control with wireless sensor network</article-title>. <source>Struct. Control Health Monit.</source> <volume>23</volume>, <fpage>20</fpage>&#x2013;<lpage>34</lpage>. <pub-id pub-id-type="doi">10.1002/stc.1761</pub-id>
</citation>
</ref>
<ref id="B60">
<citation citation-type="journal">
<person-group person-group-type="author">
<name>
<surname>Tan</surname>
<given-names>P.</given-names>
</name>
<name>
<surname>Agrawal</surname>
<given-names>A. K.</given-names>
</name>
</person-group> (<year>2009</year>). <article-title>Benchmark structural control problem for a seismically excited highway bridge-Part II: phase I Sample control designs</article-title>. <source>Struct. Control Health Monit.</source> <volume>16</volume>, <fpage>530</fpage>&#x2013;<lpage>548</lpage>. <pub-id pub-id-type="doi">10.1002/stc.300</pub-id>
</citation>
</ref>
<ref id="B61">
<citation citation-type="journal">
<person-group person-group-type="author">
<name>
<surname>Tao</surname>
<given-names>J.</given-names>
</name>
<name>
<surname>Mercan</surname>
<given-names>O.</given-names>
</name>
</person-group> (<year>2019</year>). <article-title>A study on a benchmark control problem for real-time hybrid simulation with a tracking error-based adaptive compensator combined with a supplementary proportional-integral-derivative controller</article-title>. <source>Mech. Syst. Signal Process</source> <volume>134</volume>, <fpage>106346</fpage>. <pub-id pub-id-type="doi">10.1016/J.YMSSP.2019.106346</pub-id>
</citation>
</ref>
<ref id="B62">
<citation citation-type="journal">
<person-group person-group-type="author">
<name>
<surname>Tian</surname>
<given-names>Y.</given-names>
</name>
<name>
<surname>Shao</surname>
<given-names>X.</given-names>
</name>
<name>
<surname>Zhou</surname>
<given-names>H.</given-names>
</name>
<name>
<surname>Wang</surname>
<given-names>T.</given-names>
</name>
</person-group> (<year>2020</year>). <article-title>Advances in real-time hybrid testing technology for shaking table substructure testing</article-title>. <source>Front. Built Environ.</source> <volume>6</volume>, <fpage>123</fpage>. <pub-id pub-id-type="doi">10.3389/fbuil.2020.00123</pub-id>
</citation>
</ref>
<ref id="B63">
<citation citation-type="journal">
<person-group person-group-type="author">
<name>
<surname>Verma</surname>
<given-names>M.</given-names>
</name>
<name>
<surname>Sivaselvan</surname>
<given-names>M. V.</given-names>
</name>
</person-group> (<year>2019</year>). <article-title>Impedance matching control design for the benchmark problem in real-time hybrid simulation</article-title>. <source>Mech. Syst. Signal Process</source> <volume>134</volume>, <fpage>106343</fpage>. <pub-id pub-id-type="doi">10.1016/j.ymssp.2019.106343</pub-id>
</citation>
</ref>
<ref id="B64">
<citation citation-type="journal">
<person-group person-group-type="author">
<name>
<surname>Wallace</surname>
<given-names>M. I.</given-names>
</name>
<name>
<surname>Wagg</surname>
<given-names>D. J.</given-names>
</name>
<name>
<surname>Neild</surname>
<given-names>S. A.</given-names>
</name>
</person-group> (<year>2005</year>). <article-title>An adaptive polynomial based forward prediction algorithm for multi-actuator real-time dynamic substructuring</article-title>. <source>Proc. R. Soc. A Math. Phys. Eng. Sci.</source> <volume>461</volume>, <fpage>3807</fpage>&#x2013;<lpage>3826</lpage>. <pub-id pub-id-type="doi">10.1098/RSPA.2005.1532</pub-id>
</citation>
</ref>
<ref id="B65">
<citation citation-type="journal">
<person-group person-group-type="author">
<name>
<surname>Wang</surname>
<given-names>Z.</given-names>
</name>
<name>
<surname>Ning</surname>
<given-names>X.</given-names>
</name>
<name>
<surname>Xu</surname>
<given-names>G.</given-names>
</name>
<name>
<surname>Zhou</surname>
<given-names>H.</given-names>
</name>
<name>
<surname>Wu</surname>
<given-names>B.</given-names>
</name>
</person-group> (<year>2019</year>). <article-title>High performance compensation using an adaptive strategy for real-time hybrid simulation</article-title>. <source>Mech. Syst. Signal Process</source> <volume>133</volume>, <fpage>106262</fpage>. <pub-id pub-id-type="doi">10.1016/j.ymssp.2019.106262</pub-id>
</citation>
</ref>
<ref id="B66">
<citation citation-type="journal">
<person-group person-group-type="author">
<name>
<surname>Xu</surname>
<given-names>D.</given-names>
</name>
<name>
<surname>Zhou</surname>
<given-names>H.</given-names>
</name>
<name>
<surname>Shao</surname>
<given-names>X.</given-names>
</name>
<name>
<surname>Wang</surname>
<given-names>T.</given-names>
</name>
</person-group> (<year>2019a</year>). <article-title>Performance study of sliding mode controller with improved adaptive polynomial-based forward prediction</article-title>. <source>Mech. Syst. Signal Process</source> <volume>133</volume>, <fpage>106263</fpage>. <pub-id pub-id-type="doi">10.1016/j.ymssp.2019.106263</pub-id>
</citation>
</ref>
<ref id="B67">
<citation citation-type="journal">
<person-group person-group-type="author">
<name>
<surname>Xu</surname>
<given-names>W.</given-names>
</name>
<name>
<surname>Chen</surname>
<given-names>C.</given-names>
</name>
<name>
<surname>Guo</surname>
<given-names>T.</given-names>
</name>
<name>
<surname>Chen</surname>
<given-names>M.</given-names>
</name>
</person-group> (<year>2019b</year>). <article-title>Evaluation of frequency evaluation index based compensation for benchmark study in real-time hybrid simulation</article-title>. <source>Mech. Syst. Signal Process</source> <volume>130</volume>, <fpage>649</fpage>&#x2013;<lpage>663</lpage>. <pub-id pub-id-type="doi">10.1016/j.ymssp.2019.05.039</pub-id>
</citation>
</ref>
<ref id="B68">
<citation citation-type="journal">
<person-group person-group-type="author">
<name>
<surname>Yang</surname>
<given-names>J. N.</given-names>
</name>
<name>
<surname>Agrawal</surname>
<given-names>A. K.</given-names>
</name>
<name>
<surname>Samali</surname>
<given-names>B.</given-names>
</name>
<name>
<surname>Wu</surname>
<given-names>J.-C.</given-names>
</name>
</person-group> (<year>2004</year>). <article-title>Benchmark problem for response control of wind-excited tall buildings</article-title>. <source>J. Eng. Mech.</source> <volume>130</volume>, <fpage>437</fpage>&#x2013;<lpage>446</lpage>. <pub-id pub-id-type="doi">10.1061/(ASCE)0733-9399(2004)130:4(437)</pub-id>
</citation>
</ref>
<ref id="B69">
<citation citation-type="journal">
<person-group person-group-type="author">
<name>
<surname>Zhou</surname>
<given-names>H.</given-names>
</name>
<name>
<surname>Xu</surname>
<given-names>D.</given-names>
</name>
<name>
<surname>Shao</surname>
<given-names>X.</given-names>
</name>
<name>
<surname>Ning</surname>
<given-names>X.</given-names>
</name>
<name>
<surname>Wang</surname>
<given-names>T.</given-names>
</name>
</person-group> (<year>2019</year>). <article-title>A robust linear-quadratic-Gaussian controller for the real-time hybrid simulation on a benchmark problem</article-title>. <source>Mech. Syst. Signal Process</source> <volume>133</volume>, <fpage>106260</fpage>. <pub-id pub-id-type="doi">10.1016/j.ymssp.2019.106260</pub-id>
</citation>
</ref>
</ref-list>
</back>
</article>