<?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: Integrated Core Systems</title>
    <description>The latest articles on DEV Community by Integrated Core Systems (@systemsicore).</description>
    <link>https://dev.to/systemsicore</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%2F4153745%2F2bef8283-c20d-4ad8-930e-11cc9f9280c8.png</url>
      <title>DEV Community: Integrated Core Systems</title>
      <link>https://dev.to/systemsicore</link>
    </image>
    <atom:link rel="self" type="application/rss+xml" href="https://dev.to/feed/systemsicore"/>
    <language>en</language>
    <item>
      <title>Building a Native C++ Engineering Computation Engine</title>
      <dc:creator>Integrated Core Systems</dc:creator>
      <pubDate>Thu, 01 Oct 2026 06:13:47 +0000</pubDate>
      <link>https://dev.to/systemsicore/building-a-native-c-engineering-computation-engine-5gpj</link>
      <guid>https://dev.to/systemsicore/building-a-native-c-engineering-computation-engine-5gpj</guid>
      <description>&lt;p&gt;At Integrated Core Systems, we have been developing ICore Blocks, a cross-platform engineering computation platform built around a native C++ computational engine.&lt;/p&gt;

&lt;p&gt;The problem we wanted to address is the gap between engineering models and deployable software.&lt;/p&gt;

&lt;p&gt;A typical workflow can look like:&lt;/p&gt;

&lt;p&gt;Model → Simulation → Code Generation → Compilation → Hardware&lt;/p&gt;

&lt;p&gt;We wanted the computational engine itself to participate in that entire workflow.&lt;/p&gt;

&lt;p&gt;The computational engine&lt;/p&gt;

&lt;p&gt;ICore Blocks uses a graph-based execution model where blocks represent computational operations and signals connect them into executable systems.&lt;/p&gt;

&lt;p&gt;The current library contains more than 300 blocks covering:&lt;/p&gt;

&lt;p&gt;• Control systems&lt;br&gt;
• State-space models&lt;br&gt;
• Transfer functions&lt;br&gt;
• Signal processing&lt;br&gt;
• Robotics&lt;br&gt;
• System identification&lt;br&gt;
• Machine learning&lt;br&gt;
• Mathematical operations&lt;/p&gt;

&lt;p&gt;The engine supports continuous and discrete systems, as well as multi-rate execution.&lt;/p&gt;

&lt;p&gt;Beyond the desktop application&lt;/p&gt;

&lt;p&gt;The desktop application is only one way of using ICore.&lt;/p&gt;

&lt;p&gt;The underlying computational engine can also be accessed through a C++ SDK and operated through scripting and headless execution.&lt;/p&gt;

&lt;p&gt;This allows the same computational infrastructure to be used inside engineering applications, automated testing systems, CI pipelines, or other software.&lt;/p&gt;

&lt;p&gt;Code generation and verification&lt;/p&gt;

&lt;p&gt;A major area of development has been generated-code verification.&lt;/p&gt;

&lt;p&gt;Rather than treating code generation as:&lt;/p&gt;

&lt;p&gt;Model → Source Code&lt;/p&gt;

&lt;p&gt;ICore can perform:&lt;/p&gt;

&lt;p&gt;Model → Generate → Compile → Execute → Compare&lt;/p&gt;

&lt;p&gt;The generated implementation can therefore be executed and compared against the original simulation.&lt;/p&gt;

&lt;p&gt;This creates a direct verification path between the engineering model and the generated implementation.&lt;/p&gt;

&lt;p&gt;Deployment targets&lt;/p&gt;

&lt;p&gt;ICore currently supports generation for:&lt;/p&gt;

&lt;p&gt;• C&lt;br&gt;
• C++&lt;br&gt;
• Python&lt;br&gt;
• MATLAB&lt;br&gt;
• Java&lt;br&gt;
• Rust&lt;br&gt;
• VHDL&lt;br&gt;
• Verilog&lt;br&gt;
• SystemVerilog&lt;br&gt;
• IEC 61131-3 Structured Text&lt;/p&gt;

&lt;p&gt;The intention is to keep the computational model independent from the eventual deployment target.&lt;/p&gt;

&lt;p&gt;Why build this?&lt;/p&gt;

&lt;p&gt;Modern control and robotics engineers increasingly work across several domains at once.&lt;/p&gt;

&lt;p&gt;A single project may involve numerical modelling, C++, embedded systems, FPGA development, robotics frameworks, automated testing, and hardware deployment.&lt;/p&gt;

&lt;p&gt;At the same time, software engineers working in robotics and embedded systems often need access to control-system and numerical computing functionality.&lt;/p&gt;

&lt;p&gt;ICore Blocks is intended to provide a computational layer connecting these areas.&lt;/p&gt;

&lt;p&gt;More information:&lt;/p&gt;

&lt;p&gt;&lt;a href="https://systemsicore.com/" rel="noopener noreferrer"&gt;https://systemsicore.com/&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;We are interested in feedback from developers and engineers working with numerical computing, control systems, robotics, embedded software, and industrial automation.&lt;/p&gt;

</description>
      <category>robotics</category>
      <category>control</category>
      <category>industrial</category>
      <category>machinelearning</category>
    </item>
  </channel>
</rss>
