Changeset 3881
- Timestamp:
- 05/21/10 13:14:05 (15 years ago)
- File:
-
- 1 edited
Legend:
- Unmodified
- Added
- Removed
-
issm/trunk/src/c/parallel/thermal_core.cpp
r3751 r3881 75 75 76 76 nsteps=(int)(ndt/dt); 77 time=(double*)xmalloc((nsteps+1)*sizeof(double)); 78 time[0]=0; 77 time=(double*)xmalloc((nsteps)*sizeof(double)); 79 78 80 79 /*allocate t_g and m_g arrays: */ 81 t_g=(Vec*)xmalloc((nsteps+1)*sizeof(Vec)); 82 m_g=(Vec*)xmalloc((nsteps+1)*sizeof(Vec)); 83 84 //initialize temperature and melting 85 fem_t->FindParam(&t_g_serial,NULL,NULL,TemperatureEnum); 86 t_g[0]=SerialToVec(t_g_serial,numberofnodes); 87 xfree((void**)&t_g_serial); 88 fem_m->FindParam(&m_g_serial,NULL,NULL,MeltingRateEnum); 89 m_g[0]=SerialToVec(m_g_serial,numberofnodes); 90 xfree((void**)&m_g_serial); 80 t_g=(Vec*)xmalloc((nsteps)*sizeof(Vec)); 81 m_g=(Vec*)xmalloc((nsteps)*sizeof(Vec)); 91 82 92 83 for(i=0;i<nsteps;i++){ 93 84 if(verbose)_printf_("time step: %i/%i\n",i+1,nsteps); 94 time[i +1]=(i+1)*dt;85 time[i]=(i+1)*dt; 95 86 96 87 if(verbose)_printf_("computing temperatures:\n"); 97 model->UpdateInputsFromVector(t_g[i],TemperatureEnum,VertexEnum); 98 thermal_core_nonlinear(&t_g[i+1],&melting_offset,fem_t,ThermalAnalysisEnum,NoneAnalysisEnum); 88 thermal_core_nonlinear(&t_g[i],&melting_offset,fem_t,ThermalAnalysisEnum,NoneAnalysisEnum); 99 89 100 90 if(verbose)_printf_("computing melting:\n"); 101 model->UpdateInputsFromVector(t_g[i +1],TemperatureEnum,VertexEnum);91 model->UpdateInputsFromVector(t_g[i],TemperatureEnum,VertexEnum); 102 92 model->UpdateInputsFromConstant(melting_offset,MeltingOffsetEnum); 103 diagnostic_core_linear(&m_g[i +1],fem_m,MeltingAnalysisEnum,NoneAnalysisEnum);93 diagnostic_core_linear(&m_g[i],fem_m,MeltingAnalysisEnum,NoneAnalysisEnum); 104 94 } 105 95 } … … 118 108 } 119 109 else{ 120 for(i=0;i<nsteps +1;i++){110 for(i=0;i<nsteps;i++){ 121 111 result=new Result(results->Size()+1,time[i],i+1,"t_g",t_g[i]); 122 112 results->AddObject(result);
Note:
See TracChangeset
for help on using the changeset viewer.