Changeset 3843
- Timestamp:
- 05/19/10 11:32:07 (15 years ago)
- File:
-
- 1 edited
Legend:
- Unmodified
- Added
- Removed
-
issm/trunk/src/m/solutions/jpl/diagnostic_core_nonlinear.m
r3839 r3843 1 function [u_g varargout]=diagnostic_core_nonlinear( fem,input_loads,analysis_type,sub_analysis_type)1 function [u_g varargout]=diagnostic_core_nonlinear(m,input_loads,analysis_type,sub_analysis_type) 2 2 %DIAGNOSTIC_CORE_NONLINEAR - core solution of diagnostic non-linear 3 3 % 4 4 % Usage: 5 % [u_g varargout]=diagnostic_core_nonlinear( fem,analysis_type,sub_analysis_type)5 % [u_g varargout]=diagnostic_core_nonlinear(m,inputs_loads,analysis_type,sub_analysis_type) 6 6 7 % first off! We are going to modify the loads dataset. We need to shield the loads from those changes once we return;8 loads=fem.loads;9 10 7 % stiffness and load generation only: 11 fem.parameters.Kflag=1; fem.parameters.Pflag=1;8 m.parameters.Kflag=1; m.parameters.Pflag=1; 12 9 13 10 % Were loads requested as outputs ? 14 if isempty( loads),15 loads= fem.loads;11 if isempty(input_loads), 12 loads=m.loads; 16 13 else 17 14 loads=input_loads; … … 21 18 converged=0; count=1; 22 19 23 ug=GetSolutionFromInputs( fem.elements, fem.nodes, fem.vertices, fem.loads, fem.materials, fem.parameters, analysis_type, sub_analysis_type);24 uf=Reducevectorgtof( ug, fem.nodesets);20 ug=GetSolutionFromInputs(m.elements, m.nodes, m.vertices, m.loads, m.materials, m.parameters, analysis_type, sub_analysis_type); 21 uf=Reducevectorgtof( ug, m.nodesets); 25 22 26 displaystring( fem.parameters.Verbose,'\n%s',[' starting direct shooting method']);23 displaystring(m.parameters.Verbose,'\n%s',[' starting direct shooting method']); 27 24 while(~converged), 28 25 … … 31 28 32 29 %system matrices 33 [K_gg_nopenalty , p_g_nopenalty]=SystemMatrices( fem.elements,fem.nodes,fem.vertices,loads,fem.materials,fem.parameters,analysis_type,sub_analysis_type);30 [K_gg_nopenalty , p_g_nopenalty]=SystemMatrices(m.elements,m.nodes,m.vertices,loads,m.materials,m.parameters,analysis_type,sub_analysis_type); 34 31 35 32 %penalties … … 52 49 53 50 %Update elements with new solution 54 [m.elements]=UpdateInputs(m.elements,m.nodes,m.vertices,loads,m.materials,m.parameters,soln(count).u_g,analysis_type,sub_analysis_type); 55 56 %Deal with penalty loads 57 inputs=add(inputs,'velocity',soln(count).u_g,'doublevec',m.parameters.NumberOfDofsPerNode,m.parameters.NumberOfNodes); 51 m=UpdateInputsFromSolution(m,soln(count).u_g,analysis_type,sub_analysis_type); 58 52 59 53 %penalty constraints
Note:
See TracChangeset
for help on using the changeset viewer.