R/build_k.R

Defines functions build_k

Documented in build_k

#' Building stiffness Matrix from stiffnesses of elements
#' for MDOF response calculation
#'
#' @param ks vector of stiffnesses of elements
#'
#' @export

build_k <- function(k) {

    nNodes <- length(k)

    Mat <- matrix(0, nNodes, nNodes)
    submat <- matrix(c(1, -1, -1, 1), 2, 2)

    Mat[1, 1] <- k[1]

    if (nNodes != 1) {

        for (i in 2:nNodes) {

            Mat[(i-1):i, (i-1):i] <- Mat[(i-1):i, (i-1):i] + k[i] * submat
        }
    }

    return (Mat)
}
taroyaoyama/resp documentation built on Dec. 31, 2019, 12:57 a.m.