https://github.com/0xcoto/topopt

A topology optimization attempt for RF simulations

https://github.com/0xcoto/topopt

Science Score: 26.0%

This score indicates how likely this project is to be science-related based on various indicators:

  • CITATION.cff file
  • codemeta.json file
    Found codemeta.json file
  • .zenodo.json file
    Found .zenodo.json file
  • DOI references
  • Academic publication links
  • Committers with academic emails
  • Institutional organization owner
  • JOSS paper metadata
  • Scientific vocabulary similarity
    Low similarity (9.7%) to scientific vocabulary
Last synced: 11 months ago · JSON representation

Repository

A topology optimization attempt for RF simulations

Basic Info
  • Host: GitHub
  • Owner: 0xCoto
  • License: gpl-3.0
  • Language: Python
  • Default Branch: windows
  • Size: 43.9 KB
Statistics
  • Stars: 0
  • Watchers: 3
  • Forks: 1
  • Open Issues: 1
  • Releases: 0
Created over 4 years ago · Last pushed over 4 years ago
Metadata Files
Readme License

README.md

topopt

A topology optimization attempt for RF simulations


create.py takes a three-dimensional pattern input, e.g., a 5x5x5 binary matrix (space), with a resolution of 1x1x1 mm, as defined in block_size.

  • Debian branch: https://github.com/0xCoto/topopt/blob/debian
  • Windows branch: https://github.com/0xCoto/topopt/blob/windows

Example input matrix

python space = [ [[0,1,0,0,1], [1,0,0,1,0], [0,1,0,1,1], [0,0,0,1,1], [0,1,1,0,1]], [[1,1,1,0,1], [0,0,0,1,0], [0,0,1,1,1], [0,0,0,1,1], [0,1,0,0,0]], [[0,1,0,1,0], [1,1,0,0,0], [1,0,0,1,0], [0,1,1,1,0], [0,1,1,1,1]], [[0,1,0,1,0], [0,1,0,1,1], [1,1,0,1,0], [1,0,0,1,0], [0,0,0,0,0]], [[1,0,0,1,1], [0,1,1,0,1], [0,1,0,1,1], [0,1,1,0,1], [1,0,1,0,0]], ]

After converting to a binary array, a cell value of False indicates material absence at the associated matrix index, while True indicates material presence.

The output is a ~~STEP~~ STL file with all the created objects included. image

Open issues

Multi-material definition

This could be achieved by either creating multiple space objects, each corresponding to a unique material (STL file), or by assigning non-binary integer/real values to the matrix.

Binary optimization

Many algorithms have to be tested to evaluate which optimization technique performs best for this problem. A variety of optimization methods can be adapted to alternate binary values in the matrix by setting appropriate constraints, i.e. stating the linear problem in the form of:

Minimize/maximize:

|S_ij(frequency)|

Subject to:

Row constraints py x11+x12+x13+x14+x15 = 1 x21+x22+x23+x24+x25 = 1 x31+x32+x33+x34+x35 = 1 x41+x42+x43+x44+x45 = 1 x51+x52+x53+x54+x55 = 1 Column constraints py x11+x21+x31+x41+x51 = 1 x12+x22+x32+x42+x52 = 1 x13+x23+x33+x43+x53 = 1 x14+x24+x34+x44+x54 = 1 x15+x25+x35+x45+x55 = 1

Solver API

  • [x] ~~An E/M solver API shall be made use of/crafted to be called by the optimizer to evaluate the simulated scattering parameter magnitude at the frequency of interest (objective function)~~ - Done.

Owner

  • Name: Apostolos
  • Login: 0xCoto
  • Kind: user

Contact: 0xcoto@protonmail.com

GitHub Events

Total
Last Year

Committers

Last synced: about 1 year ago

All Time
  • Total Commits: 14
  • Total Committers: 1
  • Avg Commits per committer: 14.0
  • Development Distribution Score (DDS): 0.0
Past Year
  • Commits: 0
  • Committers: 0
  • Avg Commits per committer: 0.0
  • Development Distribution Score (DDS): 0.0
Top Committers
Name Email Commits
Apostolos c****r@g****m 14

Issues and Pull Requests

Last synced: about 1 year ago

All Time
  • Total issues: 1
  • Total pull requests: 0
  • Average time to close issues: N/A
  • Average time to close pull requests: N/A
  • Total issue authors: 1
  • Total pull request authors: 0
  • Average comments per issue: 0.0
  • Average comments per pull request: 0
  • Merged pull requests: 0
  • Bot issues: 0
  • Bot pull requests: 0
Past Year
  • Issues: 0
  • Pull requests: 0
  • Average time to close issues: N/A
  • Average time to close pull requests: N/A
  • Issue authors: 0
  • Pull request authors: 0
  • Average comments per issue: 0
  • Average comments per pull request: 0
  • Merged pull requests: 0
  • Bot issues: 0
  • Bot pull requests: 0
Top Authors
Issue Authors
  • 0xCoto (1)
Pull Request Authors
Top Labels
Issue Labels
Pull Request Labels