10.5281/ZENODO.4025520
Suparno Bhattacharyya
0000-0002-9077-3415
Pennsylvania State University
Joseph. P. Cusumano
Pennsylvania State University
An Energy Closure Criterion for Model Reduction of a Kicked Euler-Bernoulli Beam
Zenodo
2020
proper orthogonal decomposition (POD)
model order reduction
energy closure analysis
structural vibrations
dynamical systems
reduced order model (ROM)
2020-09-12
en
https://zenodo.org/record/4026633
10.5281/zenodo.4025521
10.5281/zenodo.4025558
10.5281/zenodo.4025676
10.5281/zenodo.4026633
4.0
Creative Commons Attribution 4.0 International
Open Access
<p>MATLAB source code accompanying the forthcoming research article:</p>
<p>Bhattacharyya Suparno, Cusumano, Joseph P., 2020,<strong> An Energy Closure Criterion for Model Reduction of a Kicked Euler-Bernoulli Beam, </strong><em>Journal of Vibration and Acoustics </em>(in press).</p>
<p><strong>Contact:</strong> Suparno Bhattacharyya (<a href="mailto:sxb1086@psu.edu">sxb1086@psu.edu</a>/suparno.bhattacharyya@gmail.com), Penn State University.<br>
</p>
<p><strong>Abstract: </strong>Reduced order models (ROMs) can be simulated with lower computational cost while being more amenable to theoretical analysis. Here, we examine the performance of the proper orthogonal decomposition (POD), a data-driven model reduction technique. We show that the accuracy of ROMs obtained using POD depends on the type of data used and, more crucially, on the criterion used to select the number of proper orthogonal modes (POMs) used for the model. Simulations of a simply supported Euler-Bernoulli beam subjected to periodic impulsive loads are used to generate ROMs via POD, which are then simulated for comparison with the full system. We assess the accuracy of ROMs obtained using steady-state displacement, velocity, and strain fields, tuning the spatiotemporal localization of applied impulses to control the number of excited modes in, and hence the dimensionality of, the system's response. We show that conventional variance-based mode selection leads to inaccurate models for sufficiently impulsive loading, and that this poor performance is explained by the energy imbalance on the reduced subspace. Specifically, the subspace of POMs capturing a fixed amount (say, 99.9%) of the total variance underestimates the energy input and dissipated in the ROM, yielding inaccurate reduced-order simulations. This problem becomes more acute as the loading becomes more spatio-temporally localized (more impulsive). Thus, energy closure analysis provides an improved method for generating ROMs with energetics that properly reflect that of the full system, resulting in simulations that accurately represent the system's true behavior.</p>
<p> </p>
<p><strong>Code description:</strong> These two MATLAB programs were used to generate Figs. 5c, 5d, and Figs. 7 of the paper, which show the energy balance error (<span class="math-tex">\(e_{_W}\)</span>) on the reduced subspace, and the associated modeling errors (<span class="math-tex">\(\widehat{e}_d\)</span> and <span class="math-tex">\(\widehat{e}_v\)</span>) against different values of the subspace dimension <span class="math-tex">\(P\)</span>. This code can also be used to calculate these errors in various other situations, with different parameter values.</p>
<p><em>Instructions:</em></p>
<ul>
<li><em>Download both programs</em></li>
<li><em>Open "Energy_Balance_and_Modeling_Errors.app" in MATLAB</em></li>
<li><em>Execute the app</em></li>
<li><em>Enter the values of </em>
<ul>
<li><span class="math-tex">\(\epsilon\)</span> <em>(parameter controlling spatial localization of the forcing function; <span class="math-tex">\(\epsilon \leq 2(1-s)\)</span>)</em></li>
<li><em><span class="math-tex">\(\tau\)</span> (parameter controlling temporal localization of the external forcing; <span class="math-tex">\(\tau \leq T\)</span>)</em></li>
<li><em><span class="math-tex">\(T\)</span></em> <em>(time period of the periodic forcing function)</em></li>
<li><span class="math-tex">\(c_m\)</span><em>(material damping coefficient)</em></li>
<li><span class="math-tex">\(c_v\)</span><em> (viscous damping coefficient)</em></li>
<li><em>field</em>:<em> (choose -1,0, or 1 to select the field to be used for generating the proper orthogonal modes; -1 for strain, 0 for velocity, and 1 for displacement field)</em></li>
<li><em><em><span class="math-tex">\(s\)</span></em> (location on the beam where the amplitude of the forcing is maximum; in the paper <span class="math-tex">\(s=1/\sqrt{2}\)</span>)</em></li>
</ul>
</li>
<li> <em>Press "Run"</em></li>
</ul>
<p>Check out the file titled "App_interface.JPG" for an illustration of the user interface.</p>
<p> </p>
<p><strong>Comments: </strong>The MATLAB app 'Energy_Balance_and_Modeling_Errors.mlapp' is a GUI for the MATLAB function 'ew.m' which has outputs 'ewt', 'Wdt', 'Wft', and 'z', representing the energy balance error, energy dissipated over one forcing period, energy input over one forcing period, and the modeling errors, respectively. The output 'z' is a <span class="math-tex">\(2\times P_{max}\)</span> matrix whose first row represents the displacement error <span class="math-tex">\(\widehat{e}_d\)</span> and second row the velocity error <span class="math-tex">\(\widehat{e}_v\)</span>, computed for different values of <span class="math-tex">\(P\)</span> ranging from <span class="math-tex">\(1\)</span> to <span class="math-tex">\(P_{max}\)</span>. <span class="math-tex">\(P_{max}\)</span> represents the maximum value of the subspace dimension <span class="math-tex">\(P\)</span>, which is also the rank of the associated covariance matrix (see paper for more details). Instead of using the app, one can also directly use 'ew.m' to calculate the energy balance and modeling errors. In that case, however, the graphs will have to be generated manually.</p>