ConceptEV Node

This node provides an interface to evaluate ConceptEV concepts within a parametric design study.

Overview

The ConceptEV node enables

  • Defining a reference concept previously defined inside ConceptEV.

  • Accessing its parameters and responses.

  • Submitting design variations to ConceptEV and retrieving the results.

It includes the capability to submit custom motors by uploading corresponding .lab or .xlsx files:

  • Lab file based motor (.lab file)

  • Loss map based motor (.xlsx file)

In order to use the ConceptEV node, an active account for Ansys ConceptEV is required.

  • For connecting with ConceptEV, the user needs to authenticate with ConceptEV. As soon as the authentication is necessary, a new browser tab will open automatically and request the user to provide their Ansys ConceptEV credentials. This happens typically in the following two situations:

    • User clicks the Update accounts button.

    • User starts the optiSLang workflow.

    This authentication typically needs to be done once per optiSLang session. Once the authentication is completed, the authentication token data is cached in the optiSLang project working directory in a file named conceptev_token_cache.bin.

    It can also happen that from time to time additional browser tabs are opened in order to automatically refresh the authentication token.

  • A connection debug log is created in the optiSLang working directory in a file named conceptev_debug.log. In case of connectivity issues during the Reload parametrization phase or the optiSLang project execution, it might contain information to resolve them.

Setup

Setting up the ConceptEV node consists of the following steps:

  1. Set up a reference concept inside ConceptEV.

  2. Copy the reference URL (example: https://conceptev.ansys.com/ws/concept/51930119-be60-4a92-997d-3a081d9afc95/configurations) or just the concept id (example: 51930119-be60-4a92-997d-3a081d9afc95)

  3. In optiSLang, create a ConceptEV node and open it.

  4. Switch to the Settings tab.

  5. Paste the reference URL/concept id from Step 2 into the field Reference concept ID.

  6. Click the Update accounts button to load the available accounts. This will open up a browser window to authenticate with ConceptEV.

  7. Select the appropriate account in the Account name dropdown menu.

  8. For now, leave the remaining settings at their default values.

  9. Switch to the Parametrization tab and click the Reload parametrization button.

    This will solve the reference concept again in order to provide the response values corresponding to the input values. Depending on the concept model size (for example, the number of requirements to solve and the length of the drive cycles), this can take some time, during which the ConceptEV node will appear unresponsive.


    Note:  The results produced during this step are cached in the optiSLang .opr directory. As long as the cached data is not moved/deleted, any future Reload parametization action for that reference concept inside this project will use the cached data and will load the parameters/responses much faster.


  10. Once the Reload Parametrization step is done, you can register parameters as well as responses.

Parameters

The parameters can be found in a tree view grouped according to:

  • Architecture

    This provides access to the available component choices from the ConceptEV Architecture tab.

  • Components

    This provides access to the available parameters for components found in the ConceptEV Components tab:

    • Transmissions

    • Motors

    • Inverters

    • Batteries

  • Configurations

    This provides access to the available parameters for configurations found in the ConceptEV Vehicle Configurations tab:

    • Aerodynamics

    • Masses

    • Wheels

    • Ancillary loads

    • Deceleration limits

  • Requirements

    This provides access to the available parameters for requirements found in the ConceptEV Requirements tab:

    • Static requirements

    • Dynamic requirements

    • Drive cycles


Note:  The architecture related parameters are mostly discrete parameters of type string or integer. This will also be reflected automatically in the parameter manager.


Outputs

Responses are displayed as a tree view grouped by evaluated requirements, including a summary as last item. The summary contains information regarding:

  • Number of fulfilled requirements

  • Total cost

    • Cost by component

  • Total mass

Solver

Concepts are not solved locally. Instead the ConceptEV node submits the solve jobs to Ansys ConceptEV. The designs submitted by optiSLang are stored in ConceptEV and can be reviewed within ConceptEV.

Settings

NameDefault valueDescription
Reference concept ID""

Use the unique concept id found in the browser URL or the full browser URL.

This field is mandatory and needs to be filled before clicking Reload parametrization.

Use separate projectFalse
  • True: optiSLang will store all Concepts in the ConceptEV project specified in the field Project name. If the project does not exist yet, it will be created.

  • False: optiSLang will store all Concepts in the same ConceptEV project which contains the reference concept.

Project name%OSL_PROJECT_NAME% [%OSL_SYSTEM_NAME%]

If the Use separate project setting is activated, optiSLang will store all concepts in a project with the project name specified in this field.

Environment variables can be used using %name% or ${name} syntax. In addition to the regular environment variables and environment variables provided by optiSLang, the following variables may be used:

  • %OSL_PROJECT_NAME% / ${OSL_PROJECT_NAME}: Name of optiSLang project.

  • %OSL_SYSTEM_NAME% / ${OSL_SYSTEM_NAME}: Name of optiSLang system.

  • %OSL_NODE_NAME% / ${OSL_NODE_NAME}: Name of optiSLang node.

  • %OSL_DESIGN_NAME% / ${OSL_DESIGN_NAME}: Name of optiSLang design.

  • %TIMESTAMP% / ${TIMESTAMP}: Current timestamp.

Concept name pattern[%OSL_NODE_NAME%]: %OSL_DESIGN_NAME% (%TIMESTAMP%)

Naming pattern for how the concepts will be named inside ConceptEV.

Environment variables can be used using %name% or ${name} syntax. In addition to the regular environment variables and environment variables provided by optiSLang, the following variables may be used:

  • %OSL_PROJECT_NAME% / ${OSL_PROJECT_NAME}: Name of optiSLang project.

  • %OSL_SYSTEM_NAME% / ${OSL_SYSTEM_NAME}: Name of optiSLang system.

  • %OSL_NODE_NAME% / ${OSL_NODE_NAME}: Name of optiSLang node.

  • %OSL_DESIGN_NAME% / ${OSL_DESIGN_NAME}: Name of optiSLang design.

  • %TIMESTAMP% / ${TIMESTAMP}: Current timestamp.

Account name""Click the Update accounts button to populate the dropdown menu with the account names available to you.
Local architecture checkTrue
  • True: Perform a local architecture check before submitting to ConceptEV. This avoids submitting architecture combinations which would be rejected by ConceptEV.

  • False: Skip local architecture check and submit also infeasible architecture combinations to ConceptEV.

Note:  It is to be expected that a number of the designs created by optiSLang sensitivity or optimization systems are infeasible and will not be computed by ConceptEV. For instance, it is not possible to combine two motors and a clutch for one and the same axle.

Force SI unitsFalse
  • True: Return results in SI units used by the ConceptEV solver.

  • False: Return results in the units as defined in the ConceptEV user interface.

Custom motor 1
  • ""/Not used: Motor choices only consist of the motors available in the template concept.

  • Lab Model: Adds .lab file based custom motor with name "Custom motor 1".*

  • Lossmap: Adds .xlsx file based custom motor with name "Custom motor 1".*

*Lab model & Lossmap: In order to use the custom motor, perform the following steps:

  1. Select either the "Lab Model" or "Lossmap" option in the dropdown menu.

  2. Go to the Parametrization tab and click Reload Parametrization. This will add a corresponding entry in the parameters under "Motors/Custom_motor_1".

  3. Drag and drop Components/Motors/Custom_motor_1/Custom_motor_1__filepath to input slots to create an input slot for the custom motor 1 filepath.

  4. In the optiSLang scenery, connect a string or path object indicating the .lab/.xlsx file location on your local hard disk to this input slot to assign the file.

    The .lab/.xlsx file can be a static file stored in an absolute path or it can be created from a MotorCAD node via scripting.

  5. Optionally register ../Custom_motor_1__cost, ../Custom_motor_1__mass, and ../Custom_motor_1__poles as input slots or parameters to assign corresponding values.

  6. In order for optiSLang to use this custom motor either on front and/or rear axle, add the choice "Custom_motor_1" to the discrete states of parameters front_motor and/or rear_motor, respectively.

Custom motor 2
  • ""/Not used: Motor choices only consist of the motors available in the template concept.

  • Lab Model: Adds .lab file based custom motor with name "Custom motor 2".*

  • Lossmap: Adds .xlsx file based custom motor with name "Custom motor 2".*

*Lab model & Lossmap: In order to use the custom motor, perform the following steps:

  1. Select either the "Lab Model" or "Lossmap" option in the dropdown menu.

  2. Go to the Parametrization tab and click Reload Parametrization. This will add a corresponding entry in the parameters under "Motors/Custom_motor_2".

  3. Drag and drop Components/Motors/Custom_motor_2/Custom_motor_2__filepath to input slots to create an input slot for the custom motor 2 filepath.

  4. In the optiSLang scenery, connect a string or path object indicating the .lab/.xlsx file location on your local hard disk to this input slot to assign the file.

    The .lab/.xlsx file can be a static file stored in an absolute path or it can be created from a MotorCAD node via scripting.

  5. Optionally register ../Custom_motor_2__cost, ../Custom_motor_2__mass, and ../Custom_motor_2__poles as input slots or parameters to assign corresponding values.

In order for optiSLang to use this custom motor either on front and/or rear axle, add the choice "Custom_motor_2" to the discrete states of parameters front_motor and/or rear_motor, respectively.

Run Options

This node has general Run Options. The number of supported options is individual for each node.

It is recommended to assign a maximum runtime appropriate to your ConceptEV model size so that the optiSLang workflow is not blocked by a "stuck" job.

Supported Versions

See the Supported Versions table.