Example #1
0
            public void Serialize(object obj, Altaxo.Serialization.Xml.IXmlSerializationInfo info)
            {
                FitFunctionScript s = (FitFunctionScript)obj;

                // Update the user defined paramter names
                if (s.m_ScriptObject != null && s.IsUsingUserDefinedParameterNames)
                {
                    IFitFunction ff = (IFitFunction)s.m_ScriptObject;
                    if (s._UserDefinedParameterNames == null || s._UserDefinedParameterNames.Length != ff.NumberOfParameters)
                    {
                        s._UserDefinedParameterNames = new string[ff.NumberOfParameters];
                    }
                    for (int i = 0; i < ff.NumberOfParameters; ++i)
                    {
                        s._UserDefinedParameterNames[i] = ff.ParameterName(i);
                    }
                }

                info.AddValue("Category", s.FitFunctionCategory);
                info.AddValue("Name", s.FitFunctionName);
                info.AddValue("CreationTime", s._fitFunctionCreationTime);
                info.AddValue("Description", s.FitFunctionName);

                info.AddBaseValueEmbedded(s, typeof(AbstractScript));

                info.AddValue("NumberOfParameters", s.NumberOfParameters);
                info.AddValue("UserDefinedParameters", s.IsUsingUserDefinedParameterNames);
                if (s.IsUsingUserDefinedParameterNames)
                {
                    info.AddArray("UserDefinedParameterNames", s._UserDefinedParameterNames, s._UserDefinedParameterNames.Length);
                }

                info.AddArray("IndependentVariableNames", s._IndependentVariablesNames, s._IndependentVariablesNames.Length);
                info.AddArray("DependentVariableNames", s._DependentVariablesNames, s._DependentVariablesNames.Length);
            }
Example #2
0
 /// <summary>
 /// Gives the ith parameter name.
 /// </summary>
 /// <param name="i">Index of the parameter whose name is to be retrieved.</param>
 /// <returns>The ith parameter name. Returns null if the <see cref="_fitFunction"/> is <c>null</c>.
 /// Otherwise, if <see cref="_parameterNames"/>[i] is not null, returns this value.
 /// If <see cref="_parameterNames"/>[i] is null then the value of <see cref="_parameterNameStart"/> is concenated with the original parameter name of the fit function and that value is returned.
 /// </returns>
 public string ParameterName(int i)
 {
     if (null != _fitFunction)
     {
         if (null != _parameterNames[i])
         {
             return(_parameterNames[i]);
         }
         else
         {
             return(_parameterNameStart + _fitFunction.ParameterName(i));
         }
     }
     else
     {
         return(null);
     }
 }
Example #3
0
        public override bool Compile()
        {
            bool success = base.Compile();

            if (success && (this.m_ScriptObject is IFitFunction))
            {
                IFitFunction ff = (IFitFunction)m_ScriptObject;

                this._NumberOfParameters      = ff.NumberOfParameters;
                this._fitFunctionCreationTime = DateTime.Now;
                if (this.IsUsingUserDefinedParameterNames)
                {
                    if (_UserDefinedParameterNames == null || _UserDefinedParameterNames.Length != ff.NumberOfParameters)
                    {
                        _UserDefinedParameterNames = new string[ff.NumberOfParameters];
                    }
                    for (int i = 0; i < ff.NumberOfParameters; ++i)
                    {
                        _UserDefinedParameterNames[i] = ff.ParameterName(i);
                    }
                }

                this._IndependentVariablesNames = new string[ff.NumberOfIndependentVariables];
                for (int i = 0; i < this._IndependentVariablesNames.Length; ++i)
                {
                    this._IndependentVariablesNames[i] = ff.IndependentVariableName(i);
                }

                this._DependentVariablesNames = new string[ff.NumberOfDependentVariables];
                for (int i = 0; i < this._DependentVariablesNames.Length; ++i)
                {
                    this._DependentVariablesNames[i] = ff.DependentVariableName(i);
                }
            }

            return(success);
        }