.. _licensing: ========= Licensing ========= NeurEco requires a license to run. This page explains the license types, how to obtain a license, and how to configure it. .. note:: NeurEco 5.0 needs a license issued for NeurEco 5.0. License files issued for NeurEco 4.5 or 4.6 do not work with it: contact support@adagos.com to replace them. If a license server hands out your licenses, its license file must be replaced too. .. contents:: On this page :local: :depth: 2 License Types ============= NeurEco offers different license types based on your needs. The license names below are the feature names listed in your license file. Standard Licenses ----------------- .. list-table:: :widths: 30 70 :header-rows: 1 * - License - Capabilities * - ``neureco`` - Tabular solution (Regressor, Classifier, Compressor): build, evaluate, and save models in native format * - ``neureco_compression`` - Building Tabular Compression models, together with ``neureco`` * - ``neureco_discrete_dynamic`` - Dynamic solution (ODE, Convolutional Dynamic): build, evaluate, and save models in native format. Building Dynamic models also requires ``neureco`` * - ``neureco_pfs`` - PFS solution (Parametric Frequency Sweep): build, evaluate, and save models in native format Embed Licenses (Add-ons) ------------------------ Embed licenses are add-ons that enable exporting models to deployment formats: .. list-table:: :widths: 30 70 :header-rows: 1 * - License - Export Formats * - ``neureco_embed_tabular`` - Export Tabular models to ONNX, FMU, C header and VBA, and convert them to PyTorch or Keras * - ``neureco_embed_dynamic`` - Export Dynamic models (ODE, Convolutional Dynamic) to FMU * - ``neureco_embed_pfs`` - Export PFS models to FMU .. note:: Standard licenses include all features for model development, including size control and checkpoint exploration. Embed licenses are only required when preparing models for deployment. Obtaining a License =================== Step 1: Generate Hardware Info ------------------------------ NeurEco licenses are tied to your hardware. To obtain a license, you need to generate a hardware information file, ``hardware_info.txt``, in the desktop app, with the ``neureco`` command, or with the Python package. **Desktop app:** open the **Help** menu and select **Hardware id generator**. Fill in your company name, name, phone number, e-mail address and computer name, click **Generate HardwareInfo.txt**, and choose where to save ``hardware_info.txt``. **Command line:** .. tabs:: .. tab:: Windows NeurEco is not added to ``PATH``. In a Command Prompt, run ``neureco.exe`` from the ``bin`` folder of your installation (default location shown; in PowerShell, put ``&`` and a space before the quoted path): .. code-block:: shell "C:\Program Files\Adagos\NeurEco-5.0\bin\neureco.exe" hardwareinfo The command asks for your company name, name, phone number, e-mail address and computer name, then creates a ``hardware_info.txt`` file in your current directory. .. tab:: Linux After installation, run: .. code-block:: shell neureco hardwareinfo The command asks for your company name, name, phone number, e-mail address and computer name, then creates a ``hardware_info.txt`` file in your current directory. **Python package only:** if you installed only the ``neureco`` Python package with pip, run this in the Python environment where it is installed: .. code-block:: shell python -m NeurEco.hardware_info The command, also available as ``neureco-hardwareinfo``, asks for the same details and creates a ``hardware_info.txt`` file in your current directory. Run it with ``--help`` to see how to give the details as options or write the file elsewhere. .. note:: NeurEco does not create ``hardware_info.txt`` inside most virtual machines, which includes many cloud servers. To use NeurEco in a virtual machine, contact support@adagos.com. Step 2: Request Your License ---------------------------- Send the ``hardware_info.txt`` file to the Adagos support team: - **Email:** support@adagos.com - **Subject:** License Request - [Your Organization] Include the following information: - Your name and organization - Which license type(s) you need - The ``hardware_info.txt`` file as an attachment Step 3: Install Your License ---------------------------- Once you receive your license file (typically ``adagos.lic``), configure NeurEco to use it: .. tabs:: .. tab:: Option 1: User Folder (Windows) On Windows, copy the license file, with its ``.lic`` extension, to your user folder, usually ``C:\Users\your_username``. NeurEco reads every ``.lic`` file in that folder. On Linux, NeurEco does not look for license files in your home directory: without the ``ADAGOS_LICENSE_FILE`` variable, it finds a license file only when it is in the current folder. Use Option 2. .. tab:: Option 2: Environment Variable Set the ``ADAGOS_LICENSE_FILE`` environment variable to the full path of your license file. **Windows:** in Settings, search for *environment variables*, choose **Edit environment variables for your account**, and add ``ADAGOS_LICENSE_FILE`` with the full path of the license file. You can also run this in a Command Prompt: .. code-block:: shell setx ADAGOS_LICENSE_FILE "C:\path\to\your\adagos.lic" The variable applies to the programs you start afterwards, so close and start NeurEco again. ``set`` in a Command Prompt and ``$env:ADAGOS_LICENSE_FILE`` in PowerShell set it only for that window. **Linux:** add this line to ``~/.profile`` on Debian and Ubuntu (to ``~/.bash_profile`` if you have one), or to ``~/.bash_profile`` on Red Hat Enterprise Linux and compatible systems, then log in again: .. code-block:: shell export ADAGOS_LICENSE_FILE="$HOME/adagos.lic" Programs started from the applications menu, such as the GUI, do not read ``~/.bashrc`` or ``~/.zshrc``: a line there applies only to terminals. .. tab:: Option 3: GUI Prompt (Windows) On Windows, when NeurEco finds no license file, a FlexNet window asks for its location and remembers it for your user account. Start the GUI to see it. This window does not exist on Linux. Verifying Your License ====================== After configuring your license, verify it works: **Python API:** .. code-block:: python from NeurEco import NeurEcoTabular as tab # This will fail with a license error if not configured model = tab.Regressor() print("License configured successfully!") **GUI:** Launch the NeurEco GUI. If the application opens without errors, your license is configured correctly. **CLI:** Run a small build, for example the CLI build of :ref:`Your First Model `: .. code-block:: shell neureco Regression build build.conf On Windows, NeurEco is not added to ``PATH``. In a Command Prompt, use the full path (default location shown; in PowerShell, put ``&`` and a space before the quoted path): .. code-block:: shell "C:\Program Files\Adagos\NeurEco-5.0\bin\neureco.exe" Regression build build.conf If the build starts without a license error, your license is configured correctly. ``neureco -h`` only prints the usage and does not check the license. License Errors ============== Common license-related errors and solutions: **"License not found"** - Check that ``ADAGOS_LICENSE_FILE`` holds the full path of the license file and is set for the program you start (see `Step 3: Install Your License`_). On Windows, a ``.lic`` file in your user folder also works; on Linux, NeurEco does not look in your home directory - Check the file permissions (must be readable) **"License expired"** - Contact support@adagos.com to renew your license **"License file does not support this version"** or **"License server system does not support this version of this feature"** - The license was issued for NeurEco 4.x. NeurEco 5.0 needs a license issued for NeurEco 5.0: contact support@adagos.com .. note:: On Windows, license errors first appear in a window titled "FLEXible License Manager". Close it: NeurEco then shows its own message. **"Hardware mismatch"** - Licenses are tied to specific hardware. If you've changed your hardware, generate a new ``hardware_info.txt`` and request a new license **"Feature not licensed"** - You're trying to use a feature not included in your license (e.g., export without an embed license) - Contact support@adagos.com to upgrade your license Third-Party Licenses ==================== NeurEco includes third-party software components. ``THIRD-PARTY-NOTICES.txt`` lists each of them with its copyright notice and license, and the ``licenses`` folder next to it holds the full license texts. You find them in these places: - **Windows** (installer and portable ZIP): the installation folder, by default ``C:\Program Files\Adagos\NeurEco-5.0`` (for the portable ZIP, the folder ``NeurEco--x86_64`` that unzipping creates) - **Linux** (deb and rpm packages): ``/opt/neureco/share/doc/adagos`` - **Python package**: the ``NeurEco`` folder of the installed package; pip also keeps a copy in the ``licenses`` folder of the package's ``.dist-info`` folder - **Exported FMUs**: the ``documentation/licenses`` folder inside each ``.fmu`` file, whose ``THIRD-PARTY-NOTICES.txt`` includes the license texts Each open-source component is licensed under its own license, not under the NeurEco license agreement ``NeurecoLicense.txt``. For the components licensed under the GNU GPL, the GNU LGPL or the Mozilla Public License, ``THIRD-PARTY-NOTICES.txt`` gives a written offer, valid for three years from distribution, to provide their source code to anyone who writes to support@adagos.com. Section 5 of the license agreement, "Third Party Components", summarizes the terms of the main components. Key dependencies include: - **PyTorch** — BSD 3-Clause license (Convolutional Dynamic models) - **Eigen** — MPL2 license (linear algebra) - **Qt** — LGPL v3 license (GUI framework) - **ONNX Runtime** — MIT license (model export) - **NVIDIA CUDA, cuDNN and cuDSS** — NVIDIA licenses (GPU acceleration) - **Intel oneMKL** — Intel Simplified Software License (math operations)