Skip to content

Commit

Permalink
Update changelog, readme, bump version
Browse files Browse the repository at this point in the history
  • Loading branch information
FranzBangar committed Jul 19, 2024
1 parent 6e6439d commit 92e5d56
Show file tree
Hide file tree
Showing 4 changed files with 29 additions and 4 deletions.
17 changes: 17 additions & 0 deletions CHANGELOG.md
Original file line number Diff line number Diff line change
Expand Up @@ -4,6 +4,23 @@ All notable changes to this project will be documented in this file.
The format is based on [Keep a Changelog](https://keepachangelog.com/en/1.0.0/),
and this project adheres to [Semantic Versioning](https://semver.org/spec/v2.0.0.html).

# [1.6.0]
### Added
- Array element; handling multiple points at once (makes transforms faster)
- Complete overhaul of Optimization:
- Optimizer has become SketchOptimizer or MeshOptimizer
- MappedSketch is now smoothed by SketchSmoother
- Mesh can also be smoothed by MeshSmoother
- Gear example

### Changed
- Cell quality: adjusted calculation so that it works for quadrangles and hexahedrons
- Clamps no longer refer to Vertex objects but only store points as locations
- Links same as clamps above, locations only

### Removed
- QuadMap is no longer needed (handled by Grid classes)

# [1.5.3]
### Added
- RoundSolidShape.remove_inner_edges() can now remove edges from a specific face (start, end or both)
Expand Down
14 changes: 11 additions & 3 deletions README.md
Original file line number Diff line number Diff line change
Expand Up @@ -94,7 +94,7 @@ After blocks have been placed, it is possible to create new geometry based on pl
- [x] Move Vertex/Edge/Face
- [x] Delete a Block created by a Shape or Object
- [x] Project Vertex/Edge/Face
- [x] Optimize Vertex positions
- [x] Optimize point position of a Sketch or mesh vertices

## Meshing Specification
- [x] Simple definition of all supported kinds of edges with a dedicated class (Arc/Origin/Angle/Spline/PolyLine/Project)
Expand Down Expand Up @@ -164,6 +164,8 @@ mesh.add(revolve)

## Shapes
Some basic shapes are ready-made so that there's no need for workout with Operations.

A simple Cylinder:

```python
Expand Down Expand Up @@ -212,9 +214,11 @@ disk_in_square = cb.WrappedDisk(start_point, corner_point, disk_diameter/2, norm
shape = cb.ExtrudedShape(disk_in_square, length)
```

> See `examples/operations` for an example of each operation.
### Sketch Smoothing and Optimization

Points that define a custom sketch can only be placed approximately. Their positions can then be defined by Laplacian smoothing or optimization to obtain best face quality.

> See `examples/shape/custom` for an example with a custom sketch.
## Stacks
A collection of similar Shapes; a Stack is created by starting with a Sketch, then transforming it a number of times, obtaining Shapes, stacked on top of each other.
Expand Down Expand Up @@ -321,7 +325,7 @@ Once an approximate blocking is established, one can fetch specific vertices and

Block is treated as a single cell for which OpenFOAM's cell quality criteria are calculated and optimized per user's instructions.

Vertices can move freely (3 degrees of freedom), along a specified line/curve (1 DoF) or surface (2 DoF).
Points can move freely (3 degrees of freedom), along a specified line/curve (1 DoF) or surface (2 DoF).

```python
# [...] A simple setup with two cylinders of different radii,
Expand Down Expand Up @@ -371,6 +375,10 @@ happily show anything.
A parametric, Low-Re mesh of a real-life impeller *(not included in examples)*
![Impeller - Low Re](showcase/impeller_full.png "Low-Re Impeller")

A gear, made from a curve of a single tooth, calculated by
[py_gear_gen](https://github.com/heartworm/py_gear_gen)
![Gear](showcase/gear.png "Gear")

A complex example: parametric, Low-Re mesh of a cyclone
![Cyclone](showcase/cyclone.png "Cyclone")

Expand Down
2 changes: 1 addition & 1 deletion pyproject.toml
Original file line number Diff line number Diff line change
@@ -1,6 +1,6 @@
[project]
name = "classy_blocks"
version = "1.5.3"
version = "1.6.0"
description = "Python classes for easier creation of openFoam's blockMesh dictionaries."
readme = "README.md"
license = { file = "LICENSE" }
Expand Down
Binary file added showcase/gear.png
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.

0 comments on commit 92e5d56

Please sign in to comment.