-
Notifications
You must be signed in to change notification settings - Fork 0
Commit
This commit does not belong to any branch on this repository, and may belong to a fork outside of the repository.
- Loading branch information
Showing
3,428 changed files
with
150,044 additions
and
25,042 deletions.
The diff you're trying to view is too large. We only load the first 3000 changed files.
There are no files selected for viewing
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,41 @@ | ||
name: sphinx build doc html | ||
|
||
on: | ||
push: | ||
branches: | ||
- main | ||
|
||
# Allows you to run this workflow manually from the Actions tab | ||
workflow_dispatch: | ||
|
||
jobs: | ||
build-html: | ||
runs-on: ubuntu-latest | ||
permissions: | ||
contents: write | ||
steps: | ||
- uses: actions/checkout@v3 | ||
- name: Set up Python | ||
uses: actions/setup-python@v3 | ||
with: | ||
python-version: '3.9' | ||
- name: Install dependencies | ||
run: | | ||
pwd | ||
ls -al | ||
python -m pip install --upgrade pip | ||
pip install -r doc/user/requirements.txt | ||
- name: Build HTML | ||
run: | | ||
pwd | ||
ls -al | ||
cd doc/user | ||
make clean | ||
make html | ||
- name: Deploy | ||
uses: peaceiris/actions-gh-pages@v3 | ||
with: | ||
publish_branch: gh-pages | ||
github_token: ${{ secrets.GITHUB_TOKEN }} | ||
publish_dir: doc/user/_build/html | ||
force_orphan: true |
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
|
@@ -6,6 +6,7 @@ _build/ | |
share/doc/prevabs/_build/* | ||
evals/ | ||
.vscode/ | ||
.vs/ | ||
|
||
# Ignore the following files | ||
~$* | ||
|
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -1,130 +1,141 @@ | ||
cmake_minimum_required(VERSION 3.0 FATAL_ERROR) | ||
project( prevabs C CXX Fortran ) | ||
|
||
cmake_policy(SET CMP0074 NEW) | ||
|
||
project( prevabs C CXX ) | ||
# project( prevabs C CXX Fortran ) | ||
|
||
set( PROJECTNAME "prevabs" ) | ||
|
||
set( CMAKE_CXX_STANDARD 11 ) | ||
|
||
set( PREVABS_MAJOR_VERSION 1 ) | ||
set( PREVABS_MINOR_VERSION 4 ) | ||
set( PREVABS_VERSION "${PREVABS_MAJOR_VERSION}.${PREVABS_MINOR_VERSION}" ) | ||
|
||
include(CheckCXXCompilerFlag) | ||
CHECK_CXX_COMPILER_FLAG("-std=c++11" COMPILER_SUPPORTS_CXX11) | ||
CHECK_CXX_COMPILER_FLAG("-std=c++0x" COMPILER_SUPPORTS_CXX0X) | ||
if(COMPILER_SUPPORTS_CXX11) | ||
set(CMAKE_CXX_FLAGS "${CMAKE_CXX_FLAGS} -std=c++11") | ||
elseif(COMPILER_SUPPORTS_CXX0X) | ||
set(CMAKE_CXX_FLAGS "${CMAKE_CXX_FLAGS} -std=c++0x") | ||
else() | ||
message(STATUS "The compiler ${CMAKE_CXX_COMPILER} has no C++11 support. Please use a different C++ compiler.") | ||
endif() | ||
set( PREVABS_VERSION_MAJOR 1 ) | ||
set( PREVABS_VERSION_MINOR 6 ) | ||
set( PREVABS_VERSION_PATCH 0 ) | ||
set( PREVABS_VERSION "${PREVABS_VERSION_MAJOR}.${PREVABS_VERSION_MINOR}.${PREVABS_VERSION_PATCH}" ) | ||
|
||
# Generate version.h | ||
configure_file( | ||
"${CMAKE_SOURCE_DIR}/version.h.in" | ||
"${CMAKE_BINARY_DIR}/generated/version.h" | ||
@ONLY | ||
) | ||
|
||
option(LINK_VABS_SHARED_LIB "Link VABS shared library" OFF) | ||
|
||
# include(CheckCXXCompilerFlag) | ||
# CHECK_CXX_COMPILER_FLAG("-std=c++11" COMPILER_SUPPORTS_CXX11) | ||
# CHECK_CXX_COMPILER_FLAG("-std=c++0x" COMPILER_SUPPORTS_CXX0X) | ||
# if(COMPILER_SUPPORTS_CXX11) | ||
# set(CMAKE_CXX_FLAGS "${CMAKE_CXX_FLAGS} -std=c++11") | ||
# elseif(COMPILER_SUPPORTS_CXX0X) | ||
# set(CMAKE_CXX_FLAGS "${CMAKE_CXX_FLAGS} -std=c++0x") | ||
# else() | ||
# message(STATUS "The compiler ${CMAKE_CXX_COMPILER} has no C++11 support. Please use a different C++ compiler.") | ||
# endif() | ||
|
||
|
||
|
||
include_directories( ${CMAKE_SOURCE_DIR}/include ) | ||
# include_directories( ${CMAKE_BINARY_DIR}/generated ) | ||
# include_directories( ${CMAKE_SOURCE_DIR}/include/gmsh ) | ||
|
||
set( PROJECTNAME "prevabs" ) | ||
set( SOURCES | ||
src/geo/PGeoClasses.cpp | ||
src/geo/PGeoLine.cpp | ||
src/geo/PDCELVertex.cpp | ||
src/geo/PDCELHalfEdge.cpp | ||
src/geo/PDCELHalfEdgeLoop.cpp | ||
src/geo/PDCELFace.cpp | ||
src/geo/PDCEL.cpp | ||
src/geo/PBST.cpp | ||
src/geo/geo.cpp | ||
src/geo/offset.cpp | ||
src/geo/intersect.cpp | ||
src/cs/PArea.cpp | ||
src/cs/Material.cpp | ||
src/cs/PSegment.cpp | ||
src/cs/PComponent.cpp | ||
src/cs/PBuildComponentLaminate.cpp | ||
src/cs/PBuildComponentFilling.cpp | ||
src/cs/PBuildSegmentAreas.cpp | ||
src/cs/CrossSection.cpp | ||
src/cs/PBaseLine.cpp | ||
src/cs/PModel.cpp | ||
src/cs/join.cpp | ||
src/io/PModelIO.cpp | ||
src/io/PModelIOReadBasePoint.cpp | ||
src/io/PModelIOReadBaseLine.cpp | ||
src/io/PModelIOReadMaterial.cpp | ||
src/io/PModelIOReadLayup.cpp | ||
src/io/PModelIOReadComponent.cpp | ||
src/io/PModelIOReadComponentLaminate.cpp | ||
src/io/PModelIOReadComponentFilling.cpp | ||
src/io/PModelIOReadCrossSection.cpp | ||
src/io/PModelIODehomo.cpp | ||
src/io/PModelIOSG.cpp | ||
src/io/PModelIOPlot.cpp | ||
src/gmsh/PModelBuildGmsh.cpp | ||
src/gmsh/PModelIOGmsh.cpp | ||
src/plog.cpp | ||
src/overloadOperator.cpp | ||
src/utilities.cpp | ||
src/execu.cpp | ||
src/main.cpp | ||
src/vabs/output.f90 | ||
) | ||
# add_subdirectory(src) | ||
file(GLOB_RECURSE SOURCES "${CMAKE_SOURCE_DIR}/src/*.cpp") | ||
|
||
|
||
|
||
if(MSVC) | ||
set(CMAKE_EXE_LINKER_FLAGS "${CMAKE_EXE_LINKER_FLAGS} /SUBSYSTEM:CONSOLE") | ||
endif() | ||
|
||
add_executable( ${PROJECTNAME} ${SOURCES} ) | ||
|
||
# target_include_directories( ${PROJECTNAME} PUBLIC ${CMAKE_SOURCE_DIR}/include ) | ||
target_include_directories( ${PROJECTNAME} PUBLIC ${CMAKE_BINARY_DIR}/generated ) | ||
|
||
|
||
# Link Boost libraries | ||
# -------------------- | ||
set(Boost_USE_STATIC_LIBS OFF) | ||
if(WIN32 OR CYGWIN) | ||
set(Boost_USE_STATIC_LIBS ON) | ||
endif() | ||
# set(Boost_USE_MULTITHREADED ON) | ||
set(Boost_USE_STATIC_RUNTIME OFF) | ||
add_definitions( -DBOOST_ALL_DYN_LINK ) | ||
# set(Boost_USE_STATIC_RUNTIME OFF) | ||
# add_definitions( -DBOOST_ALL_DYN_LINK ) | ||
|
||
find_package( Boost 1.66 COMPONENTS log log_setup system thread REQUIRED ) | ||
message( ${Boost_INCLUDE_DIRS} ) | ||
message( ${Boost_LIBRARY_DIRS} ) | ||
message( ${Boost_LIBRARIES} ) | ||
message( STATUS "(st) " ${Boost_INCLUDE_DIRS} ) | ||
message( STATUS "(st) " ${Boost_LIBRARY_DIRS} ) | ||
message( STATUS "(st) " ${Boost_LIBRARIES} ) | ||
include_directories( ${Boost_INCLUDE_DIRS} ) | ||
|
||
target_link_libraries( ${PROJECTNAME} ${Boost_LIBRARIES} ) | ||
|
||
|
||
# Link Gmsh library | ||
# ----------------- | ||
find_library( GMSH NAMES Gmsh PATHS "./lib" REQUIRED NO_DEFAULT_PATH) | ||
message( ${GMSH} ) | ||
message( STATUS "(st) " $ENV{Gmsh_ROOT} ) | ||
|
||
target_link_libraries( ${PROJECTNAME} ${GMSH} ) | ||
find_path(GMSH_INC gmsh.h PATHS $ENV{Gmsh_ROOT}/include REQUIRED) | ||
if(NOT GMSH_INC) | ||
message(FATAL_ERROR "Could not find gmsh.h") | ||
endif() | ||
message( STATUS "(st) " ${GMSH_INC} ) | ||
include_directories(${GMSH_INC}) | ||
|
||
find_library(GMSH_LIB gmsh PATHS $ENV{Gmsh_ROOT}/lib REQUIRED) | ||
if(NOT GMSH_LIB) | ||
message(FATAL_ERROR "Could not find libgmsh") | ||
endif() | ||
message( STATUS "(st) " ${GMSH_LIB} ) | ||
target_link_libraries( ${PROJECTNAME} ${GMSH_LIB} ) | ||
|
||
# find_library( GMSH NAMES Gmsh PATHS "./lib" REQUIRED NO_DEFAULT_PATH) | ||
# message( STATUS "(st) " ${GMSH} ) | ||
# target_link_libraries( ${PROJECTNAME} ${GMSH} ) | ||
|
||
|
||
# Extra libraries | ||
# --------------- | ||
if(WIN32 OR CYGWIN) | ||
list(APPEND EXTRA_LIBS winmm wsock32 ws2_32 psapi) | ||
target_link_libraries( ${PROJECTNAME} ${EXTRA_LIBS} ) | ||
endif() | ||
|
||
|
||
# Link VABS library | ||
# ----------------- | ||
# find_library( VABS NAMES VABS PATHS "${VABS_INSTALL_DIR}" REQUIRED NO_DEFAULT_PATH) | ||
# find_library( VABS NAMES VABSLib.so PATHS "${VABS_INSTALL_DIR}" REQUIRED NO_DEFAULT_PATH ) | ||
# message( ${VABS} ) | ||
# set( CMAKE_SHARED_LIBRARY_PREFIX "" ) | ||
|
||
# target_link_directories( ${PROJECTNAME} "/home/msg/a/MSGCodes" ) | ||
# target_link_libraries( ${PROJECTNAME} ${VABS} ) | ||
# target_link_libraries( ${PROJECTNAME} "${VABS_INSTALL_DIR}/VABSLib.so" ) | ||
# target_link_options( ${PROJECTNAME} PRIVATE "${VABS_INSTALL_DIR}/VABSLib.so" ) | ||
|
||
if( WIN32 OR CYGWIN OR MINGW ) | ||
find_library( VABS NAMES VABSLIB.dll.a PATHS "${VABS_INSTALL_DIR}" REQUIRED NO_DEFAULT_PATH) | ||
message( ${VABS} ) | ||
target_link_libraries( ${PROJECTNAME} ${VABS} ) | ||
# target_link_options( ${PROJECTNAME} PRIVATE "${VABS_INSTALL_DIR}/VABSLIB.dll" ) | ||
elseif( UNIX ) | ||
target_link_options( ${PROJECTNAME} PRIVATE "${VABS_INSTALL_DIR}/VABSLib.so" ) | ||
if ( LINK_VABS_SHARED_LIB ) | ||
|
||
# find_library( VABS NAMES VABS PATHS "${VABS_INSTALL_DIR}" REQUIRED NO_DEFAULT_PATH) | ||
# find_library( VABS NAMES VABSLib.so PATHS "${VABS_INSTALL_DIR}" REQUIRED NO_DEFAULT_PATH ) | ||
# message( ${VABS} ) | ||
# set( CMAKE_SHARED_LIBRARY_PREFIX "" ) | ||
|
||
# target_link_directories( ${PROJECTNAME} "/home/msg/a/MSGCodes" ) | ||
# target_link_libraries( ${PROJECTNAME} ${VABS} ) | ||
# target_link_libraries( ${PROJECTNAME} "${VABS_INSTALL_DIR}/VABSLib.so" ) | ||
# target_link_options( ${PROJECTNAME} PRIVATE "${VABS_INSTALL_DIR}/VABSLib.so" ) | ||
|
||
if( WIN32 OR CYGWIN OR MINGW ) | ||
find_library( VABS NAMES VABSLIB.dll.a PATHS "${VABS_INSTALL_DIR}" REQUIRED NO_DEFAULT_PATH) | ||
message( STATUS "(st) " ${VABS} ) | ||
target_link_libraries( ${PROJECTNAME} ${VABS} ) | ||
|
||
elseif( UNIX ) | ||
# find_library( VABS NAMES VABSLib.so PATHS "${VABS_INSTALL_DIR}" REQUIRED NO_DEFAULT_PATH) | ||
# message( ${VABS} ) | ||
# target_link_libraries( ${PROJECTNAME} ${VABS} ) | ||
# target_link_options( ${PROJECTNAME} PRIVATE "${VABS_INSTALL_DIR}/VABSLib.so" ) | ||
# target_link_options( ${PROJECTNAME} PRIVATE "-l:VABSLib.so" ) | ||
target_link_options( ${PROJECTNAME} PRIVATE "-L${VABS_INSTALL_DIR}" ) | ||
target_link_options( ${PROJECTNAME} PRIVATE "-l:VABSLib.so" ) | ||
|
||
endif() | ||
|
||
endif() | ||
|
||
|
||
# Install | ||
# ------- | ||
install(TARGETS ${PROJECTNAME} RUNTIME DESTINATION bin) | ||
install(TARGETS ${PROJECTNAME} RUNTIME DESTINATION ${CMAKE_SOURCE_DIR}/bin) |
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -1,14 +1,58 @@ | ||
# Development Log | ||
|
||
## Backlog | ||
|
||
- [Bug] Issue of generating layups for a closed line if the closing point has joint angle larger than 180 degrees | ||
- [Bug] Issue of creating a new point on airfoil using 'x2' if it coincides with an existing point in the airfoil data | ||
|
||
## Done | ||
|
||
2023/04/14 | ||
|
||
- [Bug] Fixed an issue of writing incompatible input for SwiftComp version 2.2. | ||
- [New] Added a new command line option to configure VABS/SwiftComp version. | ||
|
||
2023/02/19 | ||
|
||
- [New] Added thermo-related inputs (CTE and specific heat) for SwiftComp. | ||
- [New] Added a new input option `physics` under `analysis` to indicate the analysis type for SwiftComp. | ||
|
||
2023/02/09 | ||
|
||
- [New] Added the capability to identify interfaces and output the nodes on the interfaces, with three new input options under `general`: `track_interface`, `interface_theta1_diff_threshold`, and `interface_theta3_diff_threshold`. | ||
|
||
2022/12/10 | ||
|
||
- [New] Added the input and capability to reverse the line with type "airfoil" | ||
|
||
2022/11/24 | ||
|
||
- [New] Added the capability to set material orientation align the base line | ||
|
||
2022/11/22 | ||
|
||
- [Bug] Fixed the issue of not reading the root 'sg' element for dehomogenization and failure analysis | ||
- [Bug] Fixed the issue of not reading 'global' input without loads for failure strength analysis | ||
|
||
2022/11/18 | ||
|
||
- [New] Added the capability to change the free end shape using a vector | ||
|
||
2022/11/16 | ||
|
||
- [New] Added the input for omega (General volume of the SG in the periodic dimensions; SwiftComp only) | ||
- [New] Added the input for material and lamina in the main input file. | ||
|
||
2022/11/14 | ||
|
||
- [Bug] Fixed the issue of writing wrong flag for general anisotropic materials. | ||
|
||
2022/07/23 | ||
|
||
- [Bug] Fixed the issue of reading result of failure analysis of the new format with an extra line of load case label. | ||
- [Opt] Changed the Gmsh plot option for strength ratios. | ||
|
||
|
||
## Backlog | ||
|
||
## Changes in Gmsh | ||
|
||
- Added a new member variable `tags` in the class `GEntity` (`GEntity.h`). |
File renamed without changes.
Oops, something went wrong.