import numpy as np
from sectionproperties.pre import Material
from sectionproperties.pre.library import concrete_circular_section
from sectionproperties.analysis import Section

concrete = Material(
    name="Concrete",
    elastic_modulus=30.1e3,
    poissons_ratio=0.2,
    yield_strength=32,
    density=2.4e-6,
    color="lightgrey",
)
steel = Material(
    name="Steel",
    elastic_modulus=200e3,
    poissons_ratio=0.3,
    yield_strength=500,
    density=7.85e-6,
    color="grey",
)

geom = concrete_circular_section(
    d=450,
    area_conc=np.pi * 450 * 450 / 4,
    n_conc=64,
    dia_bar=20,
    area_bar=310,
    n_bar=6,
    cover=45,
    n_circle=24,
    conc_mat=concrete,
    steel_mat=steel,
)

geom.create_mesh(mesh_sizes=[0])  # a size of zero creates a coarse mesh
Section(geometry=geom).plot_mesh()