Skip to content

Improve cell handling in PeriodicCollapser. #461

@andrewtarzia

Description

@andrewtarzia

From a discord thread, code like at the end of this issue is necessary to produce COFs with adequate bond lengths after using PeriodicCollapser during construction because, while the inter-building block bonds within the cell are handled well, the periodic bonds are not.

This requires improved re-definition of the unit cell after optimisation.

Example code:

def scale_unit_cell(
    periodic_info,
    vector_1_scale=1.,
    vector_2_scale=1.,
    vector_3_scale=1.,
):
    return stk.PeriodicInfo(
        vector_1=periodic_info.get_vector_1()*vector_1_scale,
        vector_2=periodic_info.get_vector_2()*vector_2_scale,
        vector_3=periodic_info.get_vector_3()*vector_3_scale,
    )

periodic_info = scale_unit_cell(
        periodic_info=construction_result.get_periodic_info(),
        vector_1_scale=0.85,
        vector_2_scale=0.85,
        vector_3_scale=1,
)

Metadata

Metadata

Assignees

No one assigned

    Labels

    No labels
    No labels

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions