Skip to content
  • Orientation of antennas affect simulation results

    Simulations & Solvers
    4
    0 Votes
    4 Posts
    908 Views
    V
    Thanks Ofi. How can I fix this or is this something I need to account for?
  • tutorial not running

    Simulations & Solvers
    1
    0 Votes
    1 Posts
    307 Views
    No one has replied
  • FDFD solver tutorials

    Simulations & Solvers
    1
    0 Votes
    1 Posts
    304 Views
    No one has replied
  • How to extrude along a line with a triangle cross-section

    CAD Modeling
    1
    0 Votes
    1 Posts
    531 Views
    No one has replied
  • Thermal external input file

    Simulations & Solvers
    1
    0 Votes
    1 Posts
    306 Views
    No one has replied
  • Modeling Ferrite in an FDTD Simulation

    Simulations & Solvers
    2
    0 Votes
    2 Posts
    495 Views
    ofliO
    Hi @arc Please check "Console" window (open it via menu VIEW | Console if it is not open) to see what kind of error you are getting. The reason for failed simulation might be related to something else. You can easily test with an existing tutorial example. For example, open Dipole Antenna Tutorial, model a rectangular brick next to the dipole, clone one of the existing simulation settings and drag&drop this new brick into the simulation set its material such that rel/ Permeability o 1e4 generate grid, voxel and run to see if it also fails I hope it helps.
  • Python API for Debye dispersive model

    Simulations & Solvers
    2
    0 Votes
    2 Posts
    587 Views
    C
    Yes, You need to import XMaterials and specify the material model to be linear dispersive, as in the following example (which should be easy to extend), where parameters for one Debye pole are assigned. import XMaterials as xm # Adding a new MaterialSettings material_settings = emfdtd.MaterialSettings() material_settings.ElectricProps.MaterialModel = material_settings.ElectricProps.MaterialModel.enum.LinearDispersive # Specify settings for dispersive poles material_settings.raw.ElectricDispersiveSettings.StartFrequency = 10.e6 material_settings.raw.ElectricDispersiveSettings.EndFrequency = 100000.e6 material_settings.raw.ElectricDispersiveSettings.Conductivity = 0. material_settings.raw.ElectricDispersiveSettings.Permittivity = 11.098 debye_pole_01 = xm.LinearDispersionPole() debye_pole_01.Active = True debye_pole_01.Type = xm.LinearDispersionPole.ePoleType.kDebye debye_pole_01[xm.LinearDispersionPole.ePoleProperty.kDebyeAmplitude] = 1.0 debye_pole_01[xm.LinearDispersionPole.ePoleProperty.kDebyeStaticPermittivity] = 22.67 debye_pole_01[xm.LinearDispersionPole.ePoleProperty.kDebyeInfinityPermittivity] = 11.098 debye_pole_01[xm.LinearDispersionPole.ePoleProperty.kDebyeDamping] = 3.234e-11 # Add dispersive poles to the Linear Electric Dispersion Viewer material_settings.raw.ElectricDispersiveSettings.Poles = [debye_pole_01]
  • Line fed slot antenna

    CAD Modeling
    4
    0 Votes
    4 Posts
    1k Views
    C
    Then you can keep the substrate as it is and translate the edge source (polyline) along the microstrip line until it also touches the ground plane (keeping it always axis-aligned).
  • 1 Votes
    2 Posts
    522 Views
    B
    I suspect that this is because the grid from your LF simulation does not match the grid that you use in your isotropic and anisotropic simulations. The isotropic simulation runs fine because it does not use your cache file. The anisotropic simulation has stored those conductivity values expecting a specific grid. Try right clicking on the grid settings folder in the simulation from which you are creating your anisotropy tensor, select "Copy Grid Configuration", then "Paste Grid Configuration" on the anisotropic simulation. If you want to include features in your anisotropic simulation that you don't don't want to have simulated in your initial LF simulation, you can still include include objects in your initial simulation so that they are considered for the gridding without assigning them material properties, using them as a boundary condition or voxeling them. Just drag the object directly into the grid settings folder. That way your grid can always match.
  • Change parameters in Simulation Combiner

    Python API
    2
    0 Votes
    2 Posts
    729 Views
    C
    The following example for a 2-port simulation combiner should help. i = 0 for channel in em_multi_port_simulation_combiner.GetChannelWeights(): power = [1.0, 2.0] phase = [45, 90] em_multi_port_simulation_combiner.SetChannelWeight(channel, power[i], phase[i]) i += 1 em_multi_port_simulation_combiner.UpdateAttributes() em_multi_port_simulation_combiner.Update() document.AllAlgorithms.Add(em_multi_port_simulation_combiner)
  • 0 Votes
    2 Posts
    486 Views
    ofliO
    Hi @yiyang did it happen with one particular simulation project or does it always happen? Please (if you can) share the project with Sim4Life Application team via sending an email to s4-support@zmt.swiss to check. Thanks
  • 0 Votes
    1 Posts
    397 Views
    No one has replied
  • Anatomical model extraction and dimension

    Anatomical Models
    7
    1 Votes
    7 Posts
    2k Views
    A
    Thank You, It really works.
  • 0 Votes
    1 Posts
    327 Views
    No one has replied
  • 0 Votes
    5 Posts
    1k Views
    brynB
    @MSJ the modify button is probably hidden on the top right, if you click the triangle where you see the three dots (...).
  • 3D Surface model to Voxel and export

    Sim4Life
    2
    0 Votes
    2 Posts
    1k Views
    brynB
    Are you using Sim4Life lite (web version)? I recorded my screen while I voxeled Duke V2.0 and exported the voxels. There seems to be a glitch in the Reload button when I try to see the data that was saved in the Study: as a workaround the Reload button in the DATA tab works. I voxeled at 15mm, so the skin is not completely closed, but if you choose something like 5-10mm it should be enough to resolve thin layers (like the skin): BTW. if you are using a desktop version of Sim4Life, the workflow is similar, except that the software uses native Windows file dialogs to save/load files. https://youtu.be/uAQgQQpG3Bg
  • 0 Votes
    1 Posts
    538 Views
    No one has replied
  • Padding field with constant value

    Analysis & Postprocessing
    1
    0 Votes
    1 Posts
    357 Views
    No one has replied
  • Geometry Modeling - Snapping to Endpoints in Python API ?

    Solved Python API python
    3
    0 Votes
    3 Posts
    1k Views
    brynB
    Hi @dbsim4 I think it would help a lot if you could post an image depicting what you are trying to achieve. Answering the question from the subject line: No, there is no snapping in Python (not sure how that API could look like), but there are functions to get the distance between entities (and corresponding closest points), which may help. brick1 = XCoreModeling.CreateSolidBlock(Vec3(0), Vec3(1)) brick2 = XCoreModeling.CreateSolidBlock(Vec3(2), Vec3(3)) res = XCoreModeling.GetEntityEntityDistance(brick1, brick2) print(f"Distance brick1-brick2: {res[0].Distance}") print(f"Closest point on brick1: {res[0].ClosestPosition}") print(f"Closest point on brick2: {res[1].ClosestPosition}") or distance to a point: brick = XCoreModeling.CreateSolidBlock(Vec3(0), Vec3(1)) res = XCoreModeling.GetEntityEntityDistance(brick, Vec3(3)) print(f"Distance brick-point: {res.Distance}") print(f"Closest point on brick: {res.ClosestPosition}") For geometry that has end-points or corners, you could extract the vertices and again use distance wrt some other point as a way to write a script. edge = XCoreModeling.CreateEdge(Vec3(0), Vec3(1)) vertices = XCoreModeling.GetVertices(edge) assert len(vertices) == 2 for v in vertices: print(v.Position) brick = XCoreModeling.CreateSolidBlock(Vec3(0), Vec3(1)) vertices = XCoreModeling.GetVertices(edge) assert len(vertices) == 8
  • How to create solid circle ie. with surface ?

    Solved Python API
    4
    0 Votes
    4 Posts
    1k Views
    brynB
    @dbsim4 regarding your "Update", I am not sure I understand the context. Are you trying to assign the circle loop as an edge source?