1d-3d-cae
Glossary
API
An Application Programing Interface (API) is a particular set of rules ("code") and specifications that software programs can follow to communicate with each other. It serves as an interface between different software programs and facilitates their interaction, similar to the way the user interface facilitates interaction between humans and computers. An API can be created for applications, libraries, operating systems, etc., as a way of defining their "vocabularies" and resources request conventions (e.g. function-calling conventions). It may include specifications for routines, data structures, object classes, and protocols used to communicate between the consumer program and the implementer program of the API.
Client
A client is the requesting program or user in a Client/Server relationship.
Client/Server
Client/Server describes the relationship between two computer programs in which one program, the client, makes a service request from another program, the server, which fulfills the request. Although the client/server idea can be used by programs within a single computer, it is a more important idea in a network. In a network, the client/server model provides a convenient way to interconnect programs that are distributed efficiently across different locations.
Communication
Co-simulation tasks typically need to exchange data. There are several ways this can be accomplished, such as through shared memory bus or over a network, however the actual event of data exchange is commonly referred to as communications regardless of the method employed.
Communication Points
Time grid for data exchange between master and slaves in a co-simulation environment (also known as "sampling points" or "synchronization points").
Communication Step Size / Communication Time Step
Distance between two subsequent communication points(also known as "sampling rate" or "macro step size").
Computer Networking
Computer networking or Data communications (Datacom) is the engineering discipline concerned with the communication between computer systems or devices. A computer network is any set of computers or devices connected to each other with the ability to exchange data.
Co-simulation
Coupling (i.e. dynamic mutually exchange and utilization of intermediate results) of several simulation programs including their numerical solvers in order to simulate a system consisting of several subsystems.
Co-simulation Step
See Communication Time Step.
CPU
The central processing unit (CPU) or the processor is the portion of a computer system that carries out the instructions of a computer program, and is the primary element carrying out the computer's functions. It is the unit that reads and executes program instructions. The data in the instruction tells the processor what to do.
CPU Time
CPU time (or CPU usage, process time) is the amount of time for which a central processing unit (CPU) was used for processing instructions of a computer program, as opposed to, for example, waiting for input/output operations. The CPU time is often measured in clock ticks or as a percentage of the CPU capacity.
Data
Data is anything in a form suitable for use with a computer. Data is often distinguished from programs. A program is a set of instructions that detail a task for the computer to perform. In this sense, data is thus everything that is not program code.
DLL (Dynamic-Link Library)
DLL is Microsoft's implementation of the shared library concept in the Microsoft Windows and OS/2 operating systems. As with executables, a DLL file can contain code, data, and resources, in any combination. A function contained in a DLL cannot run on its own, it can only run from inside an executable file in which it was previously declared before being called (DLL function call).
DLL Function Call
See DLL. Depending on the Co-simulation type, it can be necessary to set the solver configuration and the communication time step via DLL function calls.
Embedded Solver
A solver is said to be embedded when it is contained in a DLL that can be called by an external application.
Executable
In computing, an executable file causes a computer to perform indicated tasks according to encoded instructions, as opposed to a data file that must be parsed by a program to be meaningful. These instructions are traditionally machine code instructions for a physical CPU. However, in a more general sense, a file containing instructions for a software interpreter may also be considered executable; even a scripting language source file may therefore be considered executable in this sense.
Fixed-Step Solver
Fixed-step solvers are solvers that use the same step size during the simulation. They provide no error control and do not locate zero crossings but comply with Real-Time constraints.
Integration Algorithm
The numerical algorithm to solve differential equations.
Integrator
A software component, which implements an integration algorithm.
Interface
An abstraction of a software component that describes its behavior without dealing with the internal implementation. Software components communicate with each other via interfaces.
Master
A master is a device that controls one or more other devices. In networking, for example, a master/slave configuration is a communications model in which one device or process (known as the master) controls one or more other devices or processes (known as slaves).
Master/Slave
A method of communication, where one device or process has unidirectional control over one or more other devices. Once a master/slave relationship between devices or processes is established, the direction of control is always from the master to the slaves. In some systems a master is elected from a group of eligible devices, with the other devices acting in the role of slaves.
Numerical solver
See Solver.
Point-to-Point Communication
Communication that involves two tasks with one task acting as the sender/producer of data, and the other acting as the receiver/consumer.
Sample Time
Only for the server: the time interval between two consecutive data exchanges.
Server
In the client/server programming model, a server is a program that awaits and fulfills requests from client programs in the same or other computers. A given application in a computer may function as a client with requests for services from other programs and also as a server of requests from other programs.
Shared Memory
Shared memory is memory that may be simultaneously accessed by multiple programs with an intent to provide communication among them or avoid redundant copies. Depending on context, programs may run on a single processor or on multiple separate processors. Using memory for communication inside a single program, for example among its multiple threads, is generally not referred to as shared memory.
Simulator
A simulator can include one or more simulation programs, which solve a common simulation task.
Slave
See Master/Slave.
Socket
In computer networking, a socket or network socket is an endpoint of a bidirectional inter-process communication flow across an Internet Protocol-based computer network, such as the Internet.
Solver
Software component, which includes algorithms to solve models, e.g. integration algorithms and event handling methods.
Time step
See Communication Time Step.
User Interface
The part of the simulation program that gives the user control over the simulation and allows watching results.
Variable Step Solver
Variable-step solvers can modify their step sizes during the simulation. They provide error control and zero crossing detection and may not comply with Real-Time constraints.
Source: https://docs.sw.siemens.com/en-US/doc/254352342/PL20250521841123434.amesim_collection.lib-cosim/ipe1729193408372 · retrieved 2026-07-17