<?xml version="1.0" encoding="UTF-8"?>
<rss version="2.0" xmlns:atom="http://www.w3.org/2005/Atom" xmlns:dc="http://purl.org/dc/elements/1.1/">
  <channel>
    <title>DEV Community: Precise Simulation</title>
    <description>The latest articles on DEV Community by Precise Simulation (@precise-simulation).</description>
    <link>https://dev.to/precise-simulation</link>
    <image>
      <url>https://media2.dev.to/dynamic/image/width=90,height=90,fit=cover,gravity=auto,format=auto/https:%2F%2Fdev-to-uploads.s3.us-east-2.amazonaws.com%2Fuploads%2Fuser%2Fprofile_image%2F64758%2Fb804f753-d689-4359-9878-0ee44804d952.png</url>
      <title>DEV Community: Precise Simulation</title>
      <link>https://dev.to/precise-simulation</link>
    </image>
    <atom:link rel="self" type="application/rss+xml" href="https://dev.to/feed/precise-simulation"/>
    <language>en</language>
    <item>
      <title>Mechanical Stress in Ice-Melting Experiments for Iceberg Research</title>
      <dc:creator>Precise Simulation</dc:creator>
      <pubDate>Thu, 17 Sep 2026 00:00:00 +0000</pubDate>
      <link>https://dev.to/precise-simulation/mechanical-stress-in-ice-melting-experiments-for-iceberg-research-p5i</link>
      <guid>https://dev.to/precise-simulation/mechanical-stress-in-ice-melting-experiments-for-iceberg-research-p5i</guid>
      <description>&lt;p&gt;Melting of the submerged part of an iceberg, its keel, releases freshwater below the ocean surface, influencing water circulation, mixing, and local seawater conditions. Understanding how quickly the keel melts requires relating ice loss to seawater temperature and salinity. In her 2026 University of Manitoba master’s thesis, &lt;em&gt;A Thermodynamic Rate of Ablation for Iceberg Keels&lt;/em&gt;, E. A. Marie combined laboratory experiments and published measurements to develop a model of ice ablation (loss of ice at the surface) as a function of these variables. She then applied it to a model iceberg using estimates of glacier density and trapped-air pressure, together with ocean conditions from a reanalysis product.&lt;/p&gt;

&lt;p&gt;Within that broader work, finite element stress analysis of ice helped examine whether the experimental arrangement itself could influence measured melting. Marie used &lt;a href="https://www.featool.com" rel="noopener noreferrer"&gt;FEATool Multiphysics&lt;/a&gt; in MATLAB to perform finite element analysis (FEA) of a lead-core ice ball, comparing the calculated stress patterns with published melt shapes. The results supported her interpretation that mechanical loading could affect the observed pattern, helping assess the suitability of experiments used to investigate thermodynamic ablation.&lt;/p&gt;

&lt;p&gt;&lt;a href="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.us-east-2.amazonaws.com%2Fuploads%2Farticles%2Frwaoe9cogsk9b2auqh5v.jpg" class="article-body-image-wrapper"&gt;&lt;img src="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.us-east-2.amazonaws.com%2Fuploads%2Farticles%2Frwaoe9cogsk9b2auqh5v.jpg" alt="Horizontal and vertical FEATool normal stress fields for a lead-core ice ball with observed melt outlines overlaid" width="799" height="450"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;In the research, MATLAB ice stress analysis examined the effect of two opposing forces: gravity draws the lead core downward, while buoyancy pushes the surrounding ice upward. The resulting stress field includes compression where the bottom of the core meets the ice. FEATool was used to compute horizontal and vertical normal stresses, showing where the material was in tension or compression in each direction. These directional results gave Marie a way to compare internal loading with the locations where ice had disappeared. In Figure 2.10 of the thesis, reproduced above, the central circle represents the lead core and the surrounding colored region shows the stress distribution in the ice.&lt;/p&gt;

&lt;p&gt;For comparison with the Vanier and Tien ice sphere melting experiment (1970), Marie used MATLAB’s Image Processing Toolbox to trace the original ice-ball outline from their published figure and scale it onto the stress plots. She also used ellipses to trace the reported remnant shape and the concavity that consistently developed at the bottom. Overlaying these shapes made it possible to inspect whether particular melt features coincided with particular stress regions. The outlines therefore represent observations from the earlier experiment, while the colored fields represent the FEATool calculation. Their combination provides a spatial comparison between the experimental geometry and the proposed mechanical explanation.&lt;/p&gt;

&lt;p&gt;The comparison suggested a relationship between tensile stress and ice ablation, with the two stress components showing different spatial patterns. In the horizontal stress plot, the bottom concavity coincided with the highest tensile normal stresses. In the vertical stress plot, regions of greater ablation coincided with both high tensile and high compressive normal stresses, while the sides of the ball showed little or no ablation. Marie reported a similar overall melting pattern in her own experiments, but without the bottom concavity. Her ice balls were held underwater using a fine net rather than an internal lead core. She interpreted this difference, together with the stress maps, as evidence that the weighting method affected the result, and suggested that spatial differences in tensile stress were especially relevant.&lt;/p&gt;

&lt;p&gt;By highlighting possible mechanical stress effects on ice melting, the analysis helped Marie assess the suitability of the experimental method. It offered a mechanical explanation for a feature that could complicate interpretation of temperature- and salinity-dependent melting measurements, and supported Marie’s preference for the net-based arrangement. The comparison remains qualitative: the thesis does not report measured stresses, a quantitative error assessment for the stress model, or a coupled FEATool calculation predicting the evolving melt boundary. Marie explicitly calls for further research on the relationship between stress and melting. The value of the analysis is in identifying and examining a plausible influence on the experiment, with the published ice shapes providing observational context for that interpretation.&lt;/p&gt;

&lt;p&gt;Related FEATool structural-mechanics workflows include the &lt;a href="https://www.featool.com/doc/Structural_Mechanics_05_thick_plate1" rel="noopener noreferrer"&gt;Stress Analysis of a Thick Plate&lt;/a&gt; benchmark, which evaluates directional stresses under prescribed loading, and the &lt;a href="https://www.featool.com/doc/Structural_Mechanics_06_spanner1" rel="noopener noreferrer"&gt;Deformation of a Spanner&lt;/a&gt; tutorial, which applies structural loading to an imported geometry. Although they do not reproduce the ice-ball experiment, they illustrate the same general sequence of defining structural loading, solving the mechanical field, and inspecting stress or deformation results.&lt;/p&gt;

&lt;h2&gt;
  
  
  References
&lt;/h2&gt;

&lt;ul&gt;
&lt;li&gt;Elise Athena Marie. A Thermodynamic Rate of Ablation for Iceberg Keels, MSc thesis, Department of Environment and Geography, University of Manitoba, 2026.&lt;/li&gt;
&lt;/ul&gt;

</description>
      <category>iceberg</category>
      <category>melting</category>
      <category>simulation</category>
      <category>fea</category>
    </item>
    <item>
      <title>Passive Vaccine Cold Chain Container with Multi-PCM Thermal Storage</title>
      <dc:creator>Precise Simulation</dc:creator>
      <pubDate>Thu, 10 Sep 2026 00:00:00 +0000</pubDate>
      <link>https://dev.to/precise-simulation/passive-vaccine-cold-chain-container-with-multi-pcm-thermal-storage-4p0e</link>
      <guid>https://dev.to/precise-simulation/passive-vaccine-cold-chain-container-with-multi-pcm-thermal-storage-4p0e</guid>
      <description>&lt;p&gt;How long can a vaccine container stay cool without electricity? Researchers at the Technological Institute of the Philippines investigated a passive container designed to maintain a vaccine compartment between 2 and 8 °C for 17 days in a constant 35 °C environment. The design combines vacuum insulation with phase change materials (PCM), which absorb heat as they melt.&lt;/p&gt;

&lt;p&gt;The study used the &lt;a href="https://www.featool.com" rel="noopener noreferrer"&gt;&lt;em&gt;FEATool Multiphysics&lt;/em&gt;&lt;/a&gt; toolbox for an independent Computational Fluid Dynamics (CFD) and Finite Element Analysis (FEA) check of the container’s thermal behavior. At the 408-hour design target, the paper reports a vaccine-center temperature of 7.55 °C. The simulation also showed where heat entered the container, helping assess the role of its layered insulation and thermal storage.&lt;/p&gt;

&lt;p&gt;&lt;a href="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.us-east-2.amazonaws.com%2Fuploads%2Farticles%2Fxb562e8p2a1u2f0zl85j.jpg" class="article-body-image-wrapper"&gt;&lt;img src="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.us-east-2.amazonaws.com%2Fuploads%2Farticles%2Fxb562e8p2a1u2f0zl85j.jpg" alt="FEA heat transfer simulation in FEATool Multiphysics of a multi-PCM passive vaccine cold chain container at 408 hours" width="800" height="442"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;The cylindrical container surrounds the vaccine compartment with three PCM layers that change phase at different temperatures. Vacuum insulation slows heat entering from the surroundings, while the PCM layers absorb incoming heat. A central PCM buffer is intended to help prevent excessive cooling near the payload. Together, these components aim to extend storage time without active refrigeration.&lt;/p&gt;

&lt;p&gt;The researchers first developed a two-dimensional axisymmetric finite-volume model in MATLAB to simulate heat transfer and PCM melting. This model represented the container through a cross-section along its axis and included heat exchange with the surroundings through convection and radiation. It was used to explore layer dimensions and select a compact configuration. The primary model predicted a holdover time, the time within the specified temperature range, of 431.7 hours, or about 18 days.&lt;/p&gt;

&lt;p&gt;&lt;em&gt;FEATool&lt;/em&gt; then provided a separate numerical check of the selected design. Its reported temperature field showed a strong change in temperature across the radial layers and much smaller differences along the container’s height. The paper reports axial variation of no more than 0.8 °C. Most heat entered through the cylindrical sidewall, supporting the emphasis on insulation and PCM layers surrounding the vaccine compartment.&lt;/p&gt;

&lt;p&gt;These results describe a simulated design under a constant ambient temperature. Physical prototype testing and qualification remain future work. The &lt;em&gt;FEATool&lt;/em&gt; calculation provides an additional check of the predicted thermal behavior, while the full holdover prediction comes from a primary MATLAB model.&lt;/p&gt;

&lt;h2&gt;
  
  
  References
&lt;/h2&gt;

&lt;ul&gt;
&lt;li&gt;Eugene E. Caniete and Nicanor Serrano, Thermodynamic Synergistic Optimization of Extended-Holdover Multi-PCM Passive Vaccine Cold Chain Containers. Preprint, 2026, doi: 10.2139/ssrn.6929341.&lt;/li&gt;
&lt;/ul&gt;

</description>
      <category>medical</category>
      <category>thermal</category>
      <category>fea</category>
      <category>simulation</category>
    </item>
    <item>
      <title>Aortic Valve Finite Element Analysis</title>
      <dc:creator>Precise Simulation</dc:creator>
      <pubDate>Thu, 03 Sep 2026 00:00:00 +0000</pubDate>
      <link>https://dev.to/precise-simulation/aortic-valve-finite-element-analysis-334f</link>
      <guid>https://dev.to/precise-simulation/aortic-valve-finite-element-analysis-334f</guid>
      <description>&lt;p&gt;Finite Element Analysis (FEA) of the aortic valve can be used to predict leaflet stress, strain, and deformation throughout the cardiac cycle. This is particularly relevant for congenital valve variants such as bicuspid and quadricuspid aortic valves, where altered leaflet geometry can produce asymmetric mechanical loading and localized stress concentrations.&lt;/p&gt;

&lt;p&gt;Aicha Boualiane and Lotfi Hamza Cherif developed patient-specific three-dimensional models of tricuspid (TAV), bicuspid Type 0 (BAV Type 0), bicuspid Type 1 (BAV Type 1), and quadricuspid (QAV) aortic valves. Geometries reconstructed from transesophageal echocardiography (TEE) images using MATLAB and Blender were analyzed with &lt;a href="https://www.featool.com" rel="noopener noreferrer"&gt;&lt;em&gt;FEATool Multiphysics&lt;/em&gt;&lt;/a&gt; for finite element simulation of valve stress and strain under changing pressure loads throughout the cardiac cycle. The simulations showed clear morphology-dependent differences, with the asymmetric BAV and QAV configurations developing greater stress concentrations and more localized deformation than the TAV model.&lt;/p&gt;

&lt;p&gt;&lt;a href="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.us-east-2.amazonaws.com%2Fuploads%2Farticles%2Fgpj5v0g86ys2hta84q5i.jpg" class="article-body-image-wrapper"&gt;&lt;img src="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.us-east-2.amazonaws.com%2Fuploads%2Farticles%2Fgpj5v0g86ys2hta84q5i.jpg" alt="Finite element modeling of the aortic valve. (a) Mesh generation steps, (b) identification of the aortic valve behavior, (c) representation of initial conditions applied to the aortic valve, (d) defining boundary conditions, and (e) finite element solver." width="800" height="600"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;The modeling workflow began with TEE image acquisition, image post-processing, and segmentation of the valve anatomy. MATLAB and Blender were then used to construct the valve geometries before the finite element stage. The paper presents the FEA workflow as a sequence covering mesh generation, definition of valve behavior, initial conditions, boundary conditions, and finite element solution. &lt;em&gt;FEATool Multiphysics&lt;/em&gt; was used as the finite element simulation environment for three-dimensional biomechanical analysis of aortic valve leaflet stress, strain, and deformation under time-dependent pressure loading. The valves were assigned initial stresses and subjected to a surface-dependent variable pressure profile as a boundary condition. This allowed the analysis to follow changes in leaflet stress and deformation as the transvalvular loading changed rather than treating the valve as a single static load case.&lt;/p&gt;

&lt;p&gt;The simulations combined linear elastic and nonlinear hyperelastic material descriptions. Two numerical solution approaches were used: the linear MUMPS solver and the nonlinear FEniCS solver. The paper reports that both were employed to ensure convergence of the results. Mesh sensitivity was also examined using characteristic mesh sizes of 1.24, 0.62, and 0.31 mm, with von Mises stress, first principal stress, and first principal strain compared for each valve type. This provided a direct check on the sensitivity of the principal biomechanical quantities to mesh refinement without making the stress and strain comparison dependent on a single discretization.&lt;/p&gt;

&lt;p&gt;The FEATool results highlighted how strongly valve morphology influenced the mechanical response. For the tricuspid valve, leaflet stresses at peak systole and diastole were comparatively moderate and distributed in a more homogeneous and symmetric pattern. The congenital variants produced less uniform behavior. BAV Type 0 showed a more even strain distribution between its cusps, whereas BAV Type 1 exhibited an asymmetric strain pattern with a peak around the fused cusp and raphe. The asymmetric QAV geometry similarly produced several regions of elevated stress concentration. Overall, the BAV and QAV models showed larger deformation peaks than the TAV model.&lt;/p&gt;

&lt;p&gt;These differences allowed the researchers to identify mechanically vulnerable regions that would be difficult to characterize from valve geometry alone. The paper relates the higher and more localized mechanical loading in congenital variants to mechanisms that may contribute to valve degeneration and calcification, particularly where repeated leaflet loading is concentrated. Rather than treating TAV, BAV, and QAV as geometrically different versions of the same mechanical system, the simulations demonstrate that their distinct morphologies produce distinct stress and strain environments. The resulting framework is intended to support patient-specific assessment of valve biomechanics and potentially inform more individualized evaluation and treatment planning.&lt;/p&gt;

&lt;p&gt;In this study, &lt;em&gt;FEATool Multiphysics&lt;/em&gt; was used for three-dimensional finite element analysis of patient-specific aortic valve biomechanics. The workflow included reconstructed valve geometries, time-dependent pressure loading, stress and strain evaluation, mesh sensitivity analysis, and linear and nonlinear solver approaches. The application provides an example of using FEATool for biomechanical and structural mechanics simulations involving complex anatomical geometry and changing loads over the cardiac cycle. Related FEATool examples include &lt;a href="https://www.featool.com/doc/Structural_Mechanics_05_thick_plate1" rel="noopener noreferrer"&gt;Stress Analysis of a Thick Plate&lt;/a&gt;, which demonstrates three-dimensional stress analysis under a pressure load, and &lt;a href="https://www.featool.com/doc/Structural_Mechanics_06_spanner1" rel="noopener noreferrer"&gt;Deformation of a Spanner&lt;/a&gt;, which demonstrates three-dimensional structural analysis with imported geometry. These examples do not reproduce the valve model, but provide useful starting points for related FEATool structural mechanics workflows.&lt;/p&gt;

&lt;h2&gt;
  
  
  References
&lt;/h2&gt;

&lt;ul&gt;
&lt;li&gt;A. Boualiane, L. H. Cherif. Biomechanical Analysis of Stresses and Strains of the Healthy Aortic Valve and Its Congenital Variants Throughout the Cardiac Cycle: A Finite Element Approach, International Journal for Numerical Methods in Biomedical Engineering, 42(4), e70168, 2026, doi: 10.1002/cnm.70168.&lt;/li&gt;
&lt;/ul&gt;

</description>
      <category>medical</category>
      <category>matlab</category>
      <category>fea</category>
      <category>aorticvalve</category>
    </item>
    <item>
      <title>Battery-Free Solar PCM Cold Storage</title>
      <dc:creator>Precise Simulation</dc:creator>
      <pubDate>Thu, 27 Aug 2026 00:00:00 +0000</pubDate>
      <link>https://dev.to/precise-simulation/battery-free-solar-pcm-cold-storage-eop</link>
      <guid>https://dev.to/precise-simulation/battery-free-solar-pcm-cold-storage-eop</guid>
      <description>&lt;p&gt;Keeping harvested tomatoes cool is difficult in off-grid tropical regions, where high ambient temperatures accelerate deterioration but reliable electricity may not be available. Solar-powered refrigeration can provide daytime cooling, but maintaining low temperatures after sunset commonly requires electrochemical batteries. This study instead investigates whether phase change material (PCM) can store cooling thermally and provide a battery-free alternative for small-scale cold storage.&lt;/p&gt;

&lt;p&gt;The researchers developed a coupled refrigeration and thermal-storage simulation framework. COCO modeled the propane R-290 vapor-compression refrigeration cycle, while &lt;a href="https://www.featool.com" rel="noopener noreferrer"&gt;&lt;em&gt;FEATool Multiphysics&lt;/em&gt;&lt;/a&gt; modeled transient heat transfer and solid-liquid phase change within the PCM and tomato storage chamber. The combined simulations showed that PCM storage can buffer the chamber against temperature changes and substantially extend cooling into periods without solar input, supporting the feasibility of battery-free operation under the simulated tropical conditions.&lt;/p&gt;

&lt;p&gt;&lt;a href="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.us-east-2.amazonaws.com%2Fuploads%2Farticles%2Fgfoad3dm2h8x4kcs98bl.jpg" class="article-body-image-wrapper"&gt;&lt;img src="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.us-east-2.amazonaws.com%2Fuploads%2Farticles%2Fgfoad3dm2h8x4kcs98bl.jpg" alt="FEATool Multiphysics temperature distribution and heat-flux gradients in the PCM layer surrounding a tomato cold-storage chamber during solar charging" width="799" height="450"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;The modeled system combines a photovoltaic (PV) array, a direct-current compressor refrigeration cycle, an insulated tomato chamber, and PCM modules arranged around the storage space. During periods of solar input, the refrigeration system cools both the chamber and PCM, storing cooling capacity through sensible and latent heat effects. When solar input is unavailable, the PCM absorbs heat as it changes phase and helps maintain the chamber temperature. FEATool represented this transient thermal behavior with an enthalpy-based phase-change formulation, accounting for sensible energy, latent energy, liquid fraction, and heat conduction between the PCM and chamber. The model also included environmental heat gain and the thermal load associated with the stored tomatoes.&lt;/p&gt;

&lt;p&gt;The FEATool solution resolved how the PCM temperature field and phase state evolved through charging and discharge. The reported simulations show the PCM undergoing almost complete phase change, with liquid fraction varying from 0.05 to 0.95 and discharge lasting about 17 to 19 hours. Temperature-field results also show heat transfer between the central tomato chamber and the surrounding PCM layer. At the complete-system level, adding PCM reduced the average chamber temperature from 16.5 °C to 6 °C and reduced temperature fluctuations from ±2.8 °C to ±0.6 °C. Cooling autonomy increased from 3 hours without PCM to 17 hours with PCM, demonstrating how the thermal storage modeled in FEATool bridges the gap between daytime solar refrigeration and nighttime cooling demand.&lt;/p&gt;

&lt;p&gt;FEATool formed the thermal-storage part of a broader COCO-FEATool workflow. COCO supplied the refrigeration-cycle performance, including a simulated R-290 cooling capacity of 1371 W at 693 W compressor power and a coefficient of performance (COP) of 2.0. The transient FEATool results supplied the PCM and chamber behavior needed to evaluate how that cooling was stored and released over time. Within the resulting energy balance, the paper reports that PCM storage accounted for approximately 43.6% of the total refrigeration duty. Parametric analysis further showed that cooling autonomy was particularly sensitive to tomato load, PCM latent capacity, and insulation performance, making these important variables for subsequent system design and scaling.&lt;/p&gt;

&lt;p&gt;The coupled numerical framework was checked using several independent procedures. Refrigeration-cycle results were compared with thermodynamic benchmarks, the PCM phase-change behavior was compared with published melting data, and grid refinement was used to test numerical convergence. The reported mesh-independence test produced a temperature change below 0.4%, while the global energy-balance residual remained below 3%. These checks support the numerical consistency of the model, but the authors also identify an important limitation: validation was based on literature data and energy balances rather than a full field-scale experiment. The study additionally considered a specific PCM volume and chamber configuration, so other storage sizes, geometries, and PCM types would require further investigation.&lt;/p&gt;

&lt;p&gt;In this work, FEATool Multiphysics provided the transient thermal model within a larger solar-refrigeration workflow, resolving the PCM and chamber temperature field, heat conduction, and enthalpy-based solid-liquid phase change. This allowed the researchers to connect thermal-storage behavior with the system-level refrigeration model and quantify how PCM buffering affected chamber stability and cooling autonomy. Related FEATool examples include &lt;a href="https://www.featool.com/doc/Heat_Transfer_01_heat_transfer1" rel="noopener noreferrer"&gt;Transient Heat Diffusion in a Rod&lt;/a&gt; for time-dependent conduction, &lt;a href="https://www.featool.com/doc/Heat_Transfer_08_heat_transfer6" rel="noopener noreferrer"&gt;Heat Conduction with Tabulated Thermal Conductivity&lt;/a&gt; for temperature-dependent material properties, and &lt;a href="https://www.featool.com/doc/Heat_Transfer_09_battery_pack" rel="noopener noreferrer"&gt;Cooling Analysis of a Battery Pack Module&lt;/a&gt; for transient cooling in a multi-domain thermal system.&lt;/p&gt;

</description>
      <category>featool</category>
      <category>heattransfer</category>
      <category>conduction</category>
      <category>cooling</category>
    </item>
    <item>
      <title>Performance Optimization of a Rocket Nozzle using CFD Simulation</title>
      <dc:creator>Precise Simulation</dc:creator>
      <pubDate>Fri, 21 Aug 2026 00:00:00 +0000</pubDate>
      <link>https://dev.to/precise-simulation/performance-optimization-of-a-rocket-nozzle-using-cfd-simulation-496p</link>
      <guid>https://dev.to/precise-simulation/performance-optimization-of-a-rocket-nozzle-using-cfd-simulation-496p</guid>
      <description>&lt;p&gt;Small sugar-propellant rocket motors, often called &lt;a href="https://en.wikipedia.org/wiki/Rocket_candy" rel="noopener noreferrer"&gt;R-Candy motors&lt;/a&gt;, provide an accessible platform for studying propulsion and nozzle design. Their relatively simple construction makes them suitable for educational and experimental rocketry, but predicting how combustion pressure, temperature, and exhaust flow interact inside a small motor can still require considerable trial and error. In particular, the nozzle must accelerate the combustion gases while maintaining stable chamber pressure, manageable thermal loads, and consistent thrust.&lt;/p&gt;

&lt;p&gt;Researchers at the Instituto Politécnico Nacional combined a systems-based design process with Computational Fluid Dynamics (CFD) to connect simulation, physical measurements, and design refinement. A preliminary motor and convergent-divergent nozzle were developed in SolidWorks and transferred to &lt;a href="https://www.featool.com" rel="noopener noreferrer"&gt;&lt;em&gt;FEATool Multiphysics&lt;/em&gt;&lt;/a&gt;, where the internal flow and thermal fields were simulated. The &lt;em&gt;FEATool&lt;/em&gt; results were then compared with static-firing measurements and fed back into the design process. The study found that the CFD model reproduced the main observed propulsion behavior and provided flow and temperature information that could be used to improve the nozzle geometry and simulation setup.&lt;/p&gt;

&lt;p&gt;&lt;a href="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.us-east-2.amazonaws.com%2Fuploads%2Farticles%2Ftxdfkk99f8qthzg9i147.png" class="article-body-image-wrapper"&gt;&lt;img src="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.us-east-2.amazonaws.com%2Fuploads%2Farticles%2Ftxdfkk99f8qthzg9i147.png" alt="FEATool Multiphysics CFD simulation of velocity, pressure, and temperature fields for the R-Candy combustion chamber and convergent-divergent nozzle" width="800" height="450"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;The motor consisted of an igniter, combustion chamber, and convergent-divergent nozzle designed around a potassium nitrate-sorbitol propellant. The preliminary components were modeled in SolidWorks and the geometry was transferred into &lt;em&gt;FEATool Multiphysics&lt;/em&gt; for fluid dynamics analysis. With the &lt;em&gt;easy-to-use&lt;/em&gt; GUI of &lt;em&gt;FEATool&lt;/em&gt;, the researchers prepared the computational geometry, generated the mesh, specified the governing equations and boundary conditions, solved the model, and evaluated the resulting pressure, temperature, velocity, and streamline fields. The internal gases were modeled as a compressible ideal gas, with the Navier-Stokes equations coupled to energy transport. The simulations also used a k-omega SST turbulence model, and different mesh refinements were tested to check that the predicted thermofluid fields were not strongly dependent on mesh resolution.&lt;/p&gt;

&lt;p&gt;The &lt;em&gt;FEATool&lt;/em&gt; simulations showed the expected main behavior of a convergent-divergent rocket nozzle. Pressure decreased from the combustion chamber through the nozzle, while the flow accelerated from the converging section into a supersonic regime in the divergent region. The calculated temperature field revealed strong thermal gradients around the throat, highlighting a region where material selection and thermal management were particularly important. Streamline and velocity results also allowed the researchers to examine local recirculation, flow acceleration, and shock-related behavior that would be difficult to characterize from external thrust measurements alone. During the numerical work, nonphysical negative pressure values were identified as numerical artifacts. The model was subsequently refined through changes to the local mesh, outlet boundary conditions, and pressure treatment until the spurious behavior was removed.&lt;/p&gt;

&lt;p&gt;Rather than treating each flow calculation as a final result, the researchers used the &lt;em&gt;FEATool&lt;/em&gt; output as feedback for successive design decisions. Pressure-gradient behavior near the nozzle neck led to a reduction of the throat diameter from 6.80 mm to 6.57 mm, improving pressure uniformity and stabilizing the flow before the divergent section. Localized thermal loading identified in the simulations also motivated a change to the nozzle convergence angle to redistribute heat more effectively. Mesh density, inflow conditions, combustion parameters, and boundary conditions were likewise adjusted between simulation cycles. The resulting designs were evaluated using pressure uniformity, outlet temperature homogeneity, and exhaust velocity consistency as quality indicators, connecting the CFD solution fields directly to the wider design and optimization process.&lt;/p&gt;

&lt;p&gt;Experimental testing provided an independent check on the numerical model. Six static firings were performed, with two of the most stable tests selected as reference cases for detailed CFD comparison. For these cases, the reported &lt;em&gt;FEATool&lt;/em&gt; predictions closely followed the measured chamber pressure and thrust, while burn time, total impulse, and specific impulse also showed small differences between simulation and experiment. This agreement supported the use of the computed flow fields for evaluating and refining the nozzle rather than relying entirely on empirical adjustments. The model nevertheless remained an engineering approximation: combustion was simplified, effects such as fuel-grain regression and nozzle erosion were not fully represented, external atmospheric variations were not dynamically modeled, and the available experimental dataset was limited.&lt;/p&gt;

&lt;p&gt;In this work, &lt;em&gt;FEATool Multiphysics&lt;/em&gt; provided a fully integrated CFD environment connecting CAD geometry, meshing, equation and boundary-condition definition, solution, post-processing, and iterative comparison with experiments. This allowed simulated pressure, temperature, velocity, and streamline fields to become practical inputs to nozzle refinement rather than isolated numerical results. For readers developing related models, the &lt;em&gt;FEATool&lt;/em&gt; documentation includes the &lt;a href="https://www.featool.com/doc/Fluid_Dynamics_13_compressible_flow1" rel="noopener noreferrer"&gt;Supersonic Turbulent Flow Past a Prism&lt;/a&gt; tutorial for compressible high-speed flow and shocks, and the &lt;a href="https://www.featool.com/doc/Multiphysics_00_heat_exchanger1" rel="noopener noreferrer"&gt;Heat Exchanger&lt;/a&gt; tutorial for coupled fluid-flow and heat-transfer modeling. These provide useful starting points for related CFD workflows, although they do not reproduce the R-Candy motor model.&lt;/p&gt;

&lt;p&gt;Visit &lt;a href="https://www.featool.com/" rel="noopener noreferrer"&gt;https://www.featool.com/&lt;/a&gt; for more information and toolbox download!&lt;/p&gt;

&lt;h2&gt;
  
  
  References
&lt;/h2&gt;

&lt;ul&gt;
&lt;li&gt;Alejandro Pisil-Carmona, Emilio-Noe Jimenez-Navarro, Diego-Alfredo Padilla-Pérez, Jhonatan-Fernando Eulopa-Hernandez, Pablo-Alejandro Arizpe-Carreon, and Carlos Couder-Castañeda. Systemic CFD Framework for Performance Optimization of R-Candy Propulsion Systems, Applied Sciences, 16, 1592, 2026, doi: 10.3390/app16031592.&lt;/li&gt;
&lt;/ul&gt;

</description>
      <category>cfd</category>
      <category>featool</category>
      <category>rocket</category>
      <category>simulation</category>
    </item>
    <item>
      <title>FEATool Multiphysics 1.18.1 - FEA &amp; CFD GUI Toolbox Update</title>
      <dc:creator>Precise Simulation</dc:creator>
      <pubDate>Wed, 15 Jul 2026 00:00:00 +0000</pubDate>
      <link>https://dev.to/precise-simulation/featool-multiphysics-1181-fea-cfd-gui-toolbox-update-3k3p</link>
      <guid>https://dev.to/precise-simulation/featool-multiphysics-1181-fea-cfd-gui-toolbox-update-3k3p</guid>
      <description>&lt;p&gt;&lt;em&gt;Precise Simulation&lt;/em&gt; is proud to be able to announce the release of &lt;a href="https://www.featool.com" rel="noopener noreferrer"&gt;&lt;strong&gt;FEATool Multiphysics&lt;/strong&gt;&lt;/a&gt; version &lt;strong&gt;1.18.1&lt;/strong&gt;, featuring improved user-interface and graphics performance, new CFD boundary-condition and pressure-normalization options, greater flexibility for advanced customization, and a new heat-transfer optimization example.&lt;/p&gt;

&lt;p&gt;&lt;a href="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2Fvqhuwjksbwshva5yl961.jpg" class="article-body-image-wrapper"&gt;&lt;img src="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2Fvqhuwjksbwshva5yl961.jpg" alt="FEATool Multiphysics - Battery Cell Pack Heat Transfer and Cooling Simulation" width="800" height="670"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;h2&gt;
  
  
  Improved UI and Graphics Performance
&lt;/h2&gt;

&lt;p&gt;Version &lt;em&gt;1.18.1&lt;/em&gt; introduces several improvements to the user interface and graphics rendering. These updates provide a smoother and more responsive experience when setting up models, visualizing results, and working with larger or more complex simulations.&lt;/p&gt;

&lt;h2&gt;
  
  
  New Computational Fluid Dynamics (CFD) Features
&lt;/h2&gt;

&lt;h3&gt;
  
  
  Mean Pressure Outflow Boundary Conditions for CFD
&lt;/h3&gt;

&lt;p&gt;The CFD physics modes now support &lt;a href="https://www.featool.com/doc/physics.html#phys_ns__bc" rel="noopener noreferrer"&gt;mean pressure outflow boundary conditions&lt;/a&gt;. This option provides additional control over outlet behavior and is particularly useful for flow models where the average pressure at an outlet must be prescribed while allowing the local pressure distribution to adjust naturally.&lt;/p&gt;

&lt;p&gt;Rather than fixing pressure pointwise at an outflow boundary, this option enforces the average pressure over the boundary, which can improve numerical stability and give more physically realistic results for many internal and external flow problems where the pressure field isn't uniform across the outlet.&lt;/p&gt;

&lt;h3&gt;
  
  
  Pressure Normalization for CFD Physics Modes
&lt;/h3&gt;

&lt;p&gt;New automatic pressure-normalization functionality has also been added for CFD simulations. Pressure normalization can help remove the arbitrary pressure offset that arises in incompressible-flow problems and improve numerical handling of computed pressure fields.&lt;/p&gt;

&lt;p&gt;This helps to effectively stabilize the solution by pinning down the pressure level, avoiding the classic "floating pressure" issue in incompressible flow simulations, and therefore increases stability and convergence of flow solvers.&lt;/p&gt;

&lt;h2&gt;
  
  
  New Heat-Transfer Optimization Example
&lt;/h2&gt;

&lt;p&gt;Version &lt;em&gt;1.18.1&lt;/em&gt; also includes a new m-script &lt;a href="https://featool.com/tutorial/2026/05/20/Two-Parameter-Thermal-FEA-Design-Optimization/" rel="noopener noreferrer"&gt;heat-transfer design and optimization example&lt;/a&gt;.&lt;/p&gt;

&lt;p&gt;The example demonstrates how to formulate and solve a heat-transfer battery optimization problem using a MATLAB m-script workflow by setting up an optimization loop around a thermal simulation, making it a useful starting template for anyone looking to couple &lt;em&gt;FEATool Multiphysics&lt;/em&gt; simulations with design optimization tasks.&lt;/p&gt;

&lt;h2&gt;
  
  
  Exposed and Overridable M-File Functions
&lt;/h2&gt;

&lt;p&gt;For users working on the MATLAB command line and m-file scripting, a wider range of internal &lt;em&gt;FEATool&lt;/em&gt; m-file functions are now exposed and can be directly overridden by users (following the same API). This makes it easier to customize workflows, modify selected solver or preprocessing behavior, and integrate project-specific functionality without changing the core &lt;em&gt;FEATool Multiphysics&lt;/em&gt; installation.&lt;/p&gt;

&lt;p&gt;The update gives advanced users and developers greater control while preserving compatibility with standard &lt;em&gt;FEATool&lt;/em&gt; workflows and is backwards compatible with older releases.&lt;/p&gt;

&lt;h2&gt;
  
  
  Upgrade to FEATool Multiphysics 1.18.1
&lt;/h2&gt;

&lt;p&gt;&lt;em&gt;FEATool Multiphysics™ 1.18.1&lt;/em&gt; and &lt;em&gt;CFDTool™ 1.11.1&lt;/em&gt; is a focused update that improves everyday usability while expanding the CFD, customization, and optimization capabilities of the platform. The new release also fixes and improves many smaller bugs found in earlier versions. Users are therefore encouraged to upgrade to the latest version and explore the new features and example scripts.&lt;/p&gt;

&lt;p&gt;The updated toolboxes are available right now both as stand-alone desktop apps, and also as &lt;em&gt;MATLAB&lt;/em&gt; toolbox Add-Ons, with fully interactive GUI and cross-platform support for the Microsoft Windows, Linux, and MacOS operating systems. The toolboxes can be downloaded directly from &lt;a href="https://www.featool.com/download/" rel="noopener noreferrer"&gt;www.featool.com/download&lt;/a&gt; (&lt;em&gt;or installed directly with one-click from the MATLAB Add-Ons Toolbar&lt;/em&gt;).&lt;/p&gt;

&lt;p&gt;If you use &lt;em&gt;FEATool Multiphysics&lt;/em&gt; and find it useful in your work or studies please do share your models, modeling experience, and consider recommending the toolboxes to your colleagues and coworkers.&lt;/p&gt;

</description>
      <category>fea</category>
      <category>cfd</category>
      <category>multiphysics</category>
      <category>matlab</category>
    </item>
    <item>
      <title>Dual Parameter Thermal FEA Design Optimization with FEATool Multiphysics</title>
      <dc:creator>Precise Simulation</dc:creator>
      <pubDate>Wed, 20 May 2026 00:00:00 +0000</pubDate>
      <link>https://dev.to/precise-simulation/dual-parameter-thermal-fea-design-optimization-with-featool-multiphysics-m67</link>
      <guid>https://dev.to/precise-simulation/dual-parameter-thermal-fea-design-optimization-with-featool-multiphysics-m67</guid>
      <description>&lt;p&gt;The following post shows how to define and solve a two parameter thermal FEA design and optimization model problem with &lt;strong&gt;&lt;em&gt;FEATool Multiphysics&lt;/em&gt;&lt;/strong&gt; and MATLAB's optimization functionality.&lt;/p&gt;

&lt;h2&gt;
  
  
  Design Optimization for Cooling a Heated Block with Target Temperature
&lt;/h2&gt;

&lt;p&gt;In addition to featuring an &lt;em&gt;easy-to-use&lt;/em&gt; graphical user interface (GUI), &lt;em&gt;FEATool Multiphysics&lt;/em&gt; also includes native &lt;a href="https:/www.featool.com/doc/files.html" rel="noopener noreferrer"&gt;application programming interface (API) for FEA and physics simulation&lt;/a&gt; fully compatible with MATLAB functions and toolboxes such as Simulink and Optimization. Simulation models can first be prototyped and defined in the GUI, and later exported to equivalent stand alone simulation scripts. These in turn can easily be modified to run parametric simulation studies, or integrated into more advanced applications, such as here for design optimization.&lt;/p&gt;

&lt;p&gt;&lt;a href="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2Fuhql6qma76ftowsnusu0.png" class="article-body-image-wrapper"&gt;&lt;img src="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2Fuhql6qma76ftowsnusu0.png" alt="FEATool Multiphysics - Design Optimization for Cooling with Target Temperature" width="800" height="353"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;In the following, &lt;em&gt;FEATool&lt;/em&gt;'s heat transfer solver is combined with MATLAB's &lt;a href="https://www.mathworks.com/help/matlab/ref/fminbnd.html" rel="noopener noreferrer"&gt;&lt;code&gt;fminbnd&lt;/code&gt;&lt;/a&gt; optimization function to solve a practical thermal design problem, that is finding the optimal number and simultaneously the diameter of water-filled cooling pipes embedded in a heated block, so that the peak temperature reaches a prescribed target value. The approach presented here requires no additional toolboxes beyond a base MATLAB installation.&lt;/p&gt;

&lt;h2&gt;
  
  
  Problem Description - Geometry and Mesh
&lt;/h2&gt;

&lt;p&gt;The geometry consists of a heated block (with dimensions 400 × 200 × 20 mm) mounted on top of a cooling plate with the same footprint and thickness. Between &lt;em&gt;1&lt;/em&gt; and &lt;em&gt;9&lt;/em&gt; cylindrical cooling pipes of variable diameter (5-19 mm) run lengthwise through the cooling plate, carrying chilled water at a mass flow rate of 0.02 kg/s. A constant volumetric heat source of 500 W is applied to the top block, and natural convection to ambient air (20 W/(m&lt;sup&gt;2&lt;/sup&gt;·K), 298.15 K) acts on all external surfaces. The goal is to find the pipe count &lt;em&gt;n&lt;/em&gt; and diameter &lt;em&gt;D&lt;/em&gt; that minimize |&lt;em&gt;T&lt;/em&gt;&lt;sup&gt;&lt;em&gt;&lt;/em&gt;&lt;/sup&gt;&lt;em&gt; − &lt;em&gt;T&lt;/em&gt;max| subject to the constraint &lt;em&gt;T&lt;/em&gt;max ≤ &lt;em&gt;T&lt;/em&gt;&lt;sup&gt;&lt;/sup&gt;&lt;/em&gt;, where the target temperature is &lt;em&gt;T&lt;/em&gt;&lt;sup&gt;*&lt;/sup&gt; = 358.15 K (85°C).&lt;br&gt;
&lt;/p&gt;

&lt;div class="highlight js-code-highlight"&gt;
&lt;pre class="highlight matlab"&gt;&lt;code&gt;&lt;span class="n"&gt;geom_2D&lt;/span&gt; &lt;span class="o"&gt;=&lt;/span&gt; &lt;span class="n"&gt;l_block_cooling_geometry&lt;/span&gt;&lt;span class="p"&gt;(&lt;/span&gt; &lt;span class="n"&gt;n_pipes&lt;/span&gt;&lt;span class="p"&gt;,&lt;/span&gt; &lt;span class="n"&gt;diameter&lt;/span&gt;&lt;span class="p"&gt;,&lt;/span&gt; &lt;span class="mi"&gt;2&lt;/span&gt; &lt;span class="p"&gt;);&lt;/span&gt;

&lt;span class="n"&gt;grid_2D&lt;/span&gt; &lt;span class="o"&gt;=&lt;/span&gt; &lt;span class="n"&gt;gridgen&lt;/span&gt;&lt;span class="p"&gt;(&lt;/span&gt; &lt;span class="n"&gt;geom_2D&lt;/span&gt;&lt;span class="p"&gt;,&lt;/span&gt; &lt;span class="s1"&gt;'hmax'&lt;/span&gt;&lt;span class="p"&gt;,&lt;/span&gt; &lt;span class="mf"&gt;0.0025&lt;/span&gt; &lt;span class="p"&gt;);&lt;/span&gt;
&lt;span class="n"&gt;grid_3D&lt;/span&gt; &lt;span class="o"&gt;=&lt;/span&gt; &lt;span class="n"&gt;gridextrude&lt;/span&gt;&lt;span class="p"&gt;(&lt;/span&gt; &lt;span class="n"&gt;grid_2D&lt;/span&gt;&lt;span class="p"&gt;,&lt;/span&gt; &lt;span class="mi"&gt;20&lt;/span&gt;&lt;span class="p"&gt;,&lt;/span&gt; &lt;span class="mf"&gt;0.4&lt;/span&gt;&lt;span class="p"&gt;,&lt;/span&gt; &lt;span class="o"&gt;-&lt;/span&gt;&lt;span class="mi"&gt;2&lt;/span&gt; &lt;span class="p"&gt;);&lt;/span&gt;
&lt;/code&gt;&lt;/pre&gt;

&lt;/div&gt;



&lt;p&gt;By exploiting the cross-sectional symmetry of the configuration, only one half of the domain needs to be modeled. The 2D cross-sectional geometry, comprising the top block, the cooling plate, and up to [&lt;em&gt;n&lt;/em&gt;/2] circular pipe cut-outs, is generated with the &lt;em&gt;FEATool&lt;/em&gt; CAD geometry API meshed using the built-in mesh generation function &lt;a href="https:/www.featool.com/doc/gridgen_8m.html" rel="noopener noreferrer"&gt;&lt;code&gt;gridgen&lt;/code&gt;&lt;/a&gt; with a maximum element size of 2.5 mm. The resulting 2D mesh is then &lt;a href="https:/www.featool.com/doc/gridextrude_8m.html" rel="noopener noreferrer"&gt;extruded&lt;/a&gt; 20 cells lengths along the 400 mm length to produce a full 3D tetrahedral mesh.&lt;/p&gt;

&lt;h2&gt;
  
  
  Physics and Boundary Conditions
&lt;/h2&gt;

&lt;p&gt;The &lt;a href="https:/www.featool.com/doc/physics.html#phys_heat" rel="noopener noreferrer"&gt;heat transfer physics mode&lt;/a&gt; is used to simulate thermal conduction and convection. Material properties and source terms are assigned per subdomain, the top block has a thermal conductivity of 80 W/(m·K) and includes the volumetric heat source, while the bottom cooling plate (subdomain 2) has thermal conductivity 0.5 W/(m·K).&lt;/p&gt;

&lt;p&gt;All external faces are assigned a natural convection boundary condition using the &lt;em&gt;heat flux&lt;/em&gt; boundary condition type (4) with a heat transfer coefficient of 20 W/(m&lt;sup&gt;2&lt;/sup&gt;·K) and surrounding ambient temperature 298.15 K.&lt;br&gt;
&lt;/p&gt;

&lt;div class="highlight js-code-highlight"&gt;
&lt;pre class="highlight matlab"&gt;&lt;code&gt;&lt;span class="n"&gt;fea&lt;/span&gt;&lt;span class="o"&gt;.&lt;/span&gt;&lt;span class="n"&gt;phys&lt;/span&gt;&lt;span class="o"&gt;.&lt;/span&gt;&lt;span class="n"&gt;ht&lt;/span&gt;&lt;span class="o"&gt;.&lt;/span&gt;&lt;span class="n"&gt;bdr&lt;/span&gt;&lt;span class="o"&gt;.&lt;/span&gt;&lt;span class="n"&gt;sel&lt;/span&gt;&lt;span class="p"&gt;(&lt;/span&gt;&lt;span class="n"&gt;external_boundaries&lt;/span&gt;&lt;span class="p"&gt;)&lt;/span&gt; &lt;span class="o"&gt;=&lt;/span&gt; &lt;span class="mi"&gt;4&lt;/span&gt;&lt;span class="p"&gt;;&lt;/span&gt;
&lt;span class="p"&gt;[&lt;/span&gt;&lt;span class="n"&gt;fea&lt;/span&gt;&lt;span class="o"&gt;.&lt;/span&gt;&lt;span class="n"&gt;phys&lt;/span&gt;&lt;span class="o"&gt;.&lt;/span&gt;&lt;span class="n"&gt;ht&lt;/span&gt;&lt;span class="o"&gt;.&lt;/span&gt;&lt;span class="n"&gt;bdr&lt;/span&gt;&lt;span class="o"&gt;.&lt;/span&gt;&lt;span class="n"&gt;coef&lt;/span&gt;&lt;span class="p"&gt;{&lt;/span&gt;&lt;span class="mi"&gt;4&lt;/span&gt;&lt;span class="p"&gt;,&lt;/span&gt;&lt;span class="k"&gt;end&lt;/span&gt;&lt;span class="p"&gt;}{&lt;/span&gt;&lt;span class="n"&gt;external_boundaries&lt;/span&gt;&lt;span class="p"&gt;}]&lt;/span&gt; &lt;span class="o"&gt;=&lt;/span&gt; &lt;span class="nb"&gt;deal&lt;/span&gt;&lt;span class="p"&gt;({&lt;/span&gt;&lt;span class="mi"&gt;0&lt;/span&gt;&lt;span class="p"&gt;,&lt;/span&gt; &lt;span class="mi"&gt;20&lt;/span&gt;&lt;span class="p"&gt;,&lt;/span&gt; &lt;span class="mf"&gt;298.15&lt;/span&gt;&lt;span class="p"&gt;,&lt;/span&gt; &lt;span class="mi"&gt;0&lt;/span&gt;&lt;span class="p"&gt;,&lt;/span&gt; &lt;span class="mi"&gt;0&lt;/span&gt;&lt;span class="p"&gt;});&lt;/span&gt;
&lt;/code&gt;&lt;/pre&gt;

&lt;/div&gt;



&lt;p&gt;For the pipe surfaces, the forced convection heat transfer coefficient is computed from the flow conditions using the Dittus-Boelter correlation (Nusselt number &lt;em&gt;Nu&lt;/em&gt;) when the pipe Reynolds number is turbulent (&lt;em&gt;Re&lt;/em&gt; ≥ 10 000), or the constant laminar value of &lt;em&gt;Nu&lt;/em&gt; = 3.66 otherwise. And the cooler water temperature is assumed to be 278.15 K.&lt;br&gt;
&lt;/p&gt;

&lt;div class="highlight js-code-highlight"&gt;
&lt;pre class="highlight matlab"&gt;&lt;code&gt;&lt;span class="n"&gt;Re&lt;/span&gt; &lt;span class="o"&gt;=&lt;/span&gt; &lt;span class="p"&gt;(&lt;/span&gt;&lt;span class="mi"&gt;4&lt;/span&gt; &lt;span class="o"&gt;*&lt;/span&gt; &lt;span class="n"&gt;mass_flow_rate&lt;/span&gt;&lt;span class="p"&gt;)&lt;/span&gt; &lt;span class="p"&gt;/&lt;/span&gt; &lt;span class="p"&gt;(&lt;/span&gt;&lt;span class="nb"&gt;pi&lt;/span&gt; &lt;span class="o"&gt;*&lt;/span&gt; &lt;span class="n"&gt;diameter&lt;/span&gt; &lt;span class="o"&gt;*&lt;/span&gt; &lt;span class="n"&gt;viscosity&lt;/span&gt;&lt;span class="p"&gt;);&lt;/span&gt;
&lt;span class="k"&gt;if&lt;/span&gt;&lt;span class="p"&gt;(&lt;/span&gt; &lt;span class="n"&gt;Re&lt;/span&gt; &lt;span class="o"&gt;&amp;gt;=&lt;/span&gt; &lt;span class="mi"&gt;10000&lt;/span&gt; &lt;span class="p"&gt;)&lt;/span&gt;
  &lt;span class="n"&gt;Nu&lt;/span&gt; &lt;span class="o"&gt;=&lt;/span&gt; &lt;span class="mf"&gt;0.023&lt;/span&gt; &lt;span class="o"&gt;*&lt;/span&gt; &lt;span class="n"&gt;Re&lt;/span&gt;&lt;span class="o"&gt;^&lt;/span&gt;&lt;span class="mf"&gt;0.8&lt;/span&gt; &lt;span class="o"&gt;*&lt;/span&gt; &lt;span class="n"&gt;Pr&lt;/span&gt;&lt;span class="o"&gt;^&lt;/span&gt;&lt;span class="mf"&gt;0.4&lt;/span&gt;&lt;span class="p"&gt;;&lt;/span&gt;
&lt;span class="k"&gt;else&lt;/span&gt;
  &lt;span class="n"&gt;Nu&lt;/span&gt; &lt;span class="o"&gt;=&lt;/span&gt; &lt;span class="mf"&gt;3.66&lt;/span&gt;&lt;span class="p"&gt;;&lt;/span&gt;
&lt;span class="k"&gt;end&lt;/span&gt;
&lt;span class="n"&gt;k_thermal_conductivity&lt;/span&gt; &lt;span class="o"&gt;=&lt;/span&gt; &lt;span class="mf"&gt;0.598&lt;/span&gt;&lt;span class="p"&gt;;&lt;/span&gt;
&lt;span class="n"&gt;c_ht&lt;/span&gt; &lt;span class="o"&gt;=&lt;/span&gt; &lt;span class="p"&gt;(&lt;/span&gt;&lt;span class="n"&gt;Nu&lt;/span&gt; &lt;span class="o"&gt;*&lt;/span&gt; &lt;span class="n"&gt;k_thermal_conductivity&lt;/span&gt;&lt;span class="p"&gt;)&lt;/span&gt; &lt;span class="p"&gt;/&lt;/span&gt; &lt;span class="n"&gt;diameter&lt;/span&gt;&lt;span class="p"&gt;;&lt;/span&gt;

&lt;span class="n"&gt;fea&lt;/span&gt;&lt;span class="o"&gt;.&lt;/span&gt;&lt;span class="n"&gt;phys&lt;/span&gt;&lt;span class="o"&gt;.&lt;/span&gt;&lt;span class="n"&gt;ht&lt;/span&gt;&lt;span class="o"&gt;.&lt;/span&gt;&lt;span class="n"&gt;bdr&lt;/span&gt;&lt;span class="o"&gt;.&lt;/span&gt;&lt;span class="n"&gt;sel&lt;/span&gt;&lt;span class="p"&gt;(&lt;/span&gt;&lt;span class="n"&gt;pipe_boundaries&lt;/span&gt;&lt;span class="p"&gt;)&lt;/span&gt; &lt;span class="o"&gt;=&lt;/span&gt; &lt;span class="mi"&gt;4&lt;/span&gt;&lt;span class="p"&gt;;&lt;/span&gt;
&lt;span class="p"&gt;[&lt;/span&gt;&lt;span class="n"&gt;fea&lt;/span&gt;&lt;span class="o"&gt;.&lt;/span&gt;&lt;span class="n"&gt;phys&lt;/span&gt;&lt;span class="o"&gt;.&lt;/span&gt;&lt;span class="n"&gt;ht&lt;/span&gt;&lt;span class="o"&gt;.&lt;/span&gt;&lt;span class="n"&gt;bdr&lt;/span&gt;&lt;span class="o"&gt;.&lt;/span&gt;&lt;span class="n"&gt;coef&lt;/span&gt;&lt;span class="p"&gt;{&lt;/span&gt;&lt;span class="mi"&gt;4&lt;/span&gt;&lt;span class="p"&gt;,&lt;/span&gt;&lt;span class="k"&gt;end&lt;/span&gt;&lt;span class="p"&gt;}{&lt;/span&gt;&lt;span class="n"&gt;pipe_boundaries&lt;/span&gt;&lt;span class="p"&gt;}]&lt;/span&gt; &lt;span class="o"&gt;=&lt;/span&gt; &lt;span class="nb"&gt;deal&lt;/span&gt;&lt;span class="p"&gt;({&lt;/span&gt;&lt;span class="mi"&gt;0&lt;/span&gt;&lt;span class="p"&gt;,&lt;/span&gt; &lt;span class="n"&gt;c_ht&lt;/span&gt;&lt;span class="p"&gt;,&lt;/span&gt; &lt;span class="mf"&gt;278.15&lt;/span&gt;&lt;span class="p"&gt;,&lt;/span&gt; &lt;span class="mi"&gt;0&lt;/span&gt;&lt;span class="p"&gt;,&lt;/span&gt; &lt;span class="mi"&gt;0&lt;/span&gt;&lt;span class="p"&gt;});&lt;/span&gt;
&lt;/code&gt;&lt;/pre&gt;

&lt;/div&gt;



&lt;p&gt;The symmetry planes are assigned boundary condition type 3 (Thermal insulation/symmetry with zero heat flux).&lt;br&gt;
&lt;/p&gt;

&lt;div class="highlight js-code-highlight"&gt;
&lt;pre class="highlight matlab"&gt;&lt;code&gt;&lt;span class="n"&gt;fea&lt;/span&gt;&lt;span class="o"&gt;.&lt;/span&gt;&lt;span class="n"&gt;phys&lt;/span&gt;&lt;span class="o"&gt;.&lt;/span&gt;&lt;span class="n"&gt;ht&lt;/span&gt;&lt;span class="o"&gt;.&lt;/span&gt;&lt;span class="n"&gt;bdr&lt;/span&gt;&lt;span class="o"&gt;.&lt;/span&gt;&lt;span class="n"&gt;sel&lt;/span&gt;&lt;span class="p"&gt;(&lt;/span&gt;&lt;span class="n"&gt;symmetry_boundaries&lt;/span&gt;&lt;span class="p"&gt;)&lt;/span&gt; &lt;span class="o"&gt;=&lt;/span&gt; &lt;span class="mi"&gt;3&lt;/span&gt;&lt;span class="p"&gt;;&lt;/span&gt;
&lt;/code&gt;&lt;/pre&gt;

&lt;/div&gt;



&lt;p&gt;Lastly, the physics mode and FEA model struct is parsed, and solved with the stationary built-in multiphysics FEA solver &lt;a href="https:/www.featool.com/doc/solvestat_8m.html" rel="noopener noreferrer"&gt;&lt;code&gt;solvestat&lt;/code&gt;&lt;/a&gt; The maximum temperature can be obtained using the &lt;a href="https:/www.featool.com/doc/minmaxsubd_8m.html" rel="noopener noreferrer"&gt;&lt;code&gt;minmaxsubd&lt;/code&gt;&lt;/a&gt; function.&lt;br&gt;
&lt;/p&gt;

&lt;div class="highlight js-code-highlight"&gt;
&lt;pre class="highlight matlab"&gt;&lt;code&gt;&lt;span class="n"&gt;fea&lt;/span&gt; &lt;span class="o"&gt;=&lt;/span&gt; &lt;span class="n"&gt;parsephys&lt;/span&gt;&lt;span class="p"&gt;(&lt;/span&gt; &lt;span class="n"&gt;fea&lt;/span&gt; &lt;span class="p"&gt;);&lt;/span&gt;
&lt;span class="n"&gt;fea&lt;/span&gt; &lt;span class="o"&gt;=&lt;/span&gt; &lt;span class="n"&gt;parseprob&lt;/span&gt;&lt;span class="p"&gt;(&lt;/span&gt; &lt;span class="n"&gt;fea&lt;/span&gt; &lt;span class="p"&gt;);&lt;/span&gt;

&lt;span class="n"&gt;fea&lt;/span&gt;&lt;span class="o"&gt;.&lt;/span&gt;&lt;span class="n"&gt;sol&lt;/span&gt;&lt;span class="o"&gt;.&lt;/span&gt;&lt;span class="n"&gt;u&lt;/span&gt; &lt;span class="o"&gt;=&lt;/span&gt; &lt;span class="n"&gt;solvestat&lt;/span&gt;&lt;span class="p"&gt;(&lt;/span&gt; &lt;span class="n"&gt;fea&lt;/span&gt; &lt;span class="p"&gt;);&lt;/span&gt;

&lt;span class="p"&gt;[&lt;/span&gt;&lt;span class="o"&gt;~&lt;/span&gt;&lt;span class="p"&gt;,&lt;/span&gt; &lt;span class="n"&gt;Tmax&lt;/span&gt;&lt;span class="p"&gt;]&lt;/span&gt; &lt;span class="o"&gt;=&lt;/span&gt; &lt;span class="n"&gt;minmaxsubd&lt;/span&gt;&lt;span class="p"&gt;(&lt;/span&gt; &lt;span class="s1"&gt;'T'&lt;/span&gt;&lt;span class="p"&gt;,&lt;/span&gt; &lt;span class="n"&gt;fea&lt;/span&gt; &lt;span class="p"&gt;);&lt;/span&gt;
&lt;/code&gt;&lt;/pre&gt;

&lt;/div&gt;



&lt;h2&gt;
  
  
  Optimization Strategy
&lt;/h2&gt;

&lt;p&gt;This optimization problem has one integer variable (&lt;em&gt;n&lt;/em&gt;, the pipe count) and one continuous variable (&lt;em&gt;D&lt;/em&gt;, the pipe diameter). Rather than treating this as a single black-box mixed-integer problem the structure is exploited by decomposing it into an outer loop over all integer values of &lt;em&gt;n&lt;/em&gt;, and an inner scalar minimization over &lt;em&gt;D&lt;/em&gt; for each fixed &lt;em&gt;n&lt;/em&gt; using &lt;code&gt;fminbnd&lt;/code&gt;.  This nested approach is both efficient and requires no additional toolboxes.&lt;/p&gt;

&lt;p&gt;The objective passed to &lt;code&gt;fminbnd&lt;/code&gt; is a penalized function that combines the primary objective |&lt;em&gt;T&lt;/em&gt;&lt;sup&gt;*&lt;/sup&gt; − &lt;em&gt;T&lt;/em&gt;max| with a large penalty weight (1e4) for constraint violation:&lt;br&gt;
&lt;/p&gt;

&lt;div class="highlight js-code-highlight"&gt;
&lt;pre class="highlight matlab"&gt;&lt;code&gt;&lt;span class="k"&gt;function&lt;/span&gt; &lt;span class="p"&gt;[&lt;/span&gt; &lt;span class="n"&gt;cost&lt;/span&gt; &lt;span class="p"&gt;]&lt;/span&gt; &lt;span class="o"&gt;=&lt;/span&gt; &lt;span class="n"&gt;penObj&lt;/span&gt;&lt;span class="p"&gt;(&lt;/span&gt; &lt;span class="n"&gt;D&lt;/span&gt;&lt;span class="p"&gt;,&lt;/span&gt; &lt;span class="n"&gt;n&lt;/span&gt;&lt;span class="p"&gt;,&lt;/span&gt; &lt;span class="n"&gt;Tstar&lt;/span&gt;&lt;span class="p"&gt;,&lt;/span&gt; &lt;span class="n"&gt;penaltyWeight&lt;/span&gt;&lt;span class="p"&gt;,&lt;/span&gt; &lt;span class="n"&gt;cache&lt;/span&gt; &lt;span class="p"&gt;)&lt;/span&gt;

&lt;span class="n"&gt;ff&lt;/span&gt;   &lt;span class="o"&gt;=&lt;/span&gt; &lt;span class="n"&gt;cachedFEA&lt;/span&gt;&lt;span class="p"&gt;(&lt;/span&gt; &lt;span class="n"&gt;n&lt;/span&gt;&lt;span class="p"&gt;,&lt;/span&gt; &lt;span class="n"&gt;D&lt;/span&gt;&lt;span class="p"&gt;,&lt;/span&gt; &lt;span class="n"&gt;Tstar&lt;/span&gt;&lt;span class="p"&gt;,&lt;/span&gt; &lt;span class="n"&gt;cache&lt;/span&gt; &lt;span class="p"&gt;);&lt;/span&gt;
&lt;span class="n"&gt;cost&lt;/span&gt; &lt;span class="o"&gt;=&lt;/span&gt; &lt;span class="n"&gt;ff&lt;/span&gt;&lt;span class="o"&gt;.&lt;/span&gt;&lt;span class="n"&gt;Fval&lt;/span&gt; &lt;span class="o"&gt;+&lt;/span&gt; &lt;span class="n"&gt;penaltyWeight&lt;/span&gt; &lt;span class="o"&gt;*&lt;/span&gt; &lt;span class="nb"&gt;max&lt;/span&gt;&lt;span class="p"&gt;(&lt;/span&gt;&lt;span class="mi"&gt;0&lt;/span&gt;&lt;span class="p"&gt;,&lt;/span&gt; &lt;span class="n"&gt;ff&lt;/span&gt;&lt;span class="o"&gt;.&lt;/span&gt;&lt;span class="n"&gt;Ineq&lt;/span&gt;&lt;span class="p"&gt;);&lt;/span&gt;
&lt;/code&gt;&lt;/pre&gt;

&lt;/div&gt;



&lt;p&gt;To avoid redundant FEA solver calls, which dominate the computational cost, results are stored and cached for later retrieval. Any repeated evaluation of the same &lt;em&gt;(n, D)&lt;/em&gt; pair immediately returns the cached result:&lt;br&gt;
&lt;/p&gt;

&lt;div class="highlight js-code-highlight"&gt;
&lt;pre class="highlight matlab"&gt;&lt;code&gt;&lt;span class="k"&gt;function&lt;/span&gt; &lt;span class="p"&gt;[&lt;/span&gt; &lt;span class="n"&gt;ff&lt;/span&gt; &lt;span class="p"&gt;]&lt;/span&gt; &lt;span class="o"&gt;=&lt;/span&gt; &lt;span class="n"&gt;cachedFEA&lt;/span&gt;&lt;span class="p"&gt;(&lt;/span&gt; &lt;span class="n"&gt;n&lt;/span&gt;&lt;span class="p"&gt;,&lt;/span&gt; &lt;span class="n"&gt;D&lt;/span&gt;&lt;span class="p"&gt;,&lt;/span&gt; &lt;span class="n"&gt;Tstar&lt;/span&gt;&lt;span class="p"&gt;,&lt;/span&gt; &lt;span class="n"&gt;cache&lt;/span&gt; &lt;span class="p"&gt;)&lt;/span&gt;

&lt;span class="n"&gt;key&lt;/span&gt; &lt;span class="o"&gt;=&lt;/span&gt; &lt;span class="nb"&gt;sprintf&lt;/span&gt;&lt;span class="p"&gt;(&lt;/span&gt;&lt;span class="s1"&gt;'%d_%.8f'&lt;/span&gt;&lt;span class="p"&gt;,&lt;/span&gt; &lt;span class="n"&gt;n&lt;/span&gt;&lt;span class="p"&gt;,&lt;/span&gt; &lt;span class="n"&gt;D&lt;/span&gt;&lt;span class="p"&gt;);&lt;/span&gt;
&lt;span class="k"&gt;if&lt;/span&gt;&lt;span class="p"&gt;(&lt;/span&gt; &lt;span class="nb"&gt;isKey&lt;/span&gt;&lt;span class="p"&gt;(&lt;/span&gt;&lt;span class="n"&gt;cache&lt;/span&gt;&lt;span class="p"&gt;,&lt;/span&gt; &lt;span class="n"&gt;key&lt;/span&gt;&lt;span class="p"&gt;)&lt;/span&gt; &lt;span class="p"&gt;)&lt;/span&gt;
  &lt;span class="n"&gt;ff&lt;/span&gt; &lt;span class="o"&gt;=&lt;/span&gt; &lt;span class="n"&gt;cache&lt;/span&gt;&lt;span class="p"&gt;(&lt;/span&gt;&lt;span class="n"&gt;key&lt;/span&gt;&lt;span class="p"&gt;);&lt;/span&gt;

&lt;span class="k"&gt;else&lt;/span&gt;
  &lt;span class="n"&gt;ff&lt;/span&gt; &lt;span class="o"&gt;=&lt;/span&gt; &lt;span class="n"&gt;l_run_fea_optimization_problem&lt;/span&gt;&lt;span class="p"&gt;(&lt;/span&gt; &lt;span class="p"&gt;[&lt;/span&gt;&lt;span class="n"&gt;n&lt;/span&gt;&lt;span class="p"&gt;;&lt;/span&gt; &lt;span class="n"&gt;D&lt;/span&gt;&lt;span class="p"&gt;],&lt;/span&gt; &lt;span class="n"&gt;Tstar&lt;/span&gt; &lt;span class="p"&gt;);&lt;/span&gt;
  &lt;span class="n"&gt;cache&lt;/span&gt;&lt;span class="p"&gt;(&lt;/span&gt;&lt;span class="n"&gt;key&lt;/span&gt;&lt;span class="p"&gt;)&lt;/span&gt; &lt;span class="o"&gt;=&lt;/span&gt; &lt;span class="n"&gt;ff&lt;/span&gt;&lt;span class="p"&gt;;&lt;/span&gt;
&lt;span class="k"&gt;end&lt;/span&gt;
&lt;/code&gt;&lt;/pre&gt;

&lt;/div&gt;



&lt;p&gt;A warm-start strategy further reduces the number of function evaluations, the optimal diameter found for the previous pipe count, &lt;em&gt;n&lt;/em&gt;, is used as the center of a narrowed search bracket for the next pipe count &lt;em&gt;n+1&lt;/em&gt;, since adjacent pipe counts tend to require similar pipe diameters. A fallback to the full diameter range is triggered if the warm-started bracket fails to find a feasible solution.&lt;br&gt;
&lt;/p&gt;

&lt;div class="highlight js-code-highlight"&gt;
&lt;pre class="highlight matlab"&gt;&lt;code&gt;&lt;span class="n"&gt;bracketHalf&lt;/span&gt; &lt;span class="o"&gt;=&lt;/span&gt; &lt;span class="p"&gt;(&lt;/span&gt;&lt;span class="n"&gt;Dmax&lt;/span&gt; &lt;span class="o"&gt;-&lt;/span&gt; &lt;span class="n"&gt;Dmin&lt;/span&gt;&lt;span class="p"&gt;)&lt;/span&gt; &lt;span class="o"&gt;*&lt;/span&gt; &lt;span class="mf"&gt;0.3&lt;/span&gt;&lt;span class="p"&gt;;&lt;/span&gt;
&lt;span class="n"&gt;a&lt;/span&gt; &lt;span class="o"&gt;=&lt;/span&gt; &lt;span class="nb"&gt;max&lt;/span&gt;&lt;span class="p"&gt;(&lt;/span&gt;&lt;span class="n"&gt;Dmin&lt;/span&gt;&lt;span class="p"&gt;,&lt;/span&gt; &lt;span class="n"&gt;D0&lt;/span&gt; &lt;span class="o"&gt;-&lt;/span&gt; &lt;span class="n"&gt;bracketHalf&lt;/span&gt;&lt;span class="p"&gt;);&lt;/span&gt;
&lt;span class="n"&gt;b&lt;/span&gt; &lt;span class="o"&gt;=&lt;/span&gt; &lt;span class="nb"&gt;min&lt;/span&gt;&lt;span class="p"&gt;(&lt;/span&gt;&lt;span class="n"&gt;Dmax&lt;/span&gt;&lt;span class="p"&gt;,&lt;/span&gt; &lt;span class="n"&gt;D0&lt;/span&gt; &lt;span class="o"&gt;+&lt;/span&gt; &lt;span class="n"&gt;bracketHalf&lt;/span&gt;&lt;span class="p"&gt;);&lt;/span&gt;
&lt;span class="p"&gt;[&lt;/span&gt;&lt;span class="n"&gt;Dopt&lt;/span&gt;&lt;span class="p"&gt;,&lt;/span&gt; &lt;span class="n"&gt;cost&lt;/span&gt;&lt;span class="p"&gt;]&lt;/span&gt; &lt;span class="o"&gt;=&lt;/span&gt; &lt;span class="nb"&gt;fminbnd&lt;/span&gt;&lt;span class="p"&gt;(&lt;/span&gt; &lt;span class="n"&gt;f&lt;/span&gt;&lt;span class="p"&gt;,&lt;/span&gt; &lt;span class="n"&gt;a&lt;/span&gt;&lt;span class="p"&gt;,&lt;/span&gt; &lt;span class="n"&gt;b&lt;/span&gt;&lt;span class="p"&gt;,&lt;/span&gt; &lt;span class="n"&gt;opts&lt;/span&gt; &lt;span class="p"&gt;);&lt;/span&gt;

&lt;span class="c1"&gt;% Fallback to full range if constraint is violated.&lt;/span&gt;
&lt;span class="k"&gt;if&lt;/span&gt;&lt;span class="p"&gt;(&lt;/span&gt; &lt;span class="n"&gt;ff&lt;/span&gt;&lt;span class="o"&gt;.&lt;/span&gt;&lt;span class="n"&gt;Ineq&lt;/span&gt; &lt;span class="o"&gt;&amp;gt;&lt;/span&gt; &lt;span class="mf"&gt;1e-2&lt;/span&gt; &lt;span class="p"&gt;)&lt;/span&gt;
  &lt;span class="p"&gt;[&lt;/span&gt;&lt;span class="n"&gt;Dopt2&lt;/span&gt;&lt;span class="p"&gt;,&lt;/span&gt; &lt;span class="n"&gt;cost2&lt;/span&gt;&lt;span class="p"&gt;]&lt;/span&gt; &lt;span class="o"&gt;=&lt;/span&gt; &lt;span class="nb"&gt;fminbnd&lt;/span&gt;&lt;span class="p"&gt;(&lt;/span&gt; &lt;span class="n"&gt;f&lt;/span&gt;&lt;span class="p"&gt;,&lt;/span&gt; &lt;span class="n"&gt;Dmin&lt;/span&gt;&lt;span class="p"&gt;,&lt;/span&gt; &lt;span class="n"&gt;Dmax&lt;/span&gt;&lt;span class="p"&gt;,&lt;/span&gt; &lt;span class="n"&gt;opts&lt;/span&gt; &lt;span class="p"&gt;);&lt;/span&gt;
  &lt;span class="k"&gt;if&lt;/span&gt;&lt;span class="p"&gt;(&lt;/span&gt; &lt;span class="n"&gt;cost2&lt;/span&gt; &lt;span class="o"&gt;&amp;lt;&lt;/span&gt; &lt;span class="n"&gt;cost&lt;/span&gt; &lt;span class="p"&gt;)&lt;/span&gt;
    &lt;span class="n"&gt;Dopt&lt;/span&gt; &lt;span class="o"&gt;=&lt;/span&gt; &lt;span class="n"&gt;Dopt2&lt;/span&gt;&lt;span class="p"&gt;;&lt;/span&gt;  &lt;span class="n"&gt;cost&lt;/span&gt; &lt;span class="o"&gt;=&lt;/span&gt; &lt;span class="n"&gt;cost2&lt;/span&gt;&lt;span class="p"&gt;;&lt;/span&gt;
  &lt;span class="k"&gt;end&lt;/span&gt;
&lt;span class="k"&gt;end&lt;/span&gt;
&lt;/code&gt;&lt;/pre&gt;

&lt;/div&gt;



&lt;h2&gt;
  
  
  Results
&lt;/h2&gt;

&lt;p&gt;Running the script sweeps all pipe counts from 1 to 9 and reports the optimal diameter, maximum temperature, penalized cost, and total cumulative FEA evaluations for each, typical results are shown below.&lt;br&gt;
&lt;/p&gt;

&lt;div class="highlight js-code-highlight"&gt;
&lt;pre class="highlight plaintext"&gt;&lt;code&gt;n    D (m)      Tmax (K)     Cost         FEA calls
---------------------------------------------------
1    0.0190     421.64       634961.9589  23
2    0.0190     408.12       499702.6643  44
3    0.0190     386.45       283014.0704  65
4    0.0190     371.97       138225.9332  86
5    0.0190     361.31       31632.7330   107
6    0.0176     358.13       0.0194       117
7    0.0158     358.11       0.0368       128
8    0.0144     358.12       0.0302       138
9    0.0133     358.09       0.0596       149

--- Optimal solution ---
Number of pipes : 6
Pipe diameter   : 0.0176 m
Max temperature : 358.13 K (84.98 C)
Objective value : 0.0194 K
Feasible        : Yes
Total FEA calls : 149
&lt;/code&gt;&lt;/pre&gt;

&lt;/div&gt;



&lt;p&gt;The optimal configuration here is indicated to have &lt;strong&gt;6 pipes&lt;/strong&gt; with &lt;strong&gt;17.6 mm diameter&lt;/strong&gt;, achieving a maximum temperature of 358.13 K, just 0.02 K above the 358.15 K target, well within the permitted 0.1 K tolerance. The full two-sided temperature distribution (exploiting mirroring around the symmetry line for postprocessing) can then be visualized as follows.&lt;br&gt;
&lt;/p&gt;

&lt;div class="highlight js-code-highlight"&gt;
&lt;pre class="highlight matlab"&gt;&lt;code&gt;&lt;span class="n"&gt;postplot&lt;/span&gt;&lt;span class="p"&gt;(&lt;/span&gt; &lt;span class="n"&gt;fea&lt;/span&gt;&lt;span class="p"&gt;,&lt;/span&gt; &lt;span class="s1"&gt;'surfexpr'&lt;/span&gt;&lt;span class="p"&gt;,&lt;/span&gt; &lt;span class="s1"&gt;'T'&lt;/span&gt; &lt;span class="p"&gt;)&lt;/span&gt;

&lt;span class="n"&gt;fea&lt;/span&gt;&lt;span class="o"&gt;.&lt;/span&gt;&lt;span class="nb"&gt;grid&lt;/span&gt;&lt;span class="o"&gt;.&lt;/span&gt;&lt;span class="n"&gt;p&lt;/span&gt;&lt;span class="p"&gt;(&lt;/span&gt;&lt;span class="mi"&gt;1&lt;/span&gt;&lt;span class="p"&gt;,:)&lt;/span&gt; &lt;span class="o"&gt;=&lt;/span&gt; &lt;span class="mf"&gt;0.2&lt;/span&gt; &lt;span class="o"&gt;-&lt;/span&gt; &lt;span class="n"&gt;fea&lt;/span&gt;&lt;span class="o"&gt;.&lt;/span&gt;&lt;span class="nb"&gt;grid&lt;/span&gt;&lt;span class="o"&gt;.&lt;/span&gt;&lt;span class="n"&gt;p&lt;/span&gt;&lt;span class="p"&gt;(&lt;/span&gt;&lt;span class="mi"&gt;1&lt;/span&gt;&lt;span class="p"&gt;,:);&lt;/span&gt;  &lt;span class="c1"&gt;% Offset and mirror grid points.&lt;/span&gt;
&lt;span class="n"&gt;postplot&lt;/span&gt;&lt;span class="p"&gt;(&lt;/span&gt; &lt;span class="n"&gt;fea_mirror&lt;/span&gt;&lt;span class="p"&gt;,&lt;/span&gt; &lt;span class="s1"&gt;'surfexpr'&lt;/span&gt;&lt;span class="p"&gt;,&lt;/span&gt; &lt;span class="s1"&gt;'T'&lt;/span&gt; &lt;span class="p"&gt;)&lt;/span&gt;
&lt;/code&gt;&lt;/pre&gt;

&lt;/div&gt;



&lt;p&gt;The total optimization process required 149 FEA solves thanks to the combination of decomposition, warm-starting, and caching of FEA results (compared to the several hundred typically needed by a black-box approach).&lt;/p&gt;

&lt;h2&gt;
  
  
  Running the Example
&lt;/h2&gt;

&lt;p&gt;The complete FEATool simulation script can be downloaded from the link below.&lt;/p&gt;


&lt;a href="https:/www.featool.com/download/ex_heattransfer11.m" rel="noopener noreferrer"&gt;&lt;strong&gt;FEATool Multiphysics Simulation Script&lt;br&gt;Heat Transfer - Cooling Pipe Optimization&lt;/strong&gt;&lt;/a&gt;&lt;br&gt;

&lt;p&gt;and run directly from the MATLAB command after loading and starting FEATool Multiphysics:&lt;br&gt;
&lt;/p&gt;

&lt;div class="highlight js-code-highlight"&gt;
&lt;pre class="highlight matlab"&gt;&lt;code&gt;&lt;span class="p"&gt;[&lt;/span&gt;&lt;span class="n"&gt;fea&lt;/span&gt;&lt;span class="p"&gt;,&lt;/span&gt; &lt;span class="nb"&gt;result&lt;/span&gt;&lt;span class="p"&gt;]&lt;/span&gt; &lt;span class="o"&gt;=&lt;/span&gt; &lt;span class="n"&gt;ex_heattransfer11&lt;/span&gt;&lt;span class="p"&gt;(&lt;/span&gt; &lt;span class="s1"&gt;'npipes'&lt;/span&gt;&lt;span class="p"&gt;,&lt;/span&gt; &lt;span class="p"&gt;[&lt;/span&gt;&lt;span class="mi"&gt;1&lt;/span&gt;&lt;span class="p"&gt;,&lt;/span&gt; &lt;span class="mi"&gt;9&lt;/span&gt;&lt;span class="p"&gt;],&lt;/span&gt; &lt;span class="s1"&gt;'diam'&lt;/span&gt;&lt;span class="p"&gt;,&lt;/span&gt; &lt;span class="p"&gt;[&lt;/span&gt;&lt;span class="mf"&gt;0.005&lt;/span&gt;&lt;span class="p"&gt;,&lt;/span&gt; &lt;span class="mf"&gt;0.019&lt;/span&gt;&lt;span class="p"&gt;],&lt;/span&gt; &lt;span class="s1"&gt;'Tstar'&lt;/span&gt;&lt;span class="p"&gt;,&lt;/span&gt; &lt;span class="mf"&gt;358.15&lt;/span&gt; &lt;span class="p"&gt;);&lt;/span&gt;
&lt;/code&gt;&lt;/pre&gt;

&lt;/div&gt;



&lt;p&gt;As shown in this example, the fully programmable simulation API of &lt;em&gt;FEATool Multiphysics&lt;/em&gt; makes it straightforward to combine finite element simulations with MATLAB optimization and search routines.  The same pattern, wrapping an FEA solve in an objective function and passing it to a minimizer, applies broadly to inverse problems, design optimization, and sensitivity studies across heat transfer, structural mechanics, and fluid dynamics applications.&lt;/p&gt;

&lt;p&gt;Additional examples of this approach can be found linked below:&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;&lt;a href="https://featool.com/tutorial/2019/02/11/Parameter-Minimization-and-Potential-Flow-Over-a-Wing-Profile/" rel="noopener noreferrer"&gt;CFD Simulation and Parameter Minimization Solving
Potential Flow Over an Airfoil&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a href="https://featool.com/tutorial/2019/01/14/Inverse-FEA-Modeling-and-Parameter-Search-Using-MATLAB-functions/" rel="noopener noreferrer"&gt;Inverse Modeling and Stress-Strain Simulation Parameter Search&lt;/a&gt;&lt;/li&gt;
&lt;/ul&gt;

</description>
      <category>fea</category>
      <category>heattransfer</category>
      <category>optimization</category>
      <category>matlab</category>
    </item>
    <item>
      <title>FEATool Multiphysics 1.18 with New FEA &amp; CFD AI/ML Workflow</title>
      <dc:creator>Precise Simulation</dc:creator>
      <pubDate>Sun, 01 Feb 2026 00:00:00 +0000</pubDate>
      <link>https://dev.to/precise-simulation/featool-multiphysics-118-with-new-fea-cfd-aiml-workflow-4k97</link>
      <guid>https://dev.to/precise-simulation/featool-multiphysics-118-with-new-fea-cfd-aiml-workflow-4k97</guid>
      <description>&lt;p&gt;&lt;em&gt;Precise Simulation&lt;/em&gt; is proud to announce the release of &lt;em&gt;&lt;strong&gt;FEATool Multiphysics&lt;/strong&gt;™&lt;/em&gt; version &lt;em&gt;&lt;strong&gt;1.18&lt;/strong&gt;&lt;/em&gt;, a step forward in the_state-of-the-art_ in Finite Element Analysis (FEA) and Computational Fluid Dynamics (CFD) &lt;em&gt;multi-solver&lt;/em&gt; simulation software.&lt;/p&gt;

&lt;p&gt;&lt;a href="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2Fvqhuwjksbwshva5yl961.jpg" class="article-body-image-wrapper"&gt;&lt;img src="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2Fvqhuwjksbwshva5yl961.jpg" alt=" " width="800" height="670"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;The latest release introduces a completely redesigned Graphical User Interface (GUI) making the toolbox more user friendly and_easy-to-use_ than ever before. &lt;em&gt;FEATool Multiphysics&lt;/em&gt; also features full support and integration with MATLAB and related toolboxes (such as for &lt;em&gt;Optimization&lt;/em&gt;, &lt;em&gt;Control Systems&lt;/em&gt;, and_Machine Learning_), and advanced features tailored for the evolving needs of engineers and researchers in industry and academia.&lt;/p&gt;

&lt;h2&gt;
  
  
  New Standard for FEA, CFD &amp;amp; CAE AI/ML Simulation Workflows
&lt;/h2&gt;

&lt;p&gt;One of the stand-out features of the FEATool toolbox is the Multiphysics Application Programming Interface (API), with one-click export functionality and automatic conversion of simulation models to MATLAB and Python script models. This enables users to quickly define and set up simulation models in a fully integrated and easy-to-use GUI, and later export, modify, and programmatically run them automatically for large scale parametric studies, and data generation and collection for Physics-Informed Neural Network (PINN), Machine Learning (ML) and artificial intelligence (AI) type simulation models.&lt;/p&gt;

&lt;p&gt;An example of using FEATool Multiphysics to derive reference data as well as validation for machine learning CFD models can be found in several works on Deep Learning (DL) CFD methodology for flow prediction using with AI and machine learning by Prof. Thi-Thu-Huong Le and coworkers at the at the Blockchain Platform Research Center of the Pusan National University (PNU) in Korea.&lt;/p&gt;

&lt;p&gt;Another example, here by Guodong Sa and coworkers, developed a Digital Twin (DT) framework for visualization and design of smart kitchens to facilitate improved kitchen and usability design. In the highlighted work, FEATool Multiphysics was used as a platform for programming and controlling simulation mesh and state-of-the-art CFD flow solvers such as OpenFOAM, and to script, automate, and programmatically generate thousands of sets of simulation data for training the digital twin framework.&lt;/p&gt;

&lt;p&gt;And in the medical field, Prof. Zhang H. and coworkers have recently made use of FEATool Multiphysics to develop a method of denoising and improving vascular blood flow imaging for medical diagnosis using a Physics-Informed Neural Network (PINN). The data to train the PINN on was automatically generated by simulating the Navier-Stokes equations for different flow conditions and geometries. See their preprint on Fluid Dynamics and Domain Reconstruction from Noisy Flow Images Using Physics-Informed Neural Networks and Quasi-Conformal Mapping for more information.&lt;/p&gt;

&lt;p&gt;For more detailed information on the new features and improvements, and to download the toolbox, please visit:&lt;/p&gt;

&lt;p&gt;&lt;a href="https://featool.com/news/2026/02/03/FEATool-Multiphysics-v1p18-Simulation-FEA-CFD-CAE-Workflow-Update/" rel="noopener noreferrer"&gt;https://featool.com/news/2026/02/03/FEATool-Multiphysics-v1p18-Simulation-FEA-CFD-CAE-Workflow-Update/&lt;/a&gt;&lt;/p&gt;

</description>
      <category>fea</category>
      <category>cfd</category>
      <category>machinelearning</category>
      <category>ai</category>
    </item>
    <item>
      <title>Cooling Analysis of a Battery Pack Module</title>
      <dc:creator>Precise Simulation</dc:creator>
      <pubDate>Fri, 30 Jan 2026 00:00:00 +0000</pubDate>
      <link>https://dev.to/precise-simulation/cooling-analysis-of-a-battery-pack-module-5409</link>
      <guid>https://dev.to/precise-simulation/cooling-analysis-of-a-battery-pack-module-5409</guid>
      <description>&lt;p&gt;This example shows how to model a battery pack stacked with 20 prismatic battery cells. A heat transfer analysis will be conducted for the model where it is assumed that one of the battery cells is faulty resulting in significantly increased heat generation in the cell.&lt;/p&gt;

&lt;p&gt;&lt;a href="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2F05ctlcit2quhza5u202o.jpg" class="article-body-image-wrapper"&gt;&lt;img src="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2F05ctlcit2quhza5u202o.jpg" alt="FEATool Multiphysics - Battery Pack Thermal Runway Simulation" width="800" height="800"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;Two different cases will be studied, one where the pack is perfectly insulated, except for the front and back faces which are cooled through natural convection with the surrounding air. And also a second case study with added increased cooling at the bottom of the battery pack.&lt;/p&gt;

&lt;p&gt;The example tutorial highlights the following features:&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;3D CAD STEP geometry import&lt;/li&gt;
&lt;li&gt;Heat transfer simulation with convective cooling&lt;/li&gt;
&lt;li&gt;Anisotropic material coefficients (thermal conductivity) and using
different material properties in different subdomains&lt;/li&gt;
&lt;li&gt;Solution restart (using a previously computed data)&lt;/li&gt;
&lt;li&gt;Evaluation and analysis in given evaluation points&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;This model is available as an automated tutorial by selecting &lt;strong&gt;Model&lt;br&gt;
Examples and Tutorials...&lt;/strong&gt; &amp;gt; &lt;strong&gt;Heat Transfer&lt;/strong&gt; &amp;gt; &lt;strong&gt;Cooling Analysis&lt;br&gt;
of a Battery Pack Module&lt;/strong&gt; from the &lt;strong&gt;File&lt;/strong&gt; menu. Or alternatively,&lt;br&gt;
follow the linked step-by-step instructions.&lt;/p&gt;



&lt;p&gt;&lt;a href="&lt;br&gt;%0A%20%20https:/www.featool.com/doc/Heat_Transfer_09_battery_pack.html#tut_ht09&lt;br&gt;%0A"&gt;&lt;strong&gt;&lt;br&gt;
  Battery Pack Heat Transfer Simulation Tutorial Instructions&lt;br&gt;
&lt;/strong&gt;&lt;/a&gt;&lt;/p&gt;

</description>
      <category>fea</category>
      <category>simulation</category>
      <category>heattransfer</category>
      <category>battery</category>
    </item>
    <item>
      <title>FEATool Multiphysics minor update to version 1.17.5</title>
      <dc:creator>Precise Simulation</dc:creator>
      <pubDate>Wed, 13 Aug 2025 04:08:17 +0000</pubDate>
      <link>https://dev.to/precise-simulation/featool-multiphysics-minor-update-to-version-1175-4ied</link>
      <guid>https://dev.to/precise-simulation/featool-multiphysics-minor-update-to-version-1175-4ied</guid>
      <description>&lt;p&gt;FEATool Multiphysics minor update to version 1.17.5&lt;/p&gt;

&lt;p&gt;&lt;a href="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2Flaaazri0bhu5n1tch391.jpg" class="article-body-image-wrapper"&gt;&lt;img src="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2Flaaazri0bhu5n1tch391.jpg" alt=" " width="800" height="563"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;In particular, significant improvements in graphics and UI performance for larger 3D models&lt;/li&gt;
&lt;li&gt;Update for FEniCS external FEA and multiphysics solver&lt;/li&gt;
&lt;li&gt;Improved OpenFOAM CFD solver API and documentation&lt;/li&gt;
&lt;li&gt;New AC electrostatics plane capacitor script models&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;Please Visit &lt;a href="https://www.featool.com" rel="noopener noreferrer"&gt;https://www.featool.com&lt;/a&gt; for more information and to download and try the toolbox.&lt;/p&gt;

</description>
      <category>multiphysics</category>
      <category>3d</category>
      <category>fea</category>
      <category>cfd</category>
    </item>
    <item>
      <title>FEATool Multiphysics Update v1.17.4</title>
      <dc:creator>Precise Simulation</dc:creator>
      <pubDate>Mon, 14 Jul 2025 04:02:00 +0000</pubDate>
      <link>https://dev.to/precise-simulation/featool-multiphysics-update-v1174-15mp</link>
      <guid>https://dev.to/precise-simulation/featool-multiphysics-update-v1174-15mp</guid>
      <description>&lt;p&gt;FEATool Multiphysics has now been updated to version v1.17.4 including the following changes:&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;Update OpenCASCADE geometry engine to v7.9.1 (Windows + Linux)&lt;/li&gt;
&lt;li&gt;&lt;a href="https://www.featool.com/doc/physics.html#phys_coef_interp" rel="noopener noreferrer"&gt;Support for tabulated/interpolated equation/boundary coefficients&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a href="https://www.featool.com/doc/Heat_Transfer_08_heat_transfer6.html" rel="noopener noreferrer"&gt;Heat conduction example and tutorial for interpolated nonlinear thermal conductivity&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;New &lt;a href="https://www.featool.com/doc/setinf_8m.html" rel="noopener noreferrer"&gt;setinf&lt;/a&gt; function (to set infinite values to specific number)&lt;/li&gt;
&lt;li&gt;&lt;a href="https://www.featool.com/doc/solver.html#solver_troubleshoot" rel="noopener noreferrer"&gt;Troubleshooting documentation solver section&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;Minor bug fixes&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;See the announcement &lt;a href="https://www.featool.com/news/2025/07/14/FEATool-v1p17p4-Multiphysics-Simulation-Toolbox-Update/" rel="noopener noreferrer"&gt;https://www.featool.com/news/2025/07/14/FEATool-v1p17p4-Multiphysics-Simulation-Toolbox-Update/&lt;/a&gt; for more information.&lt;/p&gt;

</description>
      <category>cfd</category>
      <category>featool</category>
      <category>matlab</category>
      <category>multiphysics</category>
    </item>
    <item>
      <title>Heat Conduction with Tabulated Thermal Conductivity</title>
      <dc:creator>Precise Simulation</dc:creator>
      <pubDate>Wed, 25 Jun 2025 00:00:00 +0000</pubDate>
      <link>https://dev.to/precise-simulation/heat-conduction-with-tabulated-thermal-conductivity-4cg6</link>
      <guid>https://dev.to/precise-simulation/heat-conduction-with-tabulated-thermal-conductivity-4cg6</guid>
      <description>&lt;p&gt;This heat conduction tutorial example illustrates how to use data from a (text) file in an equation coefficient. The tabulated data here represents non-linear thermal conductivity as a function of temperature &lt;em&gt;k = f(T)&lt;/em&gt;. Where the conductivity curve is given as&lt;code&gt;sin(pi/8)&lt;/code&gt; to &lt;code&gt;sin(3/4*pi)&lt;/code&gt; for temperature values between &lt;code&gt;280&lt;/code&gt; to&lt;code&gt;400&lt;/code&gt;. In the data (text) file the first column represents temperature values and second the coefficient value:&lt;br&gt;
&lt;/p&gt;

&lt;div class="highlight js-code-highlight"&gt;
&lt;pre class="highlight plaintext"&gt;&lt;code&gt;280.0000 0.3827
281.2121 0.4009
...
398.7879 0.7210
400.0000 0.7071
&lt;/code&gt;&lt;/pre&gt;

&lt;/div&gt;



&lt;p&gt;The coefficient is implemented and called from the toolbox using the &lt;a href="https://www.featool.com/doc/finterpn_8m.html" rel="noopener noreferrer"&gt;&lt;code&gt;finterpn&lt;/code&gt;&lt;/a&gt; function, which also supports interpolation in higher &lt;em&gt;n&lt;/em&gt; dimensions (as well as &lt;em&gt;csv&lt;/em&gt; and _mat_file formats).&lt;/p&gt;

&lt;p&gt;&lt;a href="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.us-east-2.amazonaws.com%2Fuploads%2Farticles%2Fq96ab2kgtn73mfrv2o2a.jpg" class="article-body-image-wrapper"&gt;&lt;img src="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.us-east-2.amazonaws.com%2Fuploads%2Farticles%2Fq96ab2kgtn73mfrv2o2a.jpg" alt="FEATool Multiphysics Tutorial - Heat Conduction with Tabulated Thermal Conductivity" width="800" height="562"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;The model is available as an automated tutorial by selecting &lt;strong&gt;Model Examples and Tutorials...&lt;/strong&gt; &amp;gt; &lt;strong&gt;Heat Transfer&lt;/strong&gt; &amp;gt; &lt;strong&gt;Heat Conduction with Tabulated Thermal Conductivity&lt;/strong&gt; from the &lt;strong&gt;File&lt;/strong&gt; menu. Or alternatively, follow the linked &lt;a href="https://www.featool.com/doc/Heat_Transfer_08_heat_transfer6.html#tut_ht08" rel="noopener noreferrer"&gt;step-by-step instructions&lt;/a&gt;.&lt;/p&gt;

</description>
      <category>fea</category>
      <category>heattransfer</category>
      <category>conduction</category>
      <category>matlab</category>
    </item>
  </channel>
</rss>
