← Back to team overview

kicad-developers team mailing list archive

Re: Signal integrity simulation within Kicad

 

Hi Andreas,

This is a neat idea!  It would be great to have a nice open-source tool for
this, as all of the useful ones today are very expensive and proprietary.

As far as I know (others please correct me if I am wrong), there isn't
currently any functionality to generate polygons from the entire copper of
a layer.
Poured zones are represented as polygons, so those are easy, but tracks are
represented differently.
So, you would likely need to write some code to convert the copper items
other than zones (i.e. tracks, vias, pads, etc) to polygons so you can mesh
them.

You might want to look at the 3D viewer for inspiration, since it already
does a similar task of extracting all the design data in order to render it
in 3D.
You can see in ./3d-viewer/3d_canvas/create_layer_items.cpp some of the
code that does this, so it might be a good starting point.

Best,
Jon

On Wed, Nov 29, 2017 at 1:09 PM, Andreas Buhr <andreas@xxxxxxxxxxxxxx>
wrote:

> Dear Kicad developers,
>
> I'm new to Kicad development. Maybe you could give me some starting tips?
>
> I am a 5th year PhD student at the university of Münster in Germany,
> website:
> https://www.uni-muenster.de/AMM/en/ohlberger/team/andreas_buhr.shtml
>
> I am doing mathematical research targeted at developing solvers for 3D
> Maxwell's equations in highly complex structures, such as PCBs. While
> being in an early stage, the goal is to develop a signal integrity
> solver which does a full-wave simulation of the electromagnetic fields
> and calculates S-parameters within a very short time.
>
> I would love to develop and test my algorithms within KiCad.
>
> The input which my solver needs would be an array of polygons,
> representing the copper-filled areas on each layer.
> I then want to create a 2D triangle mesh and based on that a 3D prism
> mesh for finite element analysis.
>
> What would you recommend? How to I get polygons, representing the copper
> filled areas of each layer?
> I do have some experience developing C++.
>
> thanks a lot in advance,
> best regards,
>
> Andreas
>
>
> _______________________________________________
> Mailing list: https://launchpad.net/~kicad-developers
> Post to     : kicad-developers@xxxxxxxxxxxxxxxxxxx
> Unsubscribe : https://launchpad.net/~kicad-developers
> More help   : https://help.launchpad.net/ListHelp
>
>

References