Identification of a Model


In [1]:
%matplotlib inline

import numpy as np
import matplotlib.pyplot as plt
from simmit import smartplus as sim
from simmit import identify as iden
import os

dir = os.path.dirname(os.path.realpath('__file__'))

In this Python Notebook we will show how to properly identify the material properties of a composite based on experimental data

Such identification procedure require:

  1. Proper experimental data
  2. A proper numerical model (here a composite model for laminate constitutive model)
  3. An identification strategy

The simmit library provide a convenient list of constitutive models, and identification strategies.

Such identification strategy contains the definition of a cost function (based on square root difference in control variables (stress or strain)). Such cost function, especially weights, can be tuned. There is a by default option that normalize the control variables coming from different tests so except some specific identification procedure is intented, the by-default option is a good start.


In [2]:
#Number_of_parameters
n_param = 5
#Number_of_consts
n_consts = 2
#Number_of_files
nfiles = 3

#Number_of_generations
ngen =  20
#Aleatory/Mesh space population : 0=mesh 1=meshlimit 2=random 3=defined
aleaspace = 2
#Space or aleatory population : apop in case of aleatory, spop in case of mesh
apop = 20
#Number of "doped" individual
ngboys = 1
#Max population per subgeneration
maxpop = 10

path_data = dir + '/data'
path_keys = dir + '/keys'
path_results = dir + '/results'
outputfile = 'id_params.txt'
materialfile = 'material.dat'
simul_type = 'SOLVE'

iden.identification_solver(simul_type,n_param,n_consts,nfiles,ngen,aleaspace,apop,ngboys,maxpop,path_data,path_keys,path_results,materialfile,outputfile)

In [ ]:


In [ ]: