fedoo.problem.NonLinearNewmark

class NonLinearNewmark(StiffnessAssembly, MassAssembly, Beta, Gamma, DampingAssembly=None, nlgeom=False, name='MainProblem')

Define a Newmark problem The algorithm come from: Bathe KJ and Edward W, “Numerical methods in finite element analysis”, Prentice Hall, 1976, pp 323-324

__init__(StiffnessAssembly, MassAssembly, Beta, Gamma, DampingAssembly=None, nlgeom=False, name='MainProblem')

Methods

NonLinearNewmark.GetVelocity()

NonLinearNewmark.NewtonRaphsonError()

Compute the error of the Newton-Raphson algorithm For Force and Work error criterion, the problem must be updated (Update method).

NonLinearNewmark.NewtonRaphsonIncrement()

NonLinearNewmark.SetInitialAcceleration(...)

name is the name of the associated variable (generaly 'DispX', 'DispY' or 'DispZ') value is an array containing the initial acceleration of each nodes

NonLinearNewmark.SetInitialDisplacement(...)

name is the name of the associated variable (generaly 'DispX', 'DispY' or 'DispZ') value is an array containing the initial displacement of each nodes

NonLinearNewmark.SetInitialVelocity(name, value)

name is the name of the associated variable (generaly 'DispX', 'DispY' or 'DispZ') value is an array containing the initial velocity of each nodes

NonLinearNewmark.SetRayleighDamping(alpha, beta)

Compute the damping matrix from the Rayleigh's model: [C] = alpha*[M] + beta*[K]

NonLinearNewmark.add_output(filename, ...[, ...])

NonLinearNewmark.apply_boundary_conditions([...])

NonLinearNewmark.change_assembly(assembling)

Modify the assembly associated to the problem and update the problem (see Assembly.update for more information)

NonLinearNewmark.elastic_prediction()

NonLinearNewmark.get_A()

NonLinearNewmark.get_Acceleration()

NonLinearNewmark.get_Assembly()

NonLinearNewmark.get_B()

NonLinearNewmark.get_D()

NonLinearNewmark.get_X()

NonLinearNewmark.get_active()

Return the active Problem.

NonLinearNewmark.get_all()

Return the list of all problems.

NonLinearNewmark.get_disp([name])

Return the displacement components.

NonLinearNewmark.get_dof_solution([name])

NonLinearNewmark.get_ext_forces([name, ...])

Return the nodal Forces in global coordinates system.

NonLinearNewmark.get_results(assemb, output_list)

NonLinearNewmark.get_rot([name])

Return the rotation components.

NonLinearNewmark.get_temp()

Return the nodal temperature field.

NonLinearNewmark.init_bc_start_value()

NonLinearNewmark.initialize()

NonLinearNewmark.make_active()

Define the problem instance as the active Problem.

NonLinearNewmark.nlsolve([dt, update_dt, ...])

Solve the non linear problem using the newton-raphson algorithm.

NonLinearNewmark.reset()

NonLinearNewmark.save_results([iterOutput])

NonLinearNewmark.set_A(A)

NonLinearNewmark.set_B(B)

NonLinearNewmark.set_D(D)

NonLinearNewmark.set_active(name)

Define the active Problem from its name.

NonLinearNewmark.set_dof_solution(name, value)

NonLinearNewmark.set_nr_criterion([criterion])

Define the convergence criterion of the newton raphson algorith.

NonLinearNewmark.set_solver([solver])

Define the solver for the linear system resolution.

NonLinearNewmark.set_start([save_results, ...])

NonLinearNewmark.solve(**kargs)

NonLinearNewmark.solve_time_increment([...])

NonLinearNewmark.to_start()

NonLinearNewmark.update([compute, ...])

Assemble the matrix including the following modification:

NonLinearNewmark.updateA()

NonLinearNewmark.updateD([start])

NonLinearNewmark.update_boundary_conditions()

NonLinearNewmark.active

NonLinearNewmark.assembly

NonLinearNewmark.n_dof

NonLinearNewmark.n_iter

Return the number of iterations made to solve the problem.

NonLinearNewmark.name

Return the name of the Problem.

NonLinearNewmark.results

NonLinearNewmark.solver

Return the current solver used for the problem.

NonLinearNewmark.space

Return the ModelingSpace associated to the Problem if defined.

NonLinearNewmark.t_fact

Adimensional time used for boundary conditions.

NonLinearNewmark.t_fact_old

Previous adimensional time for boundary conditions.

NonLinearNewmark.nr_parameters

Parameters to set the newton raphson algorithm: * 'err0': The reference error. Default is None (automatically computed) * 'criterion': Type of convergence test in ['Displacement', 'Force', 'Work']. Default is 'Displacement'. * 'tol': Error tolerance for convergence. Default is 1e-3. * 'max_subiter': Number of nr iteration before returning a convergence error. Default is 5. * 'norm_type': define the norm used to test the criterion Use numpy.inf for the max value. Default is 2.

NonLinearNewmark.bc

Boundary conditions defined on the problem.