/**
 * This function computes the loads at the intersection of beams and columns in a civil engineering project.
 *
 * @param beams A list of beam dimensions (in meters)
 * @param columns A list of column dimensions (in meters)
 * @param loads A dictionary containing information about the loads in the structure
 * @return A list of computed column loads at the intersection points
 */
fun computeColumnLoads(beams: List<Double>, columns: List<Double>, loads: Map<String, Double>): List<Double> {

    val columnLoads = mutableListOf<Double>()

    for (beam in beams) {
        for (column in columns) {
            val intersectionArea = beam * column  // Compute the area of intersection between the beam and column
            var totalLoad = 0.0
            for ((_, value) in loads) {
                totalLoad += value * intersectionArea  // Compute the total load on the column at the intersection point
            }
            columnLoads.add(totalLoad)
        }
    }

    return columnLoads
}
/**
 * This function computes the loads at the intersection of beams and columns in a civil engineering project.
 *
 * @param beams A list of beam dimensions (in meters)
 * @param columns A list of column dimensions (in meters)
 * @param loads A dictionary containing information about the loads in the structure
 * @return A list of computed column loads at the intersection points
 */
fun computeColumnLoads(beams: List<Double>, columns: List<Double>, loads: Map<String, Double>): List<Double> {
/**
 * This function computes the loads at the intersection of beams and columns in a civil engineering project.
 *
 * @param beams A list of beam dimensions (in meters)
 * @param columns A list of column dimensions (in meters)
 * @param loads A dictionary containing information about the loads in the structure
 * @return A list of computed column loads at the intersection points
 */
fun computeColumnLoads(beams: List<Double>, columns: List<Double>, loads: Map<String, Double>): List<Double> {

    val columnLoads = mutableListOf<Double>()

    for (beam in beams) {
        for (column in columns) {
            val intersectionArea = beam * column  // Compute the area of intersection between the beam and column
            var totalLoad = 0.0
            for ((_, value) in loads) {
                totalLoad += value * intersectionArea  // Compute the total load on the column at the intersection point
            }
            columnLoads.add(totalLoad)
        }
    }

    return columnLoads
}