Перейти к содержанию

Быстрый старт

В этом руководстве описан процесс клонирования, сборки и первого запуска проекта OpenCS.


Системные требования

  • Операционная система: Windows 10 / Windows 11 (для основного WPF-приложения).
  • Платформа: .NET 9.0 SDK или новее.
  • Среда разработки: Visual Studio 2022 (версия 17.12+ с рабочей нагрузкой .NET Desktop Development), Rider или Visual Studio Code с C# Dev Kit.
  • (Опционально) Установленный Autodesk AutoCAD для прямого импорта через COM API (импорт DXF работает автономно без AutoCAD).

Клонирование репозитория

Склонируйте исходный код проекта с GitHub:

git clone https://github.com/rumata-ap/OpenCS.git
cd OpenCS

Сборка решения

Собрать решение можно через командную строку .NET CLI:

dotnet restore OpenCS.sln
dotnet build OpenCS.sln -c Release

Либо открыть OpenCS.sln в вашей IDE и нажать ++ctrl+shift+b++.


Запуск приложения

Для запуска графического интерфейса пользователя (WPF):

dotnet run --project OpenCS

[!NOTE] Вычислительные библиотеки (CSmath, CSTriangulation, CScore, CSfea.*) не зависят от Windows Desktop SDK и могут компилироваться и тестироваться на кроссплатформенной основе (Linux, macOS, Windows).

Первый расчёт сечения

flowchart TD
    A[Создать проект] --> B[Создать контур]
    B --> C[Добавить материал]
    C --> D[Создать MaterialArea]
    D --> E[Добавить арматуру]
    E --> F[Создать CrossSection]
    F --> G[Создать ForceSet]
    G --> H[Создать CalcTask]
    H --> I[Запустить и открыть результат]
  1. В дереве проекта создайте внешний контур. Для отверстия используйте внутренний контур области, а не отдельный бетонный материал.
  2. Создайте бетонный материал и выберите диаграмму для нужного CalcType.
  3. Создайте материальную область и назначьте ей Hull, отверстия и материал.
  4. Добавьте группы продольной арматуры как точечные фибры. Проверьте HostArea.
  5. Создайте CrossSection и убедитесь, что все нужные области входят в него.
  6. Создайте набор усилий. Перед запуском сверяйте знак Mx/My с расположением растянутой арматуры.
  7. Создайте задачу strain_state или пакетную задачу и откройте результат.

Минимальный контроль результата

  • статус задачи — не error и не not_converged;
  • равновесие N, Mx, My соответствует заданным усилиям;
  • растянутая грань совпадает с ожидаемой;
  • карта деформаций не имеет неожиданных скачков;
  • для сеточного пути результат устойчив при сгущении;
  • отчёт содержит исходные данные, единицы и предупреждения.

После первого запуска полезно повторить расчёт без сеточных фибр и сравнить его с контурным интегрированием.